BAB III. ANALISIS
Bab ini menjelaskan tentang analisis dari sistem yang akan dibangun, tentang bagaimana teknik Time Base Modulation digunakan dalam praktek serta metode yang dipakai untuk melakukan pemanjangan dan pemendekan segmen waktu.
III.1
Proses Penyisipan Tanda Air
Seperti dijelaskan di sub bab II.3, proses penyisipan dalam teknik time base modulation (Gambar II-3) dilakukan dengan cara perubahan skala waktu terhadap segmen sinyal. Perubahan skala waktu ini dapat memakai teknik apapun yang dapat merubah durasi sinyal audio tanpa merubah pitch-nya. Teknik perubahan skala waktu umumnya didasarkan pada Short-time Fourier transform, tetapi metode lain seperti phase vocoder, Time Domain Harmonic Scaling, and Pitch-Synchronous Overlap Add (TD-PSOLA) dapat juga digunakan. Teknik perubahan skala waktu yang digunakan dalam tugas akhir ini adalah phase vocoder. Metode ini dijelaskan lebih lanjut pada sub bab II.8. Dalam tugas akhir ini phase vocoder yang dipakai tidak dikembangkan sendiri, tetapi memakai implementasi phase vocoder yang sudah ada. Implementasi phase vocoder yang dipakai dalam tugas akhir ini adalah pvoc-ex.
III.1.1
Pvoc-ex
Pvoc-ex adalah implementasi phase vocoder oleh Richard Dobson. Pvoc-ex dipilih karena berkas keluaran hasil pemanjangan atau pemendekkan waktu dari pvoc dinilai sebagai yang terbaik dibandingkan dengan phase vocoder lainnya. Penilaian baik atau tidaknya adalah kemiripan bunyi dari berkas asli sebelum pemanjangan atau pemendekan skala dengan berkas hasilnya. Kemiripan bunyi dinilai dengan cara mendengarkan dan membandingkan berkas hasil dan berkas asli. Dengan pvoc-ex, maka pemrosesan berkas stereo dapat dilakukan. Sehingga pengujian terhadap teknik penyisipan time base modulation dapat dilakukan juga pada berkas stereo, tidak hanya pada berkas mono seperti dilakukan dalam [FOO02]. Selain itu pvoc-ex juga dapat melakukan overlap window yang tidak dapat dilakukan dalam [FOO02]. Pvoc mempunyai bermacam-macam parameter sebagai masukkan untuk melakukan proses perubahan skala waktu terhadap berkas suara. Parameter-parameter yang ada dan penjelasan lebih lanjut dapat merujuk pada Tabel III-1. Parameter-parameter ini berpengaruh terutama pada saat inisiasi pvoc dan pada berkas keluaran hasil perubahan skala. III-1
III-2 Tabel III-1: Parameter Pvoc-ex Parameter Skala perubahan
Deskripsi menentukan besar perubahan terhadap fragmen waktu.
Mode
Menentukan mode dari phase vocoder
Tipe skala
Menentukan tipe perubahan skala
Window type
Menentukan tipe window yang akan dipakai. Tipe window
yang
disediakan
adalah
Von
Hann
(Hanning), Kaiser dan Hamming. Menentukan jumlah sampel per window, nilai
Fftlen
terkecil yang dapat dipakai adalah 64 Sample rate
Sampel rate dari berkas audio yang akan diproses
Overlap type
Menyatakan tipe atau banyaknya overlap antarwindow saat tahap analisis dan resintesis.
III.1.2
Langkah-langkah Proses Penyisipan Tanda Air
Langkah-langkah yang dilakukan dalam proses penyisipan tanda air dengan teknik Time Base Modulation adalah sebagai berikut: 1. Bagi sinyal menjadi N buah segmen, s [i ] , 0≤i ≤L−1 , dengan tiap segmen memiliki panjang yang sama yaitu sebesar L. 2. Terapkan phase vocoder pada tiap segmen tersebut, dengan besar skala perubahan waktunya tergantung dari bit tanda air yang akan disisipkan: ●
Pada tahap ini tiap segmen akan dilakukan tahap analisis dari teknik phase vocoder, yang melibatkan perhitungan STFT (dalam hal ini menggunakan FFT).
●
Setelah itu dilakukan tahap resintesis.
3. Tiap segmen yang sudah dimodifikasi s w [i] kemudian digabungkan kembali untuk membentuk sinyal yang telah menyimpan tanda air.
III.2
Proses Ekstraksi Tanda Air
Proses ekstraksi tanda air, atau decoding, yang dipakai dalam tugas akhir ini berbeda dengan yang diusulkan [FOO02]. Perbedaannya adalah tugas akhir ini berkas tanda air asli diikutkan sebagai masukan proses decoding, cara ini mempercepat proses decoding sehingga tidak perlu menganalisa seluruh segmen dari berkas audio tetapi hanya sejumlah segmen sesuai dengan banyaknya atau panjang karakter dari berkas tanda air asli. Perbedaan lainnya adalah tidak
III-3 digunakannya Dynamic Programming dalam mencari tanda air. Serta tidak digunakannya tempo map untuk mencari tanda air yang disisipkan.
III.2.1
Langkah-langkah Ekstraksi Tanda Air
Langkah-langkah yang dilakukan dalam proses pengambilan kembali tanda air adalah sebagai berikut: 1. Bagi masing-masing sinyal menjadi N buah segmen, s [i] , 0≤i≤L−1 , dengan tiap segmen memiliki panjang yang sama yaitu sebesar L. Sinyal yang telah disisipkan adalah s w [i] dan sinyal asal adalah s [i].
2. Terapkan FFT pada tiap segmen, baik segmen asli s [i] maupun segmen termodifikasi s w [i].
3. Bandingkan jumlah magnitude komponen spektral dari segmen s w [i] dengan s [i] untuk mendapatkan bit-bit tanda air. 4. Gabungan bit-bit tanda air dari hasil pembandingan seluruh segmen akan menghasilkan bitbit tanda air awal.
III.3
Contoh Proses Penyisipan dan Ekstrasi Tanda Air
Diketahui sinyal suara S mempunyai panjang 1,5 detik. Bit-bit tanda air yang akan disisipkan adalah “011” Langkah-langkah penyisipannya adalah: 1. Sinyal S dibagi menjadi N buah segmen sama besar, dalam hal ini N= 3 dengan panjang masing 0,5 detik. 2. Terapkan phase vocoder pada setiap segmen, dengan perubahan skala tergantung bit tanda air yang akan dimasukkan, dalam hal ini:
segmen N=1 akan disisipkan bit “0”, sehingga dilakukan pemendekan waktu
segmen N=2 akan disisipkan bit “1”, sehingga dilakukan pemuluran waktu
segmen N=3 akan disisipkan bit “1”, sehingga dilakukan pemuluran waktu
3. Segmen-segmen yang telah dimodifikasi digabungkan kembali membentuk sinyal suara bertanda air S w .
III-4 Langkah-langkah ekstraksi adalah: 1. Sinyal S dan sinyal S w dibagi menjadi N buah segmen yang sama besar, dalam hal ini N=3 dengan panjang 0,5 detik. 2. Terapkan FFT pada tiap segmen baik segmen sinyal asli S [i ] maupun S w [i]. 3. Jumlahkan komponen spektral tiap segmen lalu bandingkan: Tabel III-2: Komponen Spektral
S[i] 1
2
3
Komponen Spektral Frekuensi Magnitude(dB) 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750
-93.297775 -98.485336 -98.278214 -98.585701 -99.240334 -99.176117 -99.031319 -10.202421 -12.293022 -16.613520 -20.824778 -20.505405 -18.434649 -18.836662 -6.099568 -19.327061 -24.705620 -28.513996 -29.706547 -26.761917 -27.712561
Sw[i] 1
2
3
Komponen Spektral Frekuensi Magnitude(dB) 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750 344.531250 689.062500 1033.593750 1378.125000 1722.656250 2067.187500 2411.718750
-63.436829 -67.411324 -70.787231 -73.960670 -78.466110 -76.848381 -76.395439 -10.616656 -12.421070 -16.700237 -21.474045 -20.852106 -18.659372 -19.154198 -6.432056 -19.157057 -24.910019 -28.315138 -29.783325 -27.688459 -28.783163
Komponen spektral untuk masing-masing segmen dapat dilihat pada Tabel III-2. Jumlah komponen spektral dalam satu segmen pada segment S [i] akan dibandingkan dengan jumlah komponen spektral segmen yang bersesuaian dari S w [i ]. Tabel III-2 tidak menampilkan seluruh komponen spektral dari tiap segmen, karena banyaknya sampel dalam proses decoding ditentukan 1024 maka akan ada 512 komponen spektral untuk tiap segmen. Hal ini menyebabkan tidak mungkin untuk menampilkan seluruh komponen spektral dari tiap segmen.
Jika jumlah magnitude semua komponen spektral dari segmen S [ i] lebih besar dari jumlah magnitude semua komponen spektral dari segmen S w [i] maka dapat disimpulkan S w [i] mengalami pemendekan waktu. Jika sebaliknya maka dapat disimpulkan S w [i] mengalami pemuluran waktu
III-5
Dari data pada Tabel III-2 dapat disimpulkan:
S w [1] mengalami pemendekan waktu
S w [2 ] mengalami pemuluran waktu
S w [3] mengalami pemuluran waktu
Hasilnya didapat bit tanda air untuk tiap S w [i ]:
S w [1] disisipi bit tanda air “0”
S w [2 ] disisipi bit tanda air “1”
S w [3] disisipi bit tanda air “1”
4. Gabungan bit-bit tanda air itu ialah: “011”.