![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Zprovoznění realtimeového zvukového serveru Jack7.5.2008 (aktualizace 5.6.2009)
Základním předpokladem je, že máme funkční zvukovou kartu. Dalším předpokladem je, že jsme nainstalovali balíček jack a balíček qjackctl, přičemž aplikace QJackCtl (Jack Audio Connection Kit) je zobrazena na následujícím obrázku:
Když už se snažíme o realtimeové zpracování zvuku, měli bychom také používat realtimeové (nízkolatenčnní) jádro (kernel). O tom, kde získat realtimeový kernel pro distribuce openSUSE píši zde. S nainstalováním nového realtimeového jádra je spojena i otázka instalace ovladačů grafické karty pro zprovoznění 3D akcelerované grafiky. Touto otázkou, i s přihlédnutím k realtimeovému jádru, se zabývá článek umístěný na tomto webu zde. Pro možnost úspěšného spuštění zpracování zvuku v reálném čase je třeba přidat každého uživatele, který s těmito nástroji bude pracovat, do privilegované skupiny uživatelů mající právo spouštět aplikace s prioritou reálného času. Tato skupina se jmenuje audio a nalezneme ji v nástroji správy uživatelů a skupin. V openSUSE spustíme YaST, zvolíme sekci Bezpečnost a uživatelé a v ní položku Správce uživatelů. Po zobrazení okna označíme příslušného uživatele a klikneme na tlačítko Upravit. V nastavení uživatele přejdeme na kartu Detaily, kde zaklikneme skupinu audio a potvrdíme tlačítkem Přijmout. Po zařazení všech uživatelů do této skupiny provedeme restart počítače a nyní již by spustit Jack přes grafické rozhraní QJackCtl neměl být problém. Schválně píšu "neměl být" problém. Někdy problém je. Problém se spouštěním jsem řešil při různých instalacích. Někdy vše funguje okamžitě po přidání uživatele do skupiny audio a po restartu počítače. Někdy po stisknutí tlačítka Start okně aplikace QJackCtl vyskočí následující chybová hláška a Jack server se ukončí.
Po odkliknutí chybové hlášky se zobrazí okno Messages se záznamem běhu Jack serveru.
Zde je
pro
nás důležitý řádek
Pakliže tam tyto tři řádky nejsou, nezbyde nám nic jiného než je tam dopsat. Soubor musíme editovat jako root (su) a po editaci a uložení opět restartovat počítač. Editaci provedeme nejlépe spuštěním konzole, kde zadáme příkaz su a následně zadáme heslo superuživatele root. Po úspěšném zalogování spustíme příkaz mc (Midnight Commander - musíme mít nainstalovaný balíček mc). V něm vyhledáme výše zmíněný soubor a potom pomocí klávesy F4 inicializujeme jeho editaci. Po editaci soubor ukončíme klávesou F10 a samozřejmě potvrdíme uložení změn. Po restartu počítače to již prostě musí fungovat. To, co nastavují tyto tři řádky, je právě priorita procesů spouštěných uživateli ve skupině audio a dále maximální rezervovaná paměť. Další problém jsem zaznamenal v případě openSUSE 11.0 s novým grafickým prostředím KDE 4, kde jsem tyto všechny volby nastavil, ale i přesto Jack server po jeho nastartování vyhodil chybovou hlášku a v okně Messages se zobrazilo varování, že Cannot connect to server socket err = není souborem ani adresářem. Z nějakého nepochopitelného důvodu nebyly automaticky vyřešeny všechny potřebné závislost a bylo nutno ručně zvolit k instalaci balíček libjack0. To problém okamžitě vyřešilo a bez restartu počítače. Tak, Jack server nám jede, jeho používání prostřednictvím grafické nádstavby QJackCtl si ukážeme v jednom z příštích návodů. |
Počet přístupů na AudioLinux od 1.5.2008: