OPEN SOUND SYSTEM
[XMMS]---------------->[OSS]---------[device]
[MPlayer]---X (tidak bisa)
Kalau mau coba, silahkan jalankan XMMS, lalu dari menu preference, pilih output plugin OSS dan mainkan satu musik. Lalu secara bersamaan, coba jalankan MPlayer atau Xine untuk memainkan video. Macet deh.
ENLIGTENED SOUND DAEMON
[XMMS]-------------+--->[ESOUND]-------->[device]Di sini, semua program harus mengakses esound, tidak boleh langsung ke device. Dengan demikian, sinyal suara dari semua program akan di campur (mix) oleh Esound, sebelum diteruskan ke sound device. COba saja set XMMS dan MPlayer anda untuk pakai output esound, lalu mainkan musik dan video bersamaan. Bisa jalan kan ?
[MPlayer]----------+
Ruginya pakai sound daemon seperti ini jelas ada. Coba perhatikan CPU load anda, pasti kerjanya akan lebih sibuk karena harus mencampus sinyal suara. Hal lain, kalau telinga anda cukup peka, kualitas suaranya akan turun.
ARTS
ALSA
ALSA ini begitu powerfull, sehingga teorinya, kita tidak perlu lagi OSS, Esound maupun Arts. Sayangnya, kenyataan dilapangan tidak begitu. Banyak masalah untuk transisi ke ALSA. Mari kita lihat.
ALSA DAN KERNEL
[program]-------->[ALSA]------->[device]Ada dua pendekatan. Cara pertama, rekompile kernel anda tanpa OSS. Cara lain, masukkan semua driver OSS kedalam daftar blacklist di sistem hotplug. Kalau anda tidak lalukan hal tersebut, sound anda bisa ngaco tak terduga.
[OSS]--X (jangan dipakai)
ALSA DAN DMIX
[XMMS]------>[ALSA]---+--->[DMIX]-->[device (+mixer)]
[MPlayer]--->[ALSA]---+
ALSA DAN OSS EMULATOR
[program tua]-------->[OSS emulator]----->[ALSA]--->[device]Sayangnya OSS emulator ini benar-benar meniru OSS. Kalau ada program yang sedang pakai OSS emulator, maka program lain tidak akan bisa akses ke device, walaupun ALSA punya DMIX. Jadi kalau anda mau browsing situs flash, XMMS anda harus stop.
ALSA DAN ESOUND
Ini sangat berarti sebab banyak program tua ternyata bisa akses esound. Misalnya saja FlashPlayer dan IceWM (light window manager). Kalau anda belum tahu, IceWM punya efek suara yang keluar lewat OSS atau Esound. Dengan mengkonfigurasi esound pakai ALSA, kita bisa punya arsitektur demikian:
[IceWM]--------+-->[esound]--+-->[ALSA]--->[DMIX]--->[device]Perhatikan disini, XMMS maupun MPlayer langsung akses ke ALSA. Sementara itu IceWM dan FlashPlayer akses ke esound, kemudian diteruskan ke ALSA. Semua sinyal akan tercampur dan anda bisa dengar ributnya :)
[FlashPlayer]--+ |
[XMMS]-----------------------+
[MPlayer]--------------------+
ALSA, ESOUND, DAN ARTS
Buat mengakalinya, cara standard adalah memendekkan masa klaim ARTS, misalnya 10 detik. Jadi kalau ARTS tidak terpakai selama 10 detik, sound device akan dibebaskan. Saat itu program lain akan bisa mengakses sound device secara langsung. Kalau mau coba, cari KDE control center, sound system, terus set "Auto-suspend if idle after ...".
Sayangnya cara auto-suspend pendek itu tidak reliable. Kadang jalan, kadang tidak. Setelah dicari-cari lagi, ternyata ARTS bisa diatur sound-devicenya (back-end). Asiknya, ternyata dia bisa pakai ALSA maupun Esound sebagai back-end. Kesempatan nih, mari coba ide gelo ini. Set ARTS untuk pakai esound, sementara itu esound pakai ALSA. Ditambah games berbasis SDL (Simple DirectMedia Layer), konfigurasinya jadi seperti ini:
[KDE]------+-->[ARTS]-+->[Esound]-+->[ALSA]-->[DMIX]-->[device]Nah lho ... mabok nggak tuh !
[Kafeine]--+ | |
[FlashPlayer]---------+ |
[XMMS]----------------------------+
[MPlayer]-------------------------+
[Xine]----------------------------+
[Games]------->[SDL Mixer]--------+
Ini dia shot konser bareng KDE + MPlayer + Xine + Kaffeine + XMMS + Konqueror (Flash) + Firefox (Flash) + Games di Vector Linux SOHO 5.0.
Jadi, begitulah. Saya puas karena sekarang semua program audio bisa jalan barengan. Namun dalam hati, saya berdoa semoga sound system di Linux ini bisa cepat transisi ke 100% ALSA, biar nggak semrawut dan makan banyak waktu CPU seperti ini.
Tidak ada komentar:
Posting Komentar