Pada masa sekarang kebanyakan komputer standar sudah memiliki teknologi multimedia yang mencukupi, yaitu dengan adanya kehadiran sound card sebagai salah satu komponen multimedia untuk sound device. Dalam sistem operasi winblows mungkin sound card anda akan cepat terdeteksi atau memang sudah ada driver bawaan dari sound card untuk lingkungan winblows, dan memang jarang produsen yang menyediakan driver untuk sistem operasi linux dalam paket produksi sound cardnya, walaupun sekarang sudah banyak driver-driver sound card karya para linuxer-linuxer seluruh dunia yang sudah kompatibel dengan sound card-sound card populer (umum digunakan) juga arsitektur kernel linux. Mungkin ada dari para linuxer yang punya masalah sound sistem nggak bisa nge-bunyi di linux boxnya gara-gara sound card yang nggak disupport linux.
Pada artikel ini saya hanya ingin bertukar pengalaman sedikit mengenai setup sound card, karena kebetulan sound card yamaha YMF724 DS-XG saya nggak disupport linux, tetapi akhirnya berbunyi juga..he..he dan sampai detik ini saya menulis dengan ditemani Gqmpeg yang membunyikan gedombrang Bio Hazard-Break Down. Setahu saya kernel 2.0.x dan 2.2.x (2.2.14), belum support beberapa sound card seperti Yamaha YMF 72x (punyaku YMF724 oi..) dan laen-laen lihat daftar dibawah, dan untuk kernel 2.2.16 keatas sudah support ke soundcard-soundcard yang sebelumnya nggak disupport itu dengan berbagai catatan (lihat dokumentasinya), tetapi kernel default/precompiled harus dikompile lagi dengan memasukkan sound card support dan modul sound card yang diperlukan.
Dalam bagian ini saya asumsikan anda sudah dapat memasang sound card ke motherboard dengan baik.
Kebanyakan sound card yang baru menggunakan Plug and Play
protokol untuk mengkonfigurasi seting untuk alamat i/o,
interrupt, dan channel DMA.
Pada saat boot bila kernel anda
sound card support maka akan ditampilkan pesan bahwa kernel
linux menemukan soundcard anda. Jika anda menggunakan distro
redhat, dalam paket standarnya terdapat utiliti yang dapat
mendeteksi sound card dan membuat semua konfigurasi untuk
me-load driver yang sesuai dengan sound card anda yaitu
'sndconfig'. Coba, jika berhasil maka selesailah perjalanan
anda dalam artikel ini.
Jika 'sndconfig' gagal, anda pasti
menggunakan distro lain atau kernel anda tidak memiliki sound
card support secara built-in di dalam kernel dan modul driver
sound card anda belum terkompile.
Solusi lain dengan
menggunakan isapnp (Tool untuk menkonfigurasi device berbasis
ISA Plug and Play). Tool ini terdapat di masing-masing paket
standar tiap distro linux.
Tahap-tahap penggunaan isapnp:
Beberapa driver sound card menyertakan software atau
konfigurasi khusus untuk menginisialisasi Plug and Play. Cek
dokumentasi driver kartu anda untuk lebih
jelasnya.
Informasi tentang sound card yang disupport
kernel dan feature-featurenya bisa dilihat dalam file pada
source code kernel linux, biasanya ditempatkan dalam direktori
/usr/src/linux/Documentation/sound.
Ketika anda menginstal linux dan sampai saat ini belum
pernah mencompile kernel, anda pasti menggunakan precompiled
kernel. Kernel precompiled tersebut sering belum memberikan
sound support. Anda harus me-recompile kernel tersebut dengan
sound card support yang built-in pada kernel dan membuat modul
driver yang anda perlukan (yang sesuai dengan hardware anda,
dalam hal ini sound card) atau membuat driver anda built-in
pada kernel (jika memungkinkan).
Untuk lebih jelas mengenai
bagaimana mengkompile kernel, lihat The Linux Kernel HOWTO
atau dokumentasi yang berhubungan kompile kernel linux.
File device biasanya sudah dibuat selama proses instalasi linux. Cara cepat untuk mengecek file device sound dapat dilakukan dengan menggunakan perintah:
root@5leaps:~#ls -l /dev/sndstat
crw-rw-rw- 1 root root 14, 6 Apr 30 14:50 /dev/sndstat
Jika keluarannya seperti di atas (waktunya bisa bervariasi) maka file device sound anda sudah sebagaimana mestinya.
Catatan jika anda sudah mempunyai file device, itu tidak menjamin semuanya dapat berjalan lancar. Driver kernel harus juga di-load atau dikompile sebelum device bekerja.
Jika anda yakin bahwa file device anda salah, anda dapat membuatnya kembali dengan perintah skrip /dev/MAKEDEV.
Booting sistem anda dengan kernel baru dan modul driver soundnya (Jika anda membuat modul untuk driver anda). Saya asumsikan anda sudah dapat mengkompile kernel dan segala prosedurnya
Selama booting, cek pesan inisialisasi seperti di bawah ini (jika memang terlalu cepat menggulungnya, anda dapat melihat pesan tersebut dengan perintah dmesg). Contoh pesan inisialisasinya:
Sound initialization started
<Sound Blaster 16 (4.13)> at 0x220 irq 5 dma 1,5
<Sound Blaster 16> at 0x330 irq 5 dma 0
<Yamaha OPL3 FM> at 0x388
Sound initialization complete
Contoh inisialisasi dari sound card saya melalui modul driver sound card (ymf_sb.o)yang di-load pada waktu boot:
Soundblaster audio driver Copyright (C) by Hannu Savolainen 1993-1996 ymf_sb: found YMF724 at 0xdf800000 Yamaha PCI mode. YMPCI selected SB 3.01 detected OK (220) ymf_sb: YMF7xx Legacy Audio driver 0.0.4 loaded
Sesuaikan pesan di atas dengan tipe sound card anda dan seting jumper (jika ada). Catatan, pesan diatas tidak akan ditampilkan ketika anda menggunakan modul driver sound yang di-load (dengan /sbin/modprobe [modul driver yang akan diload] yang dimasukkan dalam skrip, yaitu rc.modules).
Ketika driver sound di-link ke dalam kernel, pesan inisialisasi sound seharusnya ditampilkan. Jika tidak, berarti nggak ada driver sound di dalam kernel anda. Untuk masalah ini anda seharusnya mengecek bahwa anda telah mengenable sound support dan driver sound pada kernel yang anda kompile, kartu anda nggak disupport, I/O portnya rusak atau anda mempunyai kartu PnP yang belum dikonfigurasi.
Selanjutnya anda harus mengecek file device /dev/sndstat. Lihat status file driver sound yang seharusnya memberikan tambahan informasi apakah driver sound card terinisialisai dengan benar. Contoh keluarannya seperti dibawah ini:
Sound Driver:3.5.4-960630 Sat Jan 4 23:56:57 JAVT 2000 root,
Linux 5leaps 2.2.16 #48 Thu Dec 5 18:24:45 JAVT 2000 i686)
Kernel: Linux 5leaps 2.2.16 #48 Thu Dec 5 18:24:45 JAVT 2000 i686
Config options: 0
Installed drivers:
Type 1: OPL-2/OPL-3 FM
Type 2: Sound Blaster
Type 7: SB MPU-401
Card config:
Sound Blaster at 0x220 irq 5 drq 1,5
SB MPU-401 at 0x330 irq 5 drq 0
OPL-2/OPL-3 FM at 0x388 drq 0
Audio devices:
0: Sound Blaster 16 (4.13)
Synth devices:
0: Yamaha OPL-3
Midi devices:
0: Sound Blaster 16
Timers:
0: System clock
Mixers:
0: Sound Blaster
Contoh keluaran /dev/sndstat saya dengan modul driver sound card yang di-load pada waktu boot:
root@5leaps:~#cat /dev/sndstat OSS/Free:3.8s2++-971130 Load type: Driver loaded as a module Kernel: Linux 5leaps 2.2.16 #5 Mon Apr 30 14:23:17 JAVT 2001 i686 Config options: 0 Installed drivers: Card config: Audio devices: 0: YMF7xx Legacy Audio driver 0.0.4 (3.01) Synth devices: Midi devices: 0: Sound Blaster Timers: 0: System clock Mixers: 0: Sound Blaster
Perintah di atas dapat memberikan pesan kesalahan/error. "No such file or directory" mengindikasikan bahwa anda perlu membuat file device (lihat 1.3). "No such device" berarti driver sound belum di-load atau belum di-link ke dalam kernel (lihat 1.2).
Jika baris dalam bagian "Card config:" dalam /dev/sndstat di dalam tanda kurung (seperti "(SoundBlaster at 0x220 irq 5 drq 1,5)"), berarti device anda sudah dikonfigurasi tapi tidak terdeteksi.
Semua sudah beres?, sekarang anda dapat memainkan file sound/audio. Mainkan sampel sound (File sample sound dapat dicari di ftp://tsx-11.mit.edu/pub/linux/packages/sound/snd-data-0.1.tar.Z) dengan mengirimkannya ke device sound sebagai cek output, misal:
root@5leaps:~#cat singasong >/dev/dsp
root@5leaps:~#cat asik.au >/dev/audio
Catatan:
Kalau dua cara diatas tidak merubah hidup anda terutama
jika kernel anda belum mempunyai support dan modul driver
untuk sound card anda, silakan mencoba driver sound card
alternatif baik yang komersial maupun yang open source dan
gratis.
Ada beberapa pilihan alternatif untuk driver sound
card:
Disini saya menggunakan alsa-driver karena beberapa alasan
yaitu driver ini merupakan free software di bawah GNU GPL,
opensource, mensupport banyak sound card yang populer (umum),
'full duplex', 'fully modularized', dan kompatibel dengan
arsitektur sound dalam kernel.
Alsa driver yang saya punyai
versi 0.5.8b dengan ukuran file kurang lebih 753 Kb, dan yang
saya tahu alsa driver udah versi 0.5.10. Catatan: alsa-driver
versi 0.5.8b tidak support kernel 2.0.x.
Langkah-langkahnya:
root@5leaps :~#bzip2 -d alsa-driver-0.5.8b.tar.bz2
atau
root@5leaps:~#bunzip2 alsa-driver-0.5.8b.tar.bz2
lalu teruskan dengan membuka tarball-nya:
root@5leaps :~#tar xvf alsa-driver-0.5.8b.tar
root@5leaps :~/alsa-driver-0.5.8b#cd alsa-driver-0.5.8b/
root@5leaps :~/alsa-driver-0.5.8b#./configure
root@5leaps :~/alsa-driver-0.5.8b# make
root@5leaps :~/alsa-driver-0.5.8b#make install
root@5leaps :~/alsa-driver-0.5.8b#./snddevices
Contoh modules.conf punyaku:
# ALSA driver support # Thanks! # Now, my linuxbox is singing at me.. # Yeah ! alias char-major-116 snd options snd snd_major=116 snd_cards_limit=1 alias snd-card-0 snd-card-ymfpci options snd-card-interwave snd_index=0 snd_id="YMF724" # OSS driver atau OSS/Free setup alias char-major-14 soundcore alias sound-slot-0 snd-card-0 alias sound-service-0-0 snd-mixer-oss alias sound-service-0-1 snd-seq-oss alias sound-service-0-3 snd-pcm-oss alias sound-service-0-8 snd-seq-oss alias sound-service-0-12 snd-pcm-oss
root@5leaps :~#modprobe [modul sound card anda]
misalnya:
root@5leaps :~#modprobe snd-ymfpci
Bila anda masih belum jelas, mohon membaca dokumentasi dari alsa driver yang sudah terdapat dalam paketnya.
Catatan:
Untuk informasi terakhir tentang sound card
yang disupport dan feature-featurenya lihat file yang terdapat
pada source code kernel linux, biasanya ditempatkan dalam
direktori /usr/src/linux/Documentation/sound.
Bila sound sangat penting bagi kita terutama sebagai teman setia yang menemani ketika kita melakukan pekerjaan, ngoprek komputer, seting/konfigurasi komputer, dan berbagai aktivitas di dalam komputer, maka seharusnya kita dapat mensetup dan mengkonfigurasi sound device baik driver sound card, dan file konfigurasi yang lain atau jika anda memang sudah ahli dan jago membuat device driver, nggak ada salahnya kalau membuat device driver untuk anda sendiri syukur-syukur bisa berguna, dimanfaatkan orang lain dengan bentuk open source dan free tentunya. Saya berharap semoga artikel ini berguna dan terakhir saya hanya manusia yang selalu punya kesalahan maka dari itu saya siap menerima berbagai macam kritik, saran, dan laen-laen (konsumsi..hi..hi..;P).