07074_10band_equalizer

Download 07074_10band_equalizer

If you can't read please download the document

Upload: api-3808344

Post on 13-Jun-2015

120 views

Category:

Documents


11 download

TRANSCRIPT

National Conference on Computer Science & Information Technology VII

Pembuatan Ekualiser 10-Band Stereo Digital dengan Algoritma Penapis Lolos-pita Tanggap Impuls Tak-HinggaAgfianto Eko Putra1 dan Triasmono2 Program Studi Elektronika & Instrumentasi, Fakultas MIPA Universitas Gadjah Mada Yogyakarta email: [email protected] 2 PT. Gamatechno Indonesia, Jl. Cik Ditiro 34, Terban Yogyakarta email: [email protected]

AbstrakTelah dibuat sebuah aplikasi ekualiser menggunakan algoritma Penapis Lolos-pita Tanggap Impuls Tak-hingga (IIR Infinite Impulse Response). Dengan ekualiser tersebut dapat diubah penguatan pada tingkat frekuensi tertentu, sehingga dapat ditonjolkan suara bass, trebel maupun vokal dari suatu sinyal audio. Salah satu teknik dasar yang merupakan komponen utama dalam pembuatan sebuah ekualiser adalah penapisan. Teknik penapisan digunakan untuk meloloskan beberapa sinyal tertentu dan memblokade lainnya. Penapis Lolos-pita Tanggap Impuls Tak-hingga adalah salah satu teknik penapisan yang menggunakan metode rekursif (menggunakan keluaran (output) sebelumnya sebagai masukan (input) saat ini dan digunakan untuk mendapatkan keluaran (output) saat ini).

keras. Namun kini dengan kemajuan teknik pemrograman dan perkembangan bahasa pemrograman dapat diprogram sebuah ekualiser yang tentu lebih murah dengan kualitas yang tak kalah dari ekualiser secara perangkat keras.

II. PEMROSESAN SINYAL DIGITALDefinisi Pemrosesan Sinyal digital menurut Bores [1] adalah: Perubahan atau analisa informasi yang dihitung sebagai sederetan angka diskrit . Pemrosesan Sinyal Digital telah dimanfaatkan untuk menyelesaikan permasalahan dalam berbagai bidang aplikasi seperti: komunikasi, pencitraan medis, radar dan sonar, telepon, TV digital, faks, multimedia (reproduksi musik dengan presisi tinggi), kontrol proses, pencarian minyak dan lain sebagainya. Keistimewaan dari Pemrosesan Sinyal Digital (PSD) diantaranya adalah sebagai berikut [1]: 1. Versality (Serbaguna) Sistem digital dapat dengan mudah diprogram-ulang untuk berbagai macam aplikasi; Sistem digital dapat dihubungkan dengan perangkat keras yang berbeda; 2. Repeatability and tenacity (pengulangan dan ketahanan) Sistem digital dapat dengan mudah diproduksi secara massal; Sistem digital tidak tergantung pada batas ketelitian komponen; Reaksi dalam sistem digital tidak terpengaruh oleh suhu; 3. Simplicity (Kesederhanaan) Beberapa hal dapat dikerjakan lebih mudah secara digital daripada secara analog

Kata Kunci: Ekualiser, Penapis Lolos-pita Tanggap Impuls Takhingga

I. PENDAHULUANEkualiser merupakan salah satu komponen efek suara (sound effect) yang biasanya terdapat dalam sebuah pemutar audio. Hampir semua pemutar audio dilengkapi dengan komponen ini. Keberadaan komponen ini menjadi penting mengingat fungsinya yang dapat mengatur penguatan masing-masing pita frekuensi secara terpisah. Ekualiser digunakan untuk melakukan seleksi terhadap suatu frekuensi tertentu dan mengubah kuat bunyi (gain) pada tingkat frekuensi tersebut. Dulunya komponen ekualiser ini terdapat dalam pemutar audio dan dibuat secara perangkat

1

National Conference on Computer Science & Information Technology VII

III. PENAPIS DIGITALPenapis atau filter adalah pengkondisian terhadap suatu sinyal. Penapis digital mempunyai dua tujuan umum yaitu[4] : 1. Pemisahaan sinyal yang telah digabungkan. 2. Restorasi sinyal yang telah terdistorsi dalam berbagai bentuk. Pemisahaan sinyal digunakan ketika sinyal telah terkontaminasi dengan gangguan (interference), derau (noise) atau sinyal lainnya. Restorasi sinyal digunakan pada saat sinyal mengalami distorsi karena suatu sebab. Terdapat dua macam cara dalam melakukan penapisan secara digital yaitu : 1. Finite Impulse Response (FIR) filter atau Penapis Tanggap Impuls Berhingga adalah penapis yang mempunyai tanggap impuls dengan jumlah nilai tidak nol berhingga (Smith, 1997). 2. Infinite Impulse Response (IIR) filter atau Penapis Tanggap Impuls Tak-hingga adalah adalah penapis yang mempunyai tanggap impuls dengan jumlah nilai tidak nol tak-hingga [4]. Ada banyak tipe penapis, tetapi yang biasa digunakan adalah: lolos-rendah (lowpass), lolos-tinggi (highpass), lolos-pita (bandpass), bandstop. Untuk memperoleh sinyal keluaran yang mengandung frekuensi-frekuensi yang telah tertapis dengan metode Penapis Lolos-pita tanggap Impuls Tak-hingga dapat digunakan persamaan berikut [2] :

=(1 + 2

= (1 2

) cos( )/2

0

)

(3) (4)

Keterangan : F0 : Q

2 f0 dengan f0 adalah frekuensi tengah, fs adalah fs

laju cuplikan (sample rate) yang nilainya 44,1 kHz. : Faktor Kualitas, yang merupakan indeks ketajaman lengkungan tanggap amplitudo dari frekuensi tengah, penyempitan lebar pita mengakibatkan naiknya nilai Q [3].

IV. PEMBUATAN EKUALISER 10-BANDUntuk membuat ekualiser 10-band stereo digital digunakan Bahasa Pemrograman Visual Borland Delphi dan 10 buah Penapis Lolos-pita Digital Tanggap Impuls Takhingga yang dipasang secara paralel pada sinyal masukan (yang berupa kanal frekuensi audio) untuk mendapatkan keluaran berupa sepuluh pita frekuensi yang telah tertapis. Pada masing-masing pita (band) frekuensi ekualiser terdapat dua macam proses yang dilalui oleh sinyal masukan yaitu : 1. Penapisan, hal ini dilakukan untuk meloloskan frekuensi yang ditangani oleh pita (band) tersebut dan menapis frekuensi diatas dan dibawahnya. 2. Penguatan atau pelemahan yang besar kecilnya ditentukan pengguna yang menginginkan adanya efek audio pada berkas audio yang dimainkan oleh aplikasi. Pengolahan kanal audio dalam ekualiser, sebagaimana ditunjukkan pada gambar 1, adalah sebagai berikut: Sebuah kanal frekuensi dilewatkan kedalam fungsi lolos-pita yang membagi berdasar kanal frekuensi menjadi sepuluh pita frekuensi (F1 sampai F10). Kemudian masing masing kanal tersebut dikalikan dengan suatu penguatan (g1 sampai g10). Setelah itu dilakukan penggabungan kembali kesepuluh kanal frekuensi tersebut menjadi sebuah kanal tunggal. Kanal frekuensi tersebut kemudian dikalikan dengan penguatan total yang merupakan keluaran akhir dari ekualiser. Dalam hal ini, berkas audio di-stream sehingga menghasilkan sebuah kanal frekuensi. Kanal frekuensi tersebut kemudian dilewatkan pada sebuah prosedur Pemrosesan Sinyal Digital untuk mengendalikan perubahan yang akan dilakukan dan memisahkan menjadi kanal kiri dan kanal kanan. Masing-masing kanal tersebut lalu dilewatkan kedalam sebuah prosedur penapis lolos-pita untuk memisahkan kanal-kanal frekuensi kedalam pita-pita frekuensi yang telah ditentukan dan melakukan perkalian antara sinyal masukan dengan penguatan. Untuk lebih

y (n) = 2 {Keterangan: ) , *, + x(n), y(n)

[ x ( n)

x(n 2) ] + y (n 1)

y (n 2)}(1)

: adalah koefisien penapis : masukan dan keluaran sinyal saat ini (pada saat t) x(n-1), y(n-1) : masukan dan keluaran sinyal pada saat t1. x(n-2), y(n-2) : masukan dan keluaran sinyal pada saat t2. Koefisien B , C dan D dalam persamaan tersebut digunakan untuk mengatur tanggap penapis (gain atau penguat) dan fase sebagai fungsi dari frekuensi. Nilai dari masing-masing koefisien penapis tersebut ditentukan menggunakan persamaan [2]:

=

1 2

( ) 1 + tan ( )1 tan2Q0 0

(2)

2Q

2

National Conference on Computer Science & Information Technology VII

jelasnya pada gambar 2 ditunjukkan diagram alir prosedur EQ10BandsDSPProc()untuk menangani sinyal stereo.

250 500 1000 2000 4000 8000 16000

0,006280627740 0,012405427900 0,024210180400 0,046184109500 0,461841095000 0,119946400000 0,159600000000

0,4874387450 0,4751891440 0,4515796390 0,4076317810 0,3308844630 0,2601072000 0,1800994000

0,986812425 0,972715729 0,941937749 0,871031797 0,699565851 0,317608700 -0,443517200

Gambar 1. Pengolah Kanal Audio dalam sebuah ekualiser

Fungsi penapis lolos-pita (bandpass) digunakan untuk melakukan penapisan terhadap kesepuluh kanal frekuensi yang dimasukkan dalam bentuk kanal tunggal yakni kanal kanan atau kanal kiri. Diagram alir fungsi bandpass untuk sebuah kanal frekuensi ditunjukkan pada gambar 3. Koefisien penapis digital () , * dan +) untuk kesepuluh kanal frekuensi dapat diperoleh dengan menggunakan persamaan (2), (3) dan (4). 00 dapat dihitung dengan mengambil nilai frekuensi tengah (f0) untuk masing-masing kanal yaitu: antara 31 Hz sampai dengan 16 kHz, sedangkan faktor kualitas (quality factor), Q, ditentukan 1,4. Selain dengan menghitung, koefisien tapis juga dapat diperoleh langsung dengan mengacu tabel 1. Nilai dari tabel tersebut digunakan sebagai sebuah konstanta dalam program sehingga mengurangi kerja prosesor dalam melakukan penghitungan. Di dalam program, untuk menyimpan koefisien tapis pada tabel 1 tersebut digunakan sebuah variabel yaitu FilterCoeff yang berupa larik dari nol sampai sembilan yang bertipe KoefisienFilter. Tabel 1. Koefisien IIR bandpass filter[2]Frekuensi tengah 31 62 125 Koefisien Filter IIR 3 0,000787462865 0,001572449170 0,003160161720 4 0,4984250740 0,4968551020 0,4936796770 5 0,998415336 0,996816209 0,993522095

Untuk pemrograman (Delphi), digunakan pustaka audio bass.dll yang mengandung fungsi-fungsi dan prosedurprosedur yang digunakan untuk memanipulasi sinyal audio. Beberapa modul dari bass.dll yang digunakan dalam program adalah sebagai berikut: Funtion BASS_StreamCreateFile(mem: BOOL; f: Pointer; offset, length, flags: DWORD): HSTREAM; function BASS_ChannelSetDSP(handle: DWORD; proc: DSPPROC; user: DWORD): HDSP; DSPPROC = procedure(handle: HDSP; channel: DWORD; buffer: Pointer; length: DWORD; user: DWORD); stdcall; function BASS_MusicLoad(mem: BOOL; f: Pointer; offset, length, flags: DWORD): HMUSIC;

V. KESIMPULANHasil program berupa pemutar audio digital (ditunjukkan pada Gambar 4) yang dilengkapi dengan ekualiser 10 band (kanal frekuensi, yang ditunjukkan pada Gambar 5), meliput pita frekuensi 31 Hz, 62 Hz, 125 Hz, 250 Hz, 500 Hz, 1 kHz, 2 kHz, 4 kHz, 8 kHz dan 16 kHz. Tipe berkas yang dapat dimainkan adalah semua tipe berkas yang dapat dimainkan oleh bass.dll yaitu : MP3, MP2, MP1, WAV, MO3, IT, XM, S3M, MTM, MOD dan UMX. Program mempunyai playlist untuk menyimpan daftar judul lagu yang bisa ditambah atau dikurangi, selain itu program dapat digunakan untuk menyimpan nilai-nilai pada pita-pita frekuensi dalam ekualiser.

3

National Conference on Computer Science & Information Technology VII

Gambar 4. Pemutar audio digital yang dilengkapi playlist.

Gambar 5. Ekualiser 10-band stereo digital

DAFTAR PUSTAKA[1] Bores, 2003, Introduction Digital Signal Processing, Bores Signal Processing. Website http://www.bores.com (Didownload pada tanggal 2 April 2003). [2] Motorola, 1988, Digital Stereo 10-Bands Graphic Equalizer Using The DSP5001 (APR2/D), Motorola Inc. Website http://www.soundarthot.com/files/pdf/dsp/appnotes/APR2-d.pdf. (Didownload pada tanggal 12 Februari 2003). [3] Putra, A., E., 2002, Penapis Aktif Elektronika: Teori dan Praktek, Gava Media, Yogyakarta. Website http://agfi.staff.ugm.ac.id/index.php?page=btapis [4] Smith, S., W., 1997, The Scientist and Engineer's Guide to Digital Signal Processing, California.

4

National Conference on Computer Science & Information Technology VII

Mulai

Baca sinyal masukan x(n) Panjang length x(n)i 0

Inbuffefek[i].left Inbuffefek[i].right i Tidak

Inbuffefek[i+1].left Inbuffefek[i+1].right i+1

i= 3 Ya Inbuffefek[i].left Inbuffefek[i].right WORDRendah(x(n)) WORDTinggi(x(n))

x(n)

y(n)

Sampelterfilter Bandpassfilter(Inbuffefek[3], Inbuffefek[1], Outbuffefek[3], Outbuffefek[2]) Panjang Panjang - 4i 0

Outbuffefek[i].left Outbuffefek[i].right i Tidak

Outbuffefek[i+1].left Outbuffefek[i+1].right i+1

i= 3 Ya Keluaran, y(n) = MakeLong(Sampelterfilter.left , Sampelterfilter.right) Ya panjang > 0 Tidak Selesai

Gambar 2. Diagram alir prosedur EQ10BandsDSPProc()

5

National Conference on Computer Science & Information Technology VII

Mulai Baca sinyal masukan, x(n) i 0

B

Hitung y(n) B + G(i) * y(n) i i +1

tidak

i = 10 ya

B

Volume * B

Keluaran, y(n) B

SelesaiGambar 3. Diagram alir fungsi penapis lolos-pita.

6