Spektrální analyzátor (FFT) na Linuxu

Spektrální analyzátor (FFT) na Linuxu
« kdy: 31. 10. 2020, 18:38:05 »
Vážení a milí tady na fóru,
poradíte? Nejsem softwerář ale elektronik. Hledám software pro analýzu nasamplovaného analogového signálu - spektrální analyzátor (zpracovávající data z ADC / zvukové karty), aplikující na datech okno, zobrazující spektrum - a to vše na Linuxu. Na woknech je několik freeware programů, ale já to potřebuji nejlépe na RPi - aby to mohlo běžet z baterky, a aby to celé nebylo moc drahé tak s USB-zvukovou kartou (třeba 24b / 192kHz).
Vizuálně se mi líbí Androidí Spectroid (úroveň zobrazuje v decibelech, vodorovná osa volitelně lineární/logaritmická), ale nejde tam přepnout vstup jinam než na mikrofon vestavěný v mobilu.
Víte o volně-šiřitelném projektu? Předem dík!


Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #1 kdy: 31. 10. 2020, 18:59:24 »
Musí to být realtime? Jestli ne, tak špek se použít docela dá. Sox a Sonic Visualiser to dokážou taky.

Na online waterfall používám taky spectroid na droidovi :-)) volba vstupu nebo rychlejší přepínání lin/log mi tam chybí.

_Jenda

  • *****
  • 906
    • Zobrazit profil
    • https://jenda.hrach.eu/
    • E-mail
Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #2 kdy: 31. 10. 2020, 19:14:02 »
Já používám ten Sonic Visualiser, ale realtime to není a je to tak středně dobré. Dále používám vlastní zobrazovátko, což je céčkový program, který používá FFTW, a data cpe do PPM obrázku. Ale taky není realtime. Ale kdyby to kreslilo do SDL, tak to realtime bude, a není to tak složité.

Teď mě napadlo, že gqrx umí vstup ze zvukovky. Nebo naklikat flowgraph v gnuradio-companion.

Jinak o ničem hotovém nevím. Ale napsat to custom by mělo být na pár hodin pro první prototyp.

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #3 kdy: 31. 10. 2020, 21:21:16 »
Moc diky za navrhy!
Nicmene, nepotrebuji real-time spectrogram, staci offline zobrazeni. Co musi byt zasadne jinak je pocet frekvencnich binu (mnohem vic) a nejake zpracovani nad spocitanym spektrem, aby vysledek byl koukatelny jako v tom Spectroidu. Navic, sila signalu je opravdu potreba zobrazovat logaritmicky, jde hlavne o sumove pozadi a to by jinak nebylo videt...
Dik za pripadne dalsi napady!

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #4 kdy: 31. 10. 2020, 21:57:10 »
Ještě v Audacity se dá poměrně slušně spektrum analyzovat, i interaktivně.


Mlocik97

  • *****
  • 611
  • Linuxák, JS dev.
    • Zobrazit profil
    • E-mail
Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #5 kdy: 31. 10. 2020, 22:03:48 »
Ja niečo také hľadal vo forme webstránky, kde by som mohol nahrať súbor alebo dať odkaz na audio súbor na internetu či YouTube/Spotify.

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #6 kdy: 31. 10. 2020, 22:55:07 »
REW je v javě a pod linuxem má zapnuté FFT do 4M. Běží výborně, testoval jsem jej do samplerate 1,5MHz, ale jeho autor nakonec pro linux dal do selektu sampleratu jako nejvyšší hodnotu "jen" 768kHz.

Docela rozumná je jaaa, v základu její FFT končí myslím na 256k, ale triviálně ji lze upravit na 8M FFT, pak už mi blblo zobrazování. Utáhla 8M  FFT na sampleratu 19,2MHz  přes alsí loopback snd-aloop s navýšeným samplerate limitem https://www.diyaudio.com/forums/equipment-and-tools/349239-support-samplerates-sw-analyzers.html#post6133979 .

Další možnost je pohrát si s octave nebo s julií, jsou i hotové skripty a číst soubory i live stream z alsy to umí.

RDa

  • *****
  • 1 556
    • Zobrazit profil
    • E-mail
Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #7 kdy: 01. 11. 2020, 03:13:40 »
Z tech free SDR toolu by neslo neco pouzit?
Sem tam si zapnu https://www.youtube.com/watch?v=LegzZZRIqj4 - a je tam live ten waterfall spektrogram.

CFM

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #8 kdy: 01. 11. 2020, 08:21:55 »
Co takhle jednoduchý skript v pythonu jako třeba zde?
https://dsp.stackexchange.com/a/32122

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #9 kdy: 01. 11. 2020, 12:07:51 »
Spectrum Lab.
https://www.qsl.net/dl4yhf/spectra1.html
Screenshot na homepagi je starej.
Umí to hodně moc věcí.
Je sice zaměřenej na HAM Radio, ale vlastně se dá velmi dobře použít
na obecnou analýzu spektra z audio záznamů.
Je relativně široce konfigurovatelný: vzorkovací frekvence,
velikosti FFT okna, vodopád svisle nebo vodorovně, režimy obarvení vodopádu...
je toho hodně. Použil jsem ho několikrát.

Jo a souhlas taky s FFT analýzou v Audacity.
Je méně konfigurovatelná než ve Spectrum Labu, ale v některých ohledech užitečnější.

Chápu, že Vám jde o audio. Pokud by Vás zajímalo rádiové spektrum, tak vstupenkou je RTL-SDR. K němu na realtime zobrazení úzkého pásma třeba HDSDR, nebo jako přehledový spektrák můj nedokonalý RTLSDR Skyline.

Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #10 kdy: 01. 11. 2020, 13:50:43 »
Aha pardon, ono to mělo být na Linuxu...


Re:Spektrální analyzátor (FFT) na Linuxu
« Odpověď #12 kdy: 01. 11. 2020, 17:06:20 »
Pod wine funguje výborně i Arta a Visual Analyzer. Jen se obávám, že výkon s emulací pod RPi nebude dostatečný.