cs:pysdr
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verzeNásledující verzeObě strany příští revize | ||
cs:pysdr [2015/08/27 16:09] – [Socket spojeni] kaklik | cs:pysdr [2017/04/09 22:20] – povik | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
- | ====== | + | ====== |
- | Jde o program určený ke zobrazení živého waterfallu (spektrogramu) ze streamu dat. Ten může být poskytnut přes unixovou rouru, nebo Jack audio systém. | + | Jde o program určený ke zobrazení živého waterfallu (spektrogramu) ze streamu dat. Ten může být poskytnut přes unixovou rouru, nebo JACK audio systém. |
- | Nástroj je užitečný pro debugging | + | Nástroj je užitečný pro ladění |
===== Základní vlastnosti ===== | ===== Základní vlastnosti ===== | ||
Řádek 11: | Řádek 11: | ||
* Dynamická změna měřítka pomocí myši | * Dynamická změna měřítka pomocí myši | ||
+ | |||
+ | {{youtube> | ||
{{: | {{: | ||
Řádek 75: | Řádek 77: | ||
./ | ./ | ||
- | | ||
- | |||
- | |||
- | ==== Použití s gnuradiem ==== | ||
- | |||
- | {{: | ||
- | |||
===== Slyšitelný výstup ===== | ===== Slyšitelný výstup ===== | ||
Řádek 110: | Řádek 105: | ||
- | ==== Princip | + | ==== Princip |
Program provádí frekvenční konverzi komplexním násobením signálu s lokálním číslicovým oscilátorem. Tím je dosaženo frekvenčního posunu odrazu meteoru do nižších frekvencí ze slyšitelného pásma. | Program provádí frekvenční konverzi komplexním násobením signálu s lokálním číslicovým oscilátorem. Tím je dosaženo frekvenčního posunu odrazu meteoru do nižších frekvencí ze slyšitelného pásma. | ||
Řádek 118: | Řádek 113: | ||
sox SVAK1_1386323982726.wav -c 2 -t f32 -r 44100 - repeat 20 | jack-stdin pysdr: | sox SVAK1_1386323982726.wav -c 2 -t f32 -r 44100 - repeat 20 | jack-stdin pysdr: | ||
| | ||
- | ===== Prezentace signálu z detekční stanice ===== | ||
- | |||
- | Pro přímé zobrazování detekovaných meteorů může běžet živý waterfall i na jiném počítači, | ||
- | |||
- | {{: | ||
- | |||
- | |||
- | Jednotlivé bloky jsou výše zmíněné programy. | ||
- | |||
- | |||
- | ==== Spuštění pySDR na prezentačním počítači ==== | ||
- | |||
- | Pokud je stanice připojena datovou linkou s dostatečnou propustností, | ||
- | |||
- | |||
- | === SSH === | ||
- | |||
- | Jednou z možností je použití trubek přes ssh spojení. V tom případě budeme postupovat následovně. | ||
- | |||
- | - Spustíme jack například přes ' | ||
- | - Spustíme pySDR ' | ||
- | - Připojíme se na vzdálenou stanici a přesměrujeme data do unixové trubky: | ||
- | |||
- | ssh radio.ust.cz " | ||
- | |||
- | V qjackctl pak přetažením myší spojíme stdin a pysdr. Nyní by měl být v pysdr vidět waterfall ze vzdálené stanice. | ||
- | |||
- | |||
- | === NetJack === | ||
- | |||
- | sudo apt-get install qjackctl | ||
- | |||
- | |||
- | Uživatel musi byt v skupine audio | ||
- | |||
- | sudo adduser kaklik audio | ||
- | |||
- | a v / | ||
- | |||
- | @audio - rtprio 99 | ||
- | @audio - memlock unlimited | ||
- | |||
- | Pokud se to neudala, tak spusteni jakck zkonci takto: | ||
- | |||
- | jackdmp 1.9.8 | ||
- | Copyright 2001-2005 Paul Davis and others. | ||
- | Copyright 2004-2011 Grame. | ||
- | jackdmp comes with ABSOLUTELY NO WARRANTY | ||
- | This is free software, and you are welcome to redistribute it | ||
- | under certain conditions; see the file COPYING for details | ||
- | JACK server starting in realtime mode with priority 10 | ||
- | Segmentation fault (core dumped) | ||
- | |||
- | |||
- | |||
- | == Lokalni spojeni Jack == | ||
- | |||
- | Potom lze jack spustit: | ||
- | |||
- | jackd -d alsa -dhw:1 | ||
- | |||
- | kde hw:1 cislo je urcene podle / | ||
- | |||
- | aplay -l | ||
- | |||
- | |||
- | == Sitove spojeni Jack == | ||
- | |||
- | |||
- | Nejdrive musi instalace jack fungovat lokalne viz vise. | ||
- | |||
- | Nasledne na master pocitaci spustime: | ||
- | |||
- | qjackctl | ||
- | |||
- | a nastavime zdroj dat z remote klienta na lokalni siti: | ||
- | |||
- | jack_netsource -H kaklik-netbook.local | ||
- | |||
- | Na remote klientovi pak presmerujeme audiovystup na jack v siti: | ||
- | |||
- | jackd -R -d netone | ||
- | |||
- | Zdroj http:// | ||
- | |||
- | === Jacktrip === | ||
- | |||
- | Jacktrip je metoda pro přenášení zvukových dat přes jack, která synchronizuje vzájemně dvě instance jacku běžící na různých strojích.. V Ubuntu je potřeba jacktrip zkompilovat, | ||
- | |||
- | sudo apt-get install libasound2-dev libjack-jackd2-dev qt4-qmake qt4-default | ||
- | git clone https:// | ||
- | cd ./ | ||
- | ./build | ||
- | |||
- | == Server == | ||
- | |||
- | Na staničním počítači musíme spustit instanci jacku, která bude číst data ze správné zvukovky. V tomto případě je to externí USB zvukovka s hw:1 | ||
- | jackd -R -dalsa -dhw:1 | ||
- | |||
- | Dále pak spustíme jacktrip server | ||
- | |||
- | jacktrip -q 8 -r 3 -s | ||
- | |||
- | |||
- | == Klient == | ||
- | |||
- | Na vizualizačním počítači pak spustíme istanci jacku, která musí mít nastavenou stejnou vzorkovací frekvenci, jako instance detekční stanici, zde si ale můžeme pomoci grafickým nástrojem qjackctl | ||
- | |||
- | qjackctl | ||
- | |||
- | |||
- | Kde v jeho menu nastavíme správnou vzorkovací frekvenci. Pak spustíme jacktrip klienta s parametrem IP adresy detekční stanice. | ||
- | |||
- | ./jacktrip -z -c 192.168.1.21 | ||
- | |||
- | protože jacktrip nepodporuje zeroconf, tak můžete nechat IP adresu doplnit bash | ||
- | |||
- | `resolveip -s popelnice.local` | ||
- | | ||
- | nebo například | ||
- | | ||
- | avahi-resolve -4 -n meteor4.local | ||
- | |||
- | Po spojení s protistanicí by se v zapojovací desce qjackctl mělo objevit zařízení jacktrip. Parametr -z v tomto případě znamená poskytnutí nulových hodnot při podtečení bufferu. | ||
- | |||
- | ==Více klientů== | ||
- | Pokud chcete mít připojení ke stanici pro více uživatelů, | ||
- | |||
- | Na straně serveru pro každého klienta musíte do nového terminálu zadat | ||
- | |||
- | jacktrip -s -o10 | ||
- | |||
- | kde za parametrem -o je offset od portu 4464, pro každé nové připojení tento offset musí být jiný. | ||
- | |||
- | Na uživatelském počítači zadáte: | ||
- | |||
- | jacktrip -c -o10 | ||
- | |||
- | se stejným parametrem | ||
- | |||
- | === QmidiNet === | ||
- | |||
- | Qmidinet je aplikace, která slouží k přenosu Midi dat po síti. | ||
- | |||
- | QmidiNet nainstalujete: | ||
- | |||
- | sudo apt-get install qmidinet | ||
- | | ||
- | A spouští se stejným příkazem na straně serveru i u klienta. | ||
- | |||
- | qmidinet -p21928 | ||
- | | ||
- | kde za -p vložíte vlastní UDP port. Ještě je potřeba povolit připojení qmidinet k jacku. V grafickém prostředí to lze udělat snadno nastavením v nabídce ikony qmidinet. Přes příkazovou řádku je však potřeba vytvořit soubor // | ||
- | |||
- | [Options] | ||
- | General\NumPorts=1 | ||
- | General\AlsaMidi=true | ||
- | General\JackMidi=true | ||
- | Network\Interface=eth0 | ||
- | Network\UdpPort=21928 | ||
- | |||
- | Pak by se po spuštění qmidinet měla v qjackctl objevit QmidiNet propojka. | ||
- | |||
- | |||
==== Socket spojeni ==== | ==== Socket spojeni ==== | ||
- | PySDR se může připojit na stanici přímo pomocí netcat. Příklad použití je následující. | + | PySDR se může připojit na stanici |
nc radio-TEST.local 3701 | ./ | nc radio-TEST.local 3701 | ./ | ||
+ | Kde radio-TEST.local je sitove jmeno stanice. V případě, že pysdr spouštíme rovnou na stanici, tak je to localhost. | ||
| |
cs/pysdr.txt · Poslední úprava: 2020/08/09 19:40 autor: kaklik