![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Zprovoznění přehrávání MIDI25.5.2008 (aktualizace 3.1.2009)Jedním z problémů, které jsem z Windows neznal, byla nutnost manuálního zprovoznění přehrávání MIDI hudebních souborů. MIDI se mi jakoby přehrávaly v programu KMid, ale zvuk nebyl slyšel. Nastavení hlasitosti kanálu Synth samozřejmě vůbec nepomohlo. Po nějaké době jsem na internetu našel, že MIDI lze v Linuxu softwarově přehrávat pomocí programu TiMidity. Tento program jsem zprovoznil, nicméně s kvalitou vzorků zvuku jsem spokojen vůbec nebyl. Hledal jsem tedy dále a našel jsem způsob jak zprovoznit přehrávání MIDI souborů hardwarově v programu KMid. Oba návody dávám k dispozici. Softwarové přehrávání MIDINejdříve musíme nainstalovat program TiMidity (zobrazený na následujícím obrázku). Chybí-li po instalaci v nabídce KDE zástupce na TiMidity nebo chci-li s TiMidity asociovat soubory *.mid, je nutno zástupce na TiMidity vytvořit následujícím příkazem s parametry: /usr/bin/timidity -iat
Přehrávání pomocí programu TiMidity je jednoduché, bezproblémové, nenáročné, nicméně kvalita zvuku bez dalších nastavení je nevalná. Pro zlepšení zvuku je nutno upravit konfigurační soubor: /usr/share/timidity/timidity.cfg, kde si vyhledáme následující dva řádky: source
piano+guitar.cfg a za ně jako root (su) doplníme řádek s odkazem na soundfont (instalací soundfontu se zabývá následující kapitola): soundfont /usr/share/sfbank/creative/CT4MGM.SF2 (případně jinou cestu k jinému soundfontu *.sf2) Dále doporučuji zapsat další řádek, který defaultně vypne nepřirozený reverb: opt EFreverb=d #disable reverb Případně lze vypnout i další efekty, což je chorus a delay těmito volbami: opt EFchorus=d #disable chorusopt EFdelay=d #disable delay Text za znakem # není nutné psát, znak # uvozuje jen komentář. Upravený soubor bude vypadat nějak takto:
Hardwarové přehrávání MIDITento návod se týká zvukové karty SoundBlaster od společnosti Creative používané v distribuci openSUSE. Ovšem předpokládám, že u zvukových karet ostatních výrobců a u dalších distribucí jistě existuje analogie. Základní zprovoznění provedeme dle následujícího postupu:
Program KMid můžeme používat dvojím způsobem. A to s realtimeovým serverem Jack nebo teoreticky i bez něj. To záleží na nastavení aplikace QSynth. To jak zprovoznit Jack popisuji zde. Aplikace QSynth je zobrazena na následujícím obrázku.
Ve výchozím nastavení aplikace QSynth používá jako zvukový systém Jack. Musíme tedy nejdříve spustit QJackCtl a poté teprve spustit QSynth. Grafické rozhraní QJackCtl slouží, jak bylo řečeno, k ovládání realtimeového (nízkolatenčního) serveru Jack a ten zas slouží k synchronnímu propojování vstupů a výstupů zvukové karty a jednotlivých audio aplikací. Chceme-li MIDI pouze přehrávat a nic víc, je možno rozhraní QSynth používat s Alsou. Klikneme v levém dolním rohu okna aplikace na tlačítko Setup a v nově otevřeném konfiguračním dialogu přejdeme na kartu Audio, kde přenastavíme volbu AudioDriver z Jack na Alsa.
Od této chvíle nemusíme před spuštěním QSynth spouštět QJackCtl. Ovšem v tomto režimu dochází k chybám přehrávání, proces není stabilní a ve zvuku praská (praskání můžeme omezit zvýšením hodnoty Buffer Count na 64). Takže z těchto všech důvodů doporučuji používat Jack. A jelikož Jack používá vzorkovací frekvenci 48 kHz, a zde je ve výchozím nastavení tato hodnota nastavena 44,1 kHz, nastavte dále hodnotu Sample Rate na 48000 (případně v nastavení QJackCtl nastavte tuto hodnotu na 44100), aby se vzorkovací frekvence nehádaly. Ať už Jack používáme nebo ne, musíme dále v konfiguračním dialogu QSynthu přejít na kartu Soundfonts a nahrát požadovanou banku *.sf2. Připomínám, že banky se nacházejí v umístění /usr/share/sfbank/creative/. ![]() Tím jsme provedli základní nutná nastavení, ale dále je vhodné provést i další volby: Kvůli možnosti využití všech kanálů (a tedy reálnějšímu zvuku) je dobré na kartě MIDI zvýšit hodnotu MIDI Channels na 128.
Kanály lze dokonce editovat. Zobrazení okna kanálů provedeme kliknutím na tlačítko Channels v hlavním okně aplikace QSynth. Nejzajímavější je asi kanál 10, což jsou bicí.
Po dvojkliku na tento kanál lze zvolit typ bicí sady dle následujícího obrázku.
Nyní již by mělo fungovat relativně bezproblémové hardwarové přehrávání MIDI souborů např. v programu KMid (musí zároveň běžet QJackCtl a QSynth). Aplikace KMid včetně jejího okna kanálů je zobrazena na následujícím obrázku.
V programu KMid se musí nastavit MIDI zařízení na FLUID Synth. To provedeme použitím nabídky Nastavení a dále zvolením položky Nastavení MIDI. Dále je potřeba nastavit požadovanou MIDI mapu. Soubory *.map jsou pro aplikaci KMid uloženy v /opt/kde3/share/apps/kmid/maps/.
Poznámky:
Příloha: Zde si můžete poslechnout rozdíl ve zvuku mezi softwarovým a hardwarovým přehráváním. Nahrávky byly pořízeny za použití zvukové karty Creative SoundBlaster Audigy ES, přičemž soubor z TiMidity je nahrán před výše popisovanou úpravou konfiguračního souboru. |
Počet přístupů na AudioLinux od 1.5.2008: