Watermarking Pada Audio Berformat WAV dengan Teknik Time Base Modulation
LAPORAN TUGAS AKHIR
Disusun sebagai syarat kelulusan tingkat sarjana
oleh: Bistok D.L / 13500026
PROGRAM STUDI INFORMATIKA SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2007
LEMBAR PENGESAHAN
Program Studi Sarjana Informatika
Watermarking Pada Audio Berformat WAV dengan Teknik Time Base Modulation
Tugas Akhir Program Studi Sarjana Informatika ITB
Oleh: Bistok D.L / 13500026
Telah disetujui dan disahkan sebagai laporan tugas akhir di Bandung, pada tanggal
Juni 2007
Pembimbing
Ir. Rinaldi Munir M.T NIP.132084796 i
ABSTRAKSI
Watermarking adalah suatu cara untuk menyembunyikan informasi pada suatu konten digital. Informasi yang disimpan biasanya menandakan kepemilikan dari konten tersebut dari pengguna awam. Teknik ini biasanya dipakai untuk konten digital gambar atau suara. Time Base Modulation adalah teknik watermarking untuk konten digital bertipe audio. Informasi disisipkan dalam representasi pemanjangan atau pemendekan dari segmen-segmen suara. Pemanjangan dan pemendekan tersebut dapat dilakukan dengan berbagai macam teknik. Salah satunya adalah Phase Vocoder. Teknik time base modulation bekerja dalam domain waktu sehingga secara teori tidak menimbulkan derau, distorsi spektrum dan tahan terhadap teknik kompresi dan proses pengubahan sinyal. Pada tugas akhir ini dikembangkan perangkat lunak watermarking pada berkas audio dengan menggunakan teknik time base modulation, dan tipe berkas audio yang dipilih adalah WAV. WAV dipilih karena WAV adalah berkas audio tak terkompresi yang paling umum dijumpai dan yang biasa dikenakan operasi pengubahan sinyal. Perangkat lunak dibangun untuk menguji efek penyisipan menggunakan metode time base modulation pada berkas audio WAV, dan mengetahui ketahanan teknik time base modulation dalam menghadapi proses pengolahan sinyal lebih lanjut. Kakas yang digunakan dalam pengembangan tugas akhir ini adalah Microsoft .Net 2003, bahasa pemrograman yang digunakan adalah campuran C dan C++. Kakas dipilih karena dapat berjalan cukup cepat dalam lingkungan pengembangan, sedangkan bahasa pemrograman dipilih dengan alasan keselarasan dengan modul library yang dipakai. Secara umum perangkat lunak yang dibangun dapat menyisipkan tanda air atau tanda air dengan baik dan dapat pula mengambil kembali tanda air tersebut, walaupun belum tentu sama dengan tanda air yang disisipkan. Berkas audio hasil watermarking dengan teknik time base modulation tidak tahan terhadap pengolahan sinyal lebih lanjut, seperti pemberian derau, pencuplikan ulang dan pemotongan berkas pada bagian awal. Tetapi hasilnya dinilai cukup tahan terhadap perubahan format.
Kata kunci: time base modulation, WAV, tanda air, phase vocoder, audio digital.
ii
KATA PENGANTAR
Syukur kepada Tuhan karena dengan kekuatan dan perlindungan yang Ia berikan maka penulis dapat menyelesaikan tugas akhir ini. Dalam proses pengerjaan tugas akhir ini, penulis mendapat dukungan dari banyak pihak, baik secara materi maupun spiritual. Penulis terutama ingin mengucapkan terima kasih kepada: 1. Kedua orang tua penulis serta kedua kakak penulis, Mas Hemiel dan Mbak Ankiet, atas dukungannya semangat, materi dan doanya, selama menjalani masa kuliah di IF ITB, terlebih saat pengerjaan tugas akhir ini. 2. Bapak Ir. Rinaldi Munir M.T., atas bimbingan, insipirasi dan kesabarannya menangani penulis saat pengerjaan tugas akhir ini. 3. Bapak Ir. Dwi Hendratmo W., M.Sc., P.hd., yang telah menjadi penguji pada presentasi proposal. Bapak Dr. Oerip S. Santoso, M.Sc., sebagai penguji pada seminar. Ibu Drs. Harlili, M.Sc., sebagai penguji pada prasidang dan sidang tugas akhir ini. Serta Ibu Masayu Leyla Khodra, S.T., sebagai penguji pada sidang tugas akhir ini. 4. Bapak Kridanto Surendro sebagi dosen wali penulis. 5. Pak Rasidi dan Pak Ade untuk bantuan dan dukungannya terutama dalam penyelesaian tugas akhir ini. 6. Rekan-rekan IF angkatan 2000, angkatan 2001 dan 2002 terutama kepada Agung, Fredy Carvis, Adit, Hendra Jaya dan Johson yang telah menjadi teman-teman penulis saat penulis mengulang kuliah. Serta Dharmawan, Chandra dan Diko teman-teman penulis di Cisitu Lama 10/160 B. 7. Rekan-rekan Geologi Unpad angkatan 1996, terutama Cipi, Sunu, Uki, Prop, Arief dan Adoel untuk semua obrolan ringan, hangat, berat, humor dan sindiran-sindiran, baik implisit maupun eksplisit, yang memacu penulis untuk segera menyelesaikan perkuliahan penulis. 8. Anto, rekan Geologi Unpad 1998 terutama untuk bantuannya mencarikan referensi dan pustaka dalam proses pengerjaan tugas akhir ini.. 9. Teman-teman dan rekan sepelayanan di GKI Maulana Yusuf: Kelik, Andi, Daniel, Ari, Caesar, Ruri, Ui, Icin, Deny, Icon, Bob, Lulu, Idjul, Endang, Basar, Kiki, Mas Rudi untuk dukungan dan doanya. 10. Bang Tobing, Harry dan Edo, keluarga PA penulis, untuk dukungan dan doanya. iii
11. Bang Dennis dan Kak Dina, untuk motivasi dan acara makan-makannya; Bang Jeff untuk motivasi, dorongan, pinjaman laptop, kesempatan bekerja yang diberikan serta kesabarannya menunggu kelulusan penulis. 12. Mita, untuk dorongan, dukungan yang terus-menerus serta doanya. 13. Tulang Agus dan keluarga, untuk tempat tinggal dan dorongan serta doanya. Serta pihak-pihak lain yang namanya tidak dapat penulis sebutkan satu-persatu. Sekali lagi penulis mengucapkan terima kasih sebesar-besarnya.
Bandung, 20 Juni 2007
Penulis
iv
DAFTAR ISI
LEMBAR PENGESAHAN ..................................................................................................................i ABSTRAKSI .......................................................................................................................................ii KATA PENGANTAR .......................................................................................................................iii DAFTAR ISI .......................................................................................................................................v DAFTAR GAMBAR .........................................................................................................................ix DAFTAR TABEL ...............................................................................................................................x BAB I. PENDAHULUAN ................................................................................................................I-1 I.1 Latar Belakang .......................................................................................................................I-1 I.2 Rumusan Masalah ..................................................................................................................I-2 I.3 Tujuan ....................................................................................................................................I-2 I.4 Batasan Masalah ....................................................................................................................I-2 I.5 Metodologi .............................................................................................................................I-2 I.6 Sistematika Pembahasan ........................................................................................................I-3 BAB II. DASAR TEORI .................................................................................................................II-1 II.1 Digital Watermarking .........................................................................................................II-1 II.1.1 Sejarah Watermarking .................................................................................................II-1 II.1.2 Penyisipan Tanda Air ..................................................................................................II-1 II.1.3 Ekstraksi Tanda Air .....................................................................................................II-2 II.1.4 Tipe Digital Watermarking ..........................................................................................II-2 II.2 Audio Watermarking ...........................................................................................................II-3 II.2.1 Kebutuhan Sistem Audio Watermarking .....................................................................II-4 II.2.2 Teknik Audio Watermarking Saat Ini ..........................................................................II-4 II.3 Time Base Modulation ........................................................................................................II-4 II.3.1 Proses Penyisipan Tanda Air .......................................................................................II-5 II.3.2 Proses Ekstraksi Tanda Air .........................................................................................II-5 II.4 Phase Vocoder ....................................................................................................................II-6 II.4.1 Analisis ........................................................................................................................II-6 II.4.2 Sintesis (atau Resintesis) .............................................................................................II-7 II.5 Suara Digital ........................................................................................................................II-8 II.5.1 Prinsip Pengubahan Sinyal Analog ke Digital ............................................................II-9 v
II.5.2 Prinsip Pengubahan Sinyal Digital ke Analog ............................................................II-9 II.6 Format WAV .....................................................................................................................II-10 II.6.1 Format Data ..............................................................................................................II-10 II.6.2 Struktur File ...............................................................................................................II-10 II.7 Short-time Fourier Transform ..........................................................................................II-11 II.7.1 Definisi ......................................................................................................................II-11 II.7.2 Fast Fourier Transform .............................................................................................II-12 II.8 Peak Signal-to-Noise Ratio (PSNR) .................................................................................II-12 BAB III. ANALISIS ......................................................................................................................III-1 III.1 Proses Penyisipan Tanda Air ............................................................................................III-1 III.1.1 Pvoc-ex .....................................................................................................................III-1 III.1.2 Langkah-langkah Proses Penyisipan Tanda Air .......................................................III-2 III.2 Proses Ekstraksi Tanda Air ..............................................................................................III-2 III.2.1 Langkah-langkah Ekstraksi Tanda Air .....................................................................III-3 III.3 Contoh Proses Penyisipan dan Ekstrasi Tanda Air ..........................................................III-3 BAB IV. ANALISIS DAN PERANCANGAN PERANGKAT LUNAK .....................................IV-1 IV.1 Analisis .............................................................................................................................IV-1 IV.1.1 Analisis Kebutuhan ..................................................................................................IV-1 IV.1.2 Tujuan Pengembangan .............................................................................................IV-1 IV.1.3 Batasan Rancangan Sistem .......................................................................................IV-2 IV.1.4 Aliran Informasi .......................................................................................................IV-2 IV.1.4.1 Contex Diagram ...............................................................................................IV-2 IV.1.4.2 DFD Level 1 .....................................................................................................IV-2 IV.1.4.3 DFD Level 2 Proses Encoding .........................................................................IV-4 IV.1.4.4 DFD Level 2 Proses Decoding .........................................................................IV-7 IV.1.4.5 DFD Level 3 Proses Membandingkan Antarsegmen .......................................IV-9 IV.2 Perancangan ...................................................................................................................IV-11 IV.2.1 Perancangan Struktur Data .....................................................................................IV-11 IV.2.2 Batasan Perancangan ..............................................................................................IV-12 IV.2.3 Dekomposisi Modul ...............................................................................................IV-13 IV.2.3.1 Modul Phase Vocoder ....................................................................................IV-13 IV.2.3.2 Modul Riffwav ...............................................................................................IV-13 IV.2.3.3 Modul Encoding dan Decoding ......................................................................IV-13 BAB V. IMPLEMENTASI .............................................................................................................V-1 vi
V.1 Lingkungan Implementasi ..................................................................................................V-1 V.1.1 Perangkat Keras Dalam Pengembangan .....................................................................V-1 V.1.2 Perangkat Lunak Dalam Pengembangan ....................................................................V-1 V.2 Implementasi Struktur Data ................................................................................................V-1 V.3 Implementasi Modul ...........................................................................................................V-3 BAB VI. PENGUJIAN DAN ANALISIS HASIL UJI ..................................................................VI-1 VI.1 Lingkungan Pengujian .....................................................................................................VI-1 VI.1.1 Perangkat Keras Dalam Pengujian ...........................................................................VI-1 VI.1.2 Perangkat Lunak Dalam Pengujian ..........................................................................VI-1 VI.2 Tujuan Pengujian .............................................................................................................VI-1 VI.3 Skenario Pengujian ..........................................................................................................VI-2 VI.3.1 Skenario Pengujian Kebenaran Perangkat Lunak ....................................................VI-2 VI.3.2 Skenario Pengujian Kinerja Perangkat Lunak ..........................................................VI-3 VI.3.3 Skenario Pengujian Ketahanan Perangkat lunak ......................................................VI-3 VI.4 Pelaksanaan Pengujian .....................................................................................................VI-3 VI.4.1 Pelaksanaan Pengujian Kebenaran Perangkat Lunak ...............................................VI-3 VI.4.2 Pelaksanaan Pengujian Kinerja Perangkat Lunak ....................................................VI-4 VI.4.3 Pengujian Ketahanan Perangkat Lunak ....................................................................VI-4 VI.4.3.1 Pencuplikan ulang .............................................................................................VI-4 VI.4.3.2 Pemberian Derau Pada Berkas Bertanda Air ....................................................VI-4 VI.4.3.3 Pengubahan Format Pada Berkas Bertanda Air ...............................................VI-4 VI.5 Hasil Pengujian ................................................................................................................VI-5 VI.5.1 Hasil Pengujian Kebenaran Perangkat Lunak ..........................................................VI-5 VI.5.2 Hasil Pengujian Kinerja Perangkat Lunak ...............................................................VI-5 VI.5.3 Hasil Pengujian Ketahanan Perangkat Lunak ..........................................................VI-7 VI.5.3.1 Pencuplikan Ulang ............................................................................................VI-7 VI.5.3.2 Pemberian Derau Pada Berkas Bertanda Air ....................................................VI-8 VI.5.3.3 Pengubahan Format Pada Berkas Tanda Air ..................................................VI-10 VI.6 Analisis Hasil uji ............................................................................................................VI-11 VI.6.1 Analisis Hasil Uji Kebenaran Perangkat Lunak .....................................................VI-11 VI.6.2 Analisis Hasil Uji Kinerja Perangkat Lunak ..........................................................VI-11 VI.6.2.1 Proses Decoding yang Dilakukan ...................................................................VI-11 VI.6.2.2 Analisis Proses Decoding ...............................................................................VI-12 VI.6.3 Analisis Hasil Uji Ketahanan Perangkat Lunak .....................................................VI-12 vii
VI.7 Analisis Umum Hasil Uji ...............................................................................................VI-13 BAB VII. PENUTUP ...................................................................................................................VII-1 VII.1 Kesimpulan ....................................................................................................................VII-1 VII.2 Saran ..............................................................................................................................VII-1 DAFTAR REFERENSI ......................................................................................................................xi DAFTAR PUSTAKA .......................................................................................................................xii LAMPIRAN A. FORMAT DATA BERKAS WAV.......................................................................A-1 LAMPIRAN B. FAST FOURIER TRANSFORM.............................................................................B-1 LAMPIRAN C. DATA HASIL DECODING..................................................................................C-1
viii
DAFTAR GAMBAR
Gambar II-1: Penyisipan tanda air pada data digital .......................................................................II-2 Gambar II-2: Ekstraksi tanda air dari data digital ...........................................................................II-2 Gambar II-3: Cara kerja penyisipan tanda air pada time base modulation .....................................II-5 Gambar II-4: Skema dasar cara kerja phase vocoder ......................................................................II-6 Gambar II-5: Skema tahap analisis ..................................................................................................II-7 Gambar II-6: Skema tahap sintesis ..................................................................................................II-7 Gambar II-7: Sinyal Analog (a), Sinyal Diskrit (b), Sinyal Digital (c) ...........................................II-8 Gambar II-8: Proses Analog ke Digital ...........................................................................................II-9 Gambar II-9: Proses Digital ke Analog .........................................................................................II-10 Gambar II-10: Skema dasar struktur format WAV .......................................................................II-11 Gambar IV-1: Context Diagram TMBWav ...................................................................................IV-2 Gambar IV-2: DFD Level 1 ...........................................................................................................IV-3 Gambar IV-3: DFD Level 2 Proses Encoding ...............................................................................IV-4 Gambar IV-4: DFD Level 2 Proses Decoding ...............................................................................IV-7 Gambar IV-5: DFD Level 3 Proses membandingkan segmen .....................................................IV-11
ix
DAFTAR TABEL
Tabel III-1: Parameter Pvoc-ex ......................................................................................................III-2 Tabel III-2: Komponen Spektral ....................................................................................................III-4 Tabel IV-1: Tabel Proses DFD Level 1 .........................................................................................IV-3 Tabel IV-2: Proses DFD Level 2 Proses Encoding ......................................................................IV-4 Tabel IV-3: Proses DFD Level 2 Proses Decoding ......................................................................IV-8 Tabel IV-4: Proses DFD Level 3 Proses membandingkan segmen ...............................................IV-9 Tabel V-1: Implementasi modul ....................................................................................................V-4 Tabel VI-1: Daftar berkas audio ..................................................................................................VI-2 Tabel VI-2: Berkas tanda air yang dipakai ...................................................................................VI-3 Tabel VI-3: Parameter uji panjang window fft .............................................................................VI-4 Tabel VI-4: Hasil pengujian kebenaran perangkat lunak ..............................................................VI-5 Tabel VI-5: Hasil uji kinerja perangkat lunak ...............................................................................VI-6 Tabel VI-6: Hasil pengujian pencuplikan ulang ...........................................................................VI-7 Tabel VI-7: Hasil pengujian pemberian derau ..............................................................................VI-9 Tabel VI-8: Hasil uji pengubahan format ..................................................................................VI-10 Tabel VI-9: Data dari proses decoding 3.1.2 dan 3.2.2 ...............................................................VI-12
x