Uncategorized

I missed having Spek on my server, so I built AudioDeck: a self-hosted web spectrogram analyzer

A Self-Hosted Spectrogram Analyzer for Music Lovers: How I Created AudioDeck

I’ve always been a bit of a music hoarder, and I love curating my personal library. I’ve spent countless hours scouring the internet for rare tracks, and I’ve developed a keen ear for quality. But when I moved my music workflow to my home server, I realized I was missing a crucial tool: a spectrogram analyzer.

I used to rely on Spek, a simple and fast spectrogram viewer that helped me spot fake FLAC files from a mile away. But when I switched to a self-hosted setup, I couldn’t use Spek anymore. I started searching for a web-based alternative, but I came up empty-handed.

The Problem with Fake FLAC Files

For those who don’t know, a common issue in the music community is finding audio files that are labeled as lossless (like FLAC) but are actually just transcoded from low-quality MP3s. A spectrogram makes this instantly obvious, as you can see a hard, brick-wall cutoff where the frequencies just disappear, usually around 16 kHz.

This is where a spectrogram analyzer comes in handy. It’s a tool that visualizes the audio spectrum of a file, allowing you to see the frequency content and identify potential issues. And that’s exactly what I needed for my self-hosted music setup.

Introducing AudioDeck

After searching for a solution and coming up empty-handed, I decided to take matters into my own hands. I created AudioDeck, a modern, lightweight, self-hostable spectrogram analyzer that can be accessed from any browser. You simply point it to your music folder, and you can instantly analyze any file.

I’ve been using AudioDeck for a few months now, and it’s been a game-changer for my music workflow. I can quickly identify fake FLAC files, and I can even use it to analyze my own music recordings. The best part? It’s incredibly lightweight, with zero server load for analysis. The spectrogram generation happens 100% in your browser, using the Web Audio API, and the backend idles at about 15MB of RAM.

How to Get Started with AudioDeck

Deploying AudioDeck is simple. You can use the following YAML code to get started:

services:
  audiodeck:
    image: casantosmu/audiodeck:1.0.0
    container_name: audiodeck
    user: "1000:1000"
    restart: unless-stopped
    ports:
      - "4747:4747"
    volumes:
      - /path/to/your/music:/music:ro

Just replace /path/to/your/music with the actual path to your music folder, and you’re good to go. You can access AudioDeck by visiting http://localhost:4747 in your browser.

I hope you find AudioDeck useful for your own music workflow. If you have any feedback, feature ideas, or bug reports, please don’t hesitate to reach out. You can find the GitHub repository and Docker Hub image links below:

I’m excited to share AudioDeck with the music community, and I hope it helps you curate your own music library with confidence.

Analizator spectrogramu dla miłośników muzyki: Jak stworzyłem AudioDeck

Zawsze byłem trochę kolekcjonerem muzyki i lubię tworzyć własną bibliotekę. Spędziłem niezliczoną ilość godzin na przeszukiwaniu internetu w poszukiwaniu rzadkich utworów i rozwinąłem ostre ucho do jakości. Ale gdy przeniosłem swoją pracę z muzyką na swój domowy serwer, zdałem sobie sprawę, że brakuje mi niezwykle ważnego narzędzia: analizatora spectrogramu.

Używałem dawniej Spek, prostej i szybkiej przeglądarki spectrogramu, która pomagała mi wykryć fałszywe pliki FLAC z daleka. Ale gdy przesiadłem się na samodzielnie hostowaną konfigurację, nie mogłem już używać Spek. Zacząłem szukać alternatywy opartej na sieci, ale nie znalazłem nic.

Problem z fałszywymi plikami FLAC

Dla tych, którzy nie wiedzą, powszechnym problemem w społeczności muzycznej jest znajdowanie plików audio, które są oznaczone jako bezstratne (jak FLAC), ale w rzeczywistości są tylko przekonwertowane z niskiej jakości MP3. Spectrogramę czyni to natychmiast widocznym, ponieważ można zobaczyć twardy, mur oporowy, gdzie częstotliwości po prostu znikają, zwykle wokół 16 kHz.

To właśnie tutaj przydaje się analizator spectrogramu. Jest to narzędzie, które wizualizuje widmo audio pliku, pozwalając zobaczyć zawartość częstotliwości i zidentyfikować potencjalne problemy. I to właśnie potrzebowałem dla swojej samodzielnie hostowanej konfiguracji muzycznej.

Przedstawiam AudioDeck

Po przeszukiwaniu rozwiązań i nie znalezieniu nic, postanowiłem wziąć sprawy w swoje ręce. Stworzyłem AudioDeck, nowoczesny, lekki, samodzielnie hostowany analizator spectrogramu, który można uzyskać z dowolnej przeglądarki. Wystarczy wskazać go na folder z muzyką, a można natychmiast analizować dowolny plik.

Używałem AudioDeck przez kilka miesięcy, i okazało się być ogromnym ułatwieniem dla mojej pracy z muzyką. Mogę szybko identyfikować fałszywe pliki FLAC, a nawet używać go do analizy moich własnych nagrań muzycznych. Najlepsza część? Jest to niezwykle lekkie, z zerowym obciążeniem serwera do analizy. Generowanie spectrogramu odbywa się 100% w przeglądarce, przy użyciu interfejsu Web Audio, a serwer zużywa około 15MB pamięci RAM.

Jak zacząć korzystać z AudioDeck

Wdrożenie AudioDeck jest proste. Można użyć poniższego kodu YAML, aby zacząć:

services:
  audiodeck:
    image: casantosmu/audiodeck:1.0.0
    container_name: audiodeck
    user: "1000:1000"
    restart: unless-stopped
    ports:
      - "4747:4747"
    volumes:
      - /path/to/your/music:/music:ro

Wystarczy zastąpić /path/to/your/music rzeczywistą ścieżką do folderu z muzyką, i można uzyskać dostęp do AudioDeck, odwiedzając http://localhost:4747 w przeglądarce.

Mam nadzieję, że AudioDeck okaże się przydatne dla Twojej własnej pracy z muzyką. Jeśli masz jakiekolwiek uwagi, pomysły na funkcje, lub raporty o błędach, proszę nie wahaj się skontaktować. Można znaleźć linki do repozytorium GitHub i obrazu Docker poniżej:

Cieszy mnie, że mogę podzielić się AudioDeck z społecznością muzyczną, i mam nadzieję, że pomoże Ci Tworzyć własną bibliotekę muzyczną z pewnością.

Leave a Reply

Your email address will not be published. Required fields are marked *

WordPress Appliance - Powered by TurnKey Linux