Programinis MIDI garso sintezavimas su TiMidity
Daug dabartinių garso plokščių nesugeba sintezuoti MIDI garso. TiMidity tarnyba leidžia sukurti virtualų sintezatorių ir jį naudoti muzikos programose, pvz., natų redagavimo programose Rosegarden, TuxGuitar, gana naujoje Minuet klausos lavinimo programoje. Beje TiMidity dar galima naudoti kaip biblioteką MIDI konvertavimui į WAV, tiesiog kaip komandinės eilutės arba grafinę programą MIDI grojimui.
Reikia įdiegti timidity paketą.
Nebūtina, bet labai rekomenduojama įdiegti kokią nors SF2 (SoundFont) rinkmeną tam, kad girdėtumėte kokybiškesnį garsą.
Numatytuoju atveju kartu su timidity kartu įdiegiamas fluid-soundfont-gm paketas, pateikiantis maždaug 140 MiB dydžio FluidR3_GM.sf2. Tačiau TiMidity nėra pririšta prie šio konkretaus fluid-soundfont-gm paketo, t. y. sistema leidžia jo neįdiegti. Dar oficialiose openSUSE saugyklose esantis snd_sf2 paketas pateikia šimtus kartų mažesnę (vos maždaug 300 KiB dydžio) Vintage_Dreams_Waves_v2.sf2. Numatytuoju atveju openSUSE sistemoje šios SF2 rinkmenos įdiegiamos /usr/share/sounds/sf2/ kataloge. Beje, šios SF2 rinkmenos tinka ir kitiems MIDI sintezatoriams, pvz., FluidSynth. Taigi, jei turite SF2, tuomet administratoriaus (root) teisėmis pakeiskite /usr/share/timidity/timidity.cfg rinkmeną, jos gale prirašydami naują eilutę, nurodančią, kurią SF2 rinkmeną naudoti, pavyzdžiui:soundfont /usr/share/sounds/sf2/Vintage_Dreams_Waves_v2.sf2
Vis tik jei renkatės numatytąją FluidR3_GM.sf2, verčiau vietoj to tiesiog atkomentuokite vieną paskutiniųjų eilučių (t.y. joje nutrinant pirmąjį #), kad būtų naudojama su šia SF2 susieta sudėtingesnė konfigūracija:
source fluidr3_gm.cfg
Naudotojui vienam kartui paleisti tarnybą, kad ši veiktų iki darbalaukio aplinkos seanso pabaigos, komandinėje eilutėje (konsolės/terminalo programoje) įvykdykite:
timidity -iA -Os &
Matysite, kad sukuriami nauji ALSA MIDI prievadai, pavyzdžiui: Opening sequencer port: 128:0 128:1 128:2 128:3
Patikrinti, ar veikia TiMidity tarnyba, galite įvykdę
aplaymidi muzika.mid –port 128:0
Teoriškai TiMidity tarnybą galima paleisti ne tik kaip naudotojo tarnybą, bet ir kaip paslaugą/tarnybą visai sistemai. Tačiau paleisti TiMidity paslaugos visai sistemai daugumoje atvejų nepavyks, nes pastaruoju metu Linux sistemose (įskaitant openSUSE) dažniausiai naudojama PulseAudio garso sistema konfliktuoja dėl išteklių su TiMidity, tad neįmanoma paleisti abiejų kartu administratoriaus teisėmis. Jei nenaudotumėte PulseAudio garso sistemos (o tarkim naudotumėte ALSA garso sistemą kaip pagrindinę), tuomet tam, kad tarnyba pasileistų automatiškai iš naujo paleidus kompiuterį, pakaktų įgalinti ir paleisti TiMidity kaip paslaugą per YaST > (Sistema) > Paslaugų tvarkytuvę arba komandinėje eilutėje
Vis tik, jei norite, kad nereikėtų kaskart rankiniu būdu paleidinėti komandos, galite nurodyti sistemai, kad ji automatiškai būtų įvykdoma pasileidžiant jūsų darbalaukio aplinkai. Pavyzdžiui, galite KDE Dolphin programoje nueiti į /home/naudotojas/.config/autostart/ katalogą (.config yra slepiamasis!), nuspausti dešinį pelės klavišą, pasirinkti sukurti naują > nuorodą į programą. Analogišką nuorodą į programą (programa.desktop rinkmeną) galite sukurti su bet kuria tekstų rengykle, dokumente įrašydami vos dvi eilutes:
[Desktop Entry]
Exec=timidity -iA -Os &Nepamirškite padaryti nuorodos vykdomąja. Beje, KDE Plasma aplinkoje matyti bei konfigūruoti automatiškai paleidžiamas programas galite per meniu Nuostatos > Sistemos nuostatos > (Darbo erdvė) > Paleidimas ir išjungimas > Autostartas.
Visa tai sutvarkyti galite ir komandinėje eilutėje:
sudo zypper in timidity fluid-soundfont-gm
sudo sed “s/#source fluidr3_gm.cfg/source fluidr3_gm.cfg/” -i /usr/share/timidity/timidity.cfg
echo “[Desktop Entry]
Exec=timidity -iA -Os &
" > ~/.config/autostart/timidity_tarnyba.desktop
chmod +x ~/.config/autostart/timidity_tarnyba.desktop
Remtasi: