. : New eShop! - Mobilní verze - Pandatron.cz - Pandatron.sk - Diskuzní fórum - Zakázkový vývoj : .
 
Projekt WiFi rádia V - Zvukový výstup a první stream

Projekt WiFi rádia V - Zvukový výstup a první stream

V pořadí již páté pokračování stavebního návodu na konstrukci levného WiFi internetového rádia se zaměřujeme na instalaci zvukového výstupu a serveru hudebního přehrávače.

Následující pokyny předpokládají, že již máte bezdrátový router Asus WL-520GU upravený podle následujících, dříve uvedených kroků: vyvedený sériový a USB port, nainstalovaný a funkční systém OpenWRT a nakonfigurované síťové připojení k routeru. Pokud tomu tak není, podívejte se na předchozí díly seriálu a dozvíte se víc.

Použití opkg pro přizpůsobení OpenWrt:
Systém OpenWrt (a samozřejmě nejen on) obsahuje nástroj s názvem opkg, který koncovému uživateli umožňuje snadné přidávání a odebírání volitelných softwarových balíků - pluginů. Tyto balíčky obsahují funkce, které obvykle nejsou součástí základní distribuce OpenWrt, jako jsou hardwarové ovladače (včetně USB), volitelný software a řada dalších utilit. Většina takto dostupných balíčků není tedy obvyklou součástí výchozí konfigurace systému, především proto, že router nabízí jen 4 MB Flash pro uložení veškerých dat. Velké množství informací o dostupných prvcích je možné získat například na OpenWrt Wiki komunitě, kde jsou i podrobné informace o vlastní konfiguraci a použití funkce opkg.

Než je však možné funkci opkg použít, je třeba ji rovněž nakonfigurovat. Soubor /etc/opkg.conf obsahuje několik možností, včetně URL serveru, který opkg služba využívá k nalezení žádaného balíčku. V našem případě je třeba tuto hodnotu konfiguračního souboru změnit, což je možné využitím integrovaného textového editoru následujícím povelem:

  root@OpenWrt:~# vi /etc/opkg.conf

Po změně prvního řádku by měl soubor vypadat takto:

  src/gz snapshots http://mightyohm.com/files/kamikaze-2.4/packages/mipsel
  dest root /
  dest ram /tmp
  lists_dir ext /var/opkg-lists

Rovněž si můžete stáhnou kompletní sadu balíků do svého počítače a přístup opkg nastavit k němu. S velkým úspěchem jsem k tomuto účelu využil server Apache, který je již součástí OS X, nebo je možné jeho stažení z internetu.

Následující příkaz říká opkg, aby stáhla seznam dostupných balíčků ze serveru:

  root@OpenWrt:~# opkg update

V našem případě by jste měl dostat výpis podobný tomuto:

  Downloading http://mightyohm.com/files/kamikaze-2.4/packages/mipsel/Packages.gz
  Connecting to mightyohm.com (72.32.209.132:80)
  Packages.gz          100% |*******************************|  8326  --:--:-- ETA
  Inflating http://mightyohm.com/files/kamikaze-2.4/packages/mipsel/Packages.gz
  Updated list of available packages in /var/opkg-lists/snapshots
  Signiture check for snapshots skipped because GPG support was not enabled in this build

Nyní můžeme začít instalovat jednotlivé balíky. Pro přístup k naší USB Audio zvukové kartě - konvertoru musíme nainstalovat USB 1.1 (OHCI) podporu a příslušné ovladače zvuku:

  root@OpenWrt:~# opkg install kmod-usb-audio kmod-usb-ohci

Tím by mělo dojít k automatické instalaci balíků kmod-usb-core a kmod-sound-core. Pokud se tak nastane, je možné provést samozřejmě instalaci i postupně.

Nyní je k routeru potřeba připojit USB zvukovou kartu (pokud jste tak ještě neučinili) a router restartovat:

  root@OpenWrt:~# reboot

Vzhledem k provedeným změnám se neděste nových stavových zpráv, jako jsou tyto:

  ...
  usb-ohci.c: USB OHCI at membase 0xb8003000, IRQ 6
  usb-ohci.c: usb-00:03.0, PCI device 14e4:471a
  usb.c: new USB bus registered, assigned bus number 1
  usb.c: registered new driver audio
  audio.c: v1.0.0:USB Audio Class driver
  usbaudio: device 2 audiocontrol interface 0 has 1 input and 1 output AudioStreaming interfaces
  usbaudio: device 2 interface 2 altsetting 1 channels 1 framesize 2 configured
  usbaudio: valid input sample rate 48000
  usbaudio: valid input sample rate 44100
  usbaudio: device 2 interface 2 altsetting 1: format 0x00000010 sratelo 44100 sratehi 48000 attributes 0x01
  ...
  usbaudio: registered dsp 14,3
  usbaudio: constructing mixer for Terminal 6 type 0x0301
  ...

Pokud vidíte výše uvedené zprávy, je s největší pravděpodobností vše v pořádku a potřebné ovladače byly úspěšně nainstalovány. V tuto chvíli by mělo dojít k rozsvícení zelené LED uvnitř USB zvukového konvertoru, což je další známkou správné funkce zařízení.


Obr. 1: USB zvuková "karta"

Instalace MPD:
Chcete-li skutečně přehrávat volené skladby, je třeba nainstalovat ještě další nutný software. Pomocí opkg je tak možné učinit takto:

  root@OpenWrt:~# opkg update
  root@OpenWrt:~# opkg install mpd mpc

Tento příkaz nainstaluje přehrávač MPD - Music Player Daemon. MPD je open-source hudební server, který umožňuje přístup lokálně nebo přes síť pomocí různých klientů, které jsou k dispozici pro řadu různých platforem. Pomocí příkazové terminálu je rovněž instalován i příslušný klient MPC.

Před vlastním použitím MPD pro přehrávání hudby, je třeba provést opět základní konfiguraci:

  root@OpenWrt:~# cd ~
  root@OpenWrt:~# mkdir .mpd
  root@OpenWrt:~# mkdir music
  root@OpenWrt:~# mkdir .mpd/playlists
  root@OpenWrt:~# vi /etc/mpd.conf

V otevřeném konfiguračním souboru sjeďte dolů na řádek audio_output sekce mpd a zde změňte odkaz na /dev/dsp, aby vypadal takto:

  # An example of an OSS output:
  #
  audio_output {
    type                    "oss"
    name                    "My OSS Device"
    device                  "/dev/sound/dsp"
    format                  "44100:16:2"
  }

Samozřejmě tímto konfigurační možnosti MPD ani zdaleka nekončí. Jedná se skutečně o velmi silný nástroj a základní přehled jeho vlastností je uveden například zde či mnohem více informací i o přidružených tématech naleznete na stránce MPD Wiki.

Nakonec změny v souboru mpd.conf uložte a editor vi zavřete. Nyní je možné MPD spustit použitím následujícího příkazu:

  root@OpenWrt:~# mpd

Zvukový výstup i samotný router by měl nyní zůstat v klidu, bez chyb. Správnou funkci MPD je možné ověřit dotazem:

  root@OpenWrt:~# mpc
  volume:100%   repeat: off   random: off

Pokud vidíte zde uvedené, nebo podobné, informace o zvukovém výstupu, je vše v pořádku, zvukový server běží a je možné zahájit jeho ovládání s pomocí MPC.

Právě teď je dobrý čas pro připojení sluchátek nebo reproduktoru na sluchátkový výstup USB zvukového konvertoru. Varování - počáteční hlasitost může být velmi vysoká! Nenasazujte si tak během testování sluchátka celou plochou na uši. Nejlepším řešením jsou samozřejmě počítačové reproduktory s manuálním ovládáním hlasitosti. Tím je možné nastavit hlasitost na přijatelnou úroveň.

Nyní můžeme zkusit přidat do seznamu skladeb odkaz na server streamovaného rádia, tedy například:

  root@OpenWrt:~# mpc add http://relay3.slayradio.org:8000/
  adding: http://relay3.slayradio.org:8000/

A konečně, okamžik pravdy:

  root@OpenWrt:~# mpc play
  http://relay3.slayradio.org:8000/
  [playing] #1/1   0:00/0:00 (100%)
  volume:100%   repeat: off   random: off
  root@OpenWrt:~#

Pokud vše funguje správně, měli by jste během několika sekund ve sluchátkách nebo reproduktorech slyšet vysílání Slay Radia. Diody LED, indikující na routeru probíhající přenos, musí zároveň blikat při stahování jednotlivých bloků streamu, stejně jako zelená LED na USB audio konvertoru musí blikáním ukazovat probíhající přenos dat do zařízení.

Pokud jste se s úspěchem dostali až sem, doporučuji se na chvíli pohodlně opřít a vychutnat si přehrávané skladby. Gratuluji vám!

Samozřejmě můžete do playlistu přidat i další servery a to opakováním výše uvedeného příkazu. Jejich výběr poté probíhá pomocí příkazu MPC n, kde n je pozice serveru v plalistu. Příkazem MPC playlist je poté možné nechat si vypsat celý playlist, eventuálně příkazem MPC help je možné nechat si vypsat podporované příkazy.

Jednou z velmi dobrých vlastností MPD je, že funguje jako server na portu 6600 na adrese routeru, což umožňuje jeho ovládání i z jiného zařízení ve vaší síti. Pokud si do svého počítače stáhnete nějakého MPD klienta, například Theramin, můžete přehrávač v routeru ovládat z počítače velice pohodlně. Rovněž je to i vynikající klient pro mobilní telefon řady iPhone.

To by nyní stačilo. Doufám, že vám vše funguje jak má a máte tedy do příštího dílu co zkoušet. V příštím díle začneme vytvářet nějaké skripty pro automatické ovládání MPD a rovněž si rozebereme možnosti uživatelského rozhraní.

Pokud jste se připojili ke stavbě WiFi rádia, můžete využít diskusní fórum na stránkách autora konstrukce. Odkaz je uveden pod článkem.

Pro zodpovězení častých otázek na téma nutnosti použití WiFi a vůbec zde uváděného typu routeru odpovídám: V konstrukci je možné použít prakticky libovolný router, který obsahuje USB port typu Host (ať už vyvedený, nebo končící na desce s plošnými spoji) a je na něho možné nainstalovat operační systém Open-Wrt, DD-Wrt a podobné. Z podstaty jádra Linuxu není nutné využívat rozhraní WiFi a samotný router může být prakticky i nadále využit k funkci směrování datových toků.

Mezi dobře dostupné routery by se dal zařadit například typ z řady WRT54G LinkSys. Dostupný je v ceně kolem 1000 Kč a obsahuje dva USB 2.0 porty (samozřejmě s podporou rozšíření pomocí USB HUBu).

Odkazy & Download:
Domovská stránka autora
Building a Wifi Radio
Wifi Radio Discussion Forum

Asus WL-520GU
OpenWrt
FTDI 232 - 3V3







GooglePlus1 FaceBook Twitter del.icio.us DiGG Google StumbleUpon Google Buzz Email RSS PDF Tisk

Komentáře (10):

Zobrazit starší 30 dnů (10)...

host
10. Dne 22. 09. 2013 v 18:48 zaslal host
usb zvuková karta
jaký usb zvukový adaptér můžu použít ? kopil jsem jeden a ani hláska !pod kterým Vám chodí wěifi rádio ? dík


Název příspěvku: Vaše jméno: host
                 
  Zakázat formátování [Zakáže kódování a nahrazování smajlíky.]
Připojit soubory
reklama:
MRF24J40MA
MRF24J40MA je certifikovaný 2,4 GHz IEEE 802.15.4 bezdrátový modul transceiveru.
od 345 Kč

Informace uvedené v článcích jsou platné v době jejich vydání a samotné články jsou určeny pouze jako zdroj informací. Autor článku ani správce webu nenesou žádnou zodpovědnost za případné újmy na majetku a zdraví. Názvy společností a výrobků, loga a další multimediální materiál mohou být ochrannými známkami příslušných společností.
RSS kanály: | |
+420 723 846 377
info@pandatron.cz
Všechna práva vyhrazena | mobilní verze | © Copyright 2000 - 2016 ISSN 1803-6007