• Tidak ada hasil yang ditemukan

Perbandingan Hasil Watermarking Pada Video Avi Dengan Mp4 Menggunakan Algoritma Echo Data Hiding

N/A
N/A
Protected

Academic year: 2017

Membagikan "Perbandingan Hasil Watermarking Pada Video Avi Dengan Mp4 Menggunakan Algoritma Echo Data Hiding"

Copied!
98
0
0

Teks penuh

(1)

LISTING PROGRAM

1. Menu Utama

Imports System.Data.OleDb Public Class frmMutama

Private Sub WatermarkingToolStripMenuItem_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _

WatermarkingToolStripMenuItem.Click frmMain.Show()

End Sub

Private Sub QuitToolStripMenuItem_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _ QuitToolStripMenuItem.Click

Close() End Sub

Private Sub frmMutama_Load(ByVal sender As _

System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Call KoneKsi()

End Sub

Private Sub AboutToolStripMenuItem_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _

AboutToolStripMenuItem.Click frmAbt.Show()

End Sub

Private Sub MSEDanPSNRToolStripMenuItem_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _

MSEDanPSNRToolStripMenuItem.Click frmHasil1.Show()

End Sub

Private Sub RRToolStripMenuItem_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _

RRToolStripMenuItem.Click frmHasil2.Show()

End Sub

Private Sub ToolStripMenuItem1_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) Handles _

ToolStripMenuItem1.Click

(2)

Dim DataSampel As Single Sub CariID()

folderResume = Application.StartupPath & "\RESUME_VIDEO\"

CMD = New OleDbCommand("Select * from [File] order by IDFile desc",

(3)

Private Sub lvwPlayList_DoubleClick(ByVal sender As Object, ByVal e As _ System.EventArgs)

Private Sub WMP_MediaChange(ByVal sender As Object, ByVal e As AxWMPLib._WMPOCXEvents_MediaChangeEvent) Handles WMP.MediaChange If WMP.currentMedia Is Nothing Then Exit Sub

Dim i As Integer, s As String

For i = 0 To WMP.currentPlaylist.count - 1

lvwPlayList.Items(i).ForeColor = IIf(WMP.currentMedia.isIdentical _ (WMP.currentPlaylist.Item(i)), Color.Red, Color.Black)

Private Sub WMP_PlayStateChange(ByVal sender As Object, _

ByVal e As AxWMPLib._WMPOCXEvents_PlayStateChangeEvent) Handles _ WMP.PlayStateChange

'utk mengatasi sedikit bug

If WMP.currentPlaylist.count > 0 Then

(4)

lvwPlayList.Items(0).SubItems(1).Text = WMP.currentPlaylist.Item(0)._

getItemInfo("Artist") End If

End Sub

Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As _ System.EventArgs) Handles MyBase.Load

WMP.settings.volume = GetSetting("PVBMP", "main", "vol", 100) ' WMP.uiMode = "none"

tabSideBar.Visible = GetSetting("PVBMP", "main", "sidebar", True) Me.TopMost = GetSetting("PVBMP", "main", "ontop", False)

WMP.settings.setMode("Loop", GetSetting("PVBMP", "main", "loop", False))

WMP.settings.setMode("Shuffle", GetSetting("PVBMP", "main", "shuffle", False))

Private Sub mnuRemove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuRemove.Click

For Each LI As ListViewItem In lvwPlayList.SelectedItems

WMP.currentPlaylist.removeItem(WMP.currentPlaylist.Item(LI.Index)) LI.Remove()

Next

WMP.Ctlcontrols.play() End Sub

Private Sub mnuPlayList_Opening(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles mnuPlayList.Opening

mnuRemove.Enabled = (lvwPlayList.SelectedItems.Count > 0) End Sub

(5)

Try

Private Sub cmdBrowseMP4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBrowseMP4.Click

Private Sub cmdKeluar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

(6)

Private Sub cmdProses_Click(ByVal sender As System.Object, ByVal e As

NmFileAvi1 = folderResume & "FileWM" & IDFile & ".avi" lblNmFileAvi2.Text = NmFileAvi1

Timer1.Enabled = True Dim encryptor

encryptor = Edh_AVI(txtKey.Text, txtLabel.Text) FileCopy(lblNmFileAvi1.Text, lblNmFileAvi2.Text) lblKdEks.Text = FileLen(lblNmFileAvi1.Text) CMD = New OleDbCommand("Insert into File (IDFile,

NmFile,NmFile1,eks,pr,strKey,strLabel,st,bitKey,bitLabel,MSE,PSNR,KdEks) values (" & IDFile & ",'" & NmFileAvi & "','" & NmFileAvi1 & "','AVI','W','" &

txtKey.Text & "','" & txtLabel.Text & "','1','" & Label2.Text & "','" & Label7.Text & "','" & lblMSE.Text & "','" & lblPSNR.Text & "','" & lblKdEks.Text & "')", Conn)

NmFileWM,KdEks,strKey) values (" & IDData & ",'" & NmFileAvi1 & "','" & lblKdEks.Text & "','" & txtKey.Text & "')", Conn)

RD = CMD.ExecuteReader()

Private Sub txtLabel_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtLabel.TextChanged lblBinLabel.Text = binLabel.convertASCIItoBIN cmdProses.Enabled = True

cmdProses1.Enabled = True End Sub

Private Sub cmdProses1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdProses1.Click

(7)

ProgressBar2.Value = 0 Call KonversiBIN() Call CariID()

NmFileMp41 = folderResume & "FileWM" & IDFile & ".mp4" lblNmFileMp42.Text = NmFileMp41

Timer1.Enabled = True Dim encryptor

encryptor = Edh_Mp4(txtKey.Text, txtLabel.Text) FileCopy(lblNmFileMp41.Text, lblNmFileMp42.Text) lblKdEks1.Text = FileLen(lblNmFileMp41.Text) CMD = New OleDbCommand("Insert into File (IDFile,

NmFile,NmFile1,eks,pr,strKey,strLabel,st,bitKey,bitLabel,MSE,PSNR,KdEks) values (" & IDFile & ",'" & NmFileMp4 & "','" & NmFileMp41 & "','MP4','W','" &

txtKey.Text & "','" & txtLabel.Text & "','1','" & Label2.Text & "','" & Label7.Text & "','" & lblMSE1.Text & "','" & lblPSNR1.Text & "','" & lblKdEks1.Text & "')", Conn)

NmFileWM,KdEks,strKey) values (" & IDData & ",'" & NmFileMp41 & "','" & lblKdEks1.Text & "','" & txtKey.Text & "')", Conn)

RD = CMD.ExecuteReader() RD.Close()

CMD.Dispose() End Sub

Private Sub cmdBatal1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBatal1.Click

Private Sub cmdKeluar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdKeluar.Click

Close() End Sub

(8)

ProgressBar1.Value = 0

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

(9)

Next Dim JumLabelEkstraksi As Integer Dim IDFIle As Integer

Dim RR As Single

Private Sub cmdSelesai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

Close() End Sub

Private Sub frmEkstraksi_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Private Sub cmdBatal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

Call Bersih() End Sub

(10)

With dlgOpenFile NmFile1='" & RTrim(NmFileAvi) & "' and Eks='" & eks & "'", Conn)

RD = CMD.ExecuteReader() Color.Black) 'warna merah utk yg sedang diputar

Next End With End Sub

Private Sub cmdSelesai_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs)

Close() End Sub Sub EksAvi()

(11)

Dim validcode02 As Long

decrypted = Decrypt(txtKey.Text, lblEkstraksi.Text) lblEkstraksi.Text = decrypted

CMD = New OleDbCommand("Update [File] SET RR=" & RR & ",strLabelEks='" & decrypted & "',st='*' where IDFile=" & IDFile & "", Conn)

RD = CMD.ExecuteReader()

Private Sub cmdLoad1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdLoad1.Click NmFile1='" & RTrim(NmFileMP4) & "' and Eks='" & eks & "'", Conn)

RD = CMD.ExecuteReader() If RD.Read = True Then

(12)

KdEksSisip = RD.Item("KdEks")

Private Sub cmdBatal_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBatal.Click

Call Bersih()

lblNmFileAvi1.Text = "" End Sub

Private Sub cmdBatal1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdBatal1.Click

Call Bersih()

lblNmFileMP41.Text = "" End Sub

Private Sub cmdEkstraksi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdEkstraksi.Click

Dim bolSave As Boolean

If lblNmFileAvi1.Text <> "" And txtKey.Text <> "" And txtKodeEks.Text <> "" Then

CMD = New OleDbCommand("Select * from [File] where NmFile1='" & NmFileAvi & "' and Eks='" & eks & "' and KdEks='" & txtKodeEks.Text & "' and strKey='" & txtKey.Text & "'", Conn)

(13)

MsgBox("Data ekstraksi belum lengkap...")

",strLabelEks='" & LabelSisip & "',st='*' where IDFile=" & IDFIle & "", Conn) RD = CMD.ExecuteReader()

Dim binLabelEkstraksiAVI As New ASCIItoBIN(lblEkstraksi.Text) LsBinEkstraksiAVI.Items.Add(binLabelEkstraksiAVI.convertASCIItoBIN) Dim binLabelPenyisipAVI As New ASCIItoBIN(lblPenyisip.Text)

LsBinPenyisipAVI.Items.Add(binLabelPenyisipAVI.convertASCIItoBIN) JumLabelEkstraksi = Len(binLabelEkstraksiAVI.convertASCIItoBIN) JumLabelSisip = Len(binLabelPenyisipAVI.convertASCIItoBIN)

If JumLabelSisip > 0 Then

Dim binLabelEkstraksiMP4 As New ASCIItoBIN(lblEkstraksi1.Text) LsBinEkstraksiMP4.Items.Add(binLabelEkstraksiMP4.convertASCIItoBIN) Dim binLabelPenyisipMP4 As New ASCIItoBIN(lblPenyisip1.Text)

(14)

Private Sub txtKodeEks_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKodeEks.TextChanged

cmdEkstraksi.Enabled = True End Sub

Private Sub cmdEkstraksi1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdEkstraksi1.Click

Dim bolSave As Boolean

If lblNmFileMP41.Text <> "" And txtKey1.Text <> "" And txtKodeEks1.Text <> "" Then

CMD = New OleDbCommand("Select * from [File] where NmFile1='" & NmFileMP4 & "' and Eks='" & eks & "' and KdEks='" & txtKodeEks1.Text & "' and strKey='" & txtKey1.Text & "'", Conn)

RD = CMD.ExecuteReader()

",strLabelEks='" & LabelSisip & "',st='*' where IDFile=" & IDFIle & "", Conn) RD = CMD.ExecuteReader()

RD.Close() CMD.Dispose() End If

End Sub

Private Sub txtKodeEks1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtKodeEks1.TextChanged

cmdEkstraksi1.Enabled = True End Sub

Private Sub cmdHistoris_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdHistoris.Click

frmHistoris.Show() End Sub

(15)

randoms(i) = GetSampel(1, PictureBox1.Width) ListBox1.Items.Add(randoms(i))

Dim binSampel As New ASCIItoBIN(randoms(i)) ListBox1.Items.Add(binSampel.convertASCIItoBIN) Next ListBox2.Items.Add(binSampel.convertASCIItoBIN) Next

End Sub

Private Sub cmdSelesai_Click_2(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdSelesai.Click

Public Sub New(ByVal ASCII_Input As String) ASCIIstr = ASCII_Input

End Sub

(16)

End While

(17)

Public strProses As String

Public myProcess As New Process() Public maxSampel As Single = 255 Public maxSampel1 As Single = 326 Public Sub KoneKsi()

strConn = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\IO.mdb")

Public Sub EchoFile(ByVal SourceFile As String, ByVal DestFile As String) 'On Error GoTo salah

DestFile = Application.StartupPath & "\Cover_Video\" Filenr = FreeFile()

(18)

#Open SourceFile For Binary As #Filenr

Public Function Edh_AVI(ByVal Key1 As String, ByVal txtcode As String) Dim i, j, k As Integer, thekey

(19)

If k > maxSampel1 Then k = k - maxSampel1

Public Function Encrypt(ByVal Key1 As String, ByVal txtcode As String) Dim i, j, k As Integer, thekey

(20)

DAFTAR PUSTAKA

[1]. Bachri, Karel Octavianus. 2008. Analisis Pemrosesan Paralel pada Filter

Digital Finite Impulse Response Orde 3. Jurnal Teknik Elektro Universitas

Katolik Indonesia Atma Jaya Vol. 1, No. 1. Oktober 2008 30-35.

[2]. Binanto. 2010. Multimedia Digital Dasar Teori +Pengembangan.PenerbitANDI: Yogyakarta.

[3]. Jogiyanto, HM. 2005. Analisis dan Desain Sistem Informasi. Jakarta. Penerbit: Kawan Pustaka.

[4]. Mar, Etal. 2009.Implementasi Dan Analisis Video Watermarking Dengan

Format Video Mpeg Berbasis Wavelet Transform. Seminar Nasional Aplikasi

Teknologi Informasi 2009 (SNATI 2009). Yogyakarta, 20 Juni 2009.

[5]. Persada, Bayu Adi. 2004. Studi Dan Implementasi Non Blind Watermarking

Dengan Metode Spread Spectrum, Bandung: Jurnal Teknik Elektro dan

Informatika Institut Teknologi Bandung.

[6]. Petrovi, Rade. 2000.Data Hiding Within Audio Signals. Jurnal Facta Universitatis (NI_S) Series: Electronics and Energetics vol. 12, No.2 (2000), 103122.

[7]. Putra, Darma. 2010. Pengolahan Citra Digital.Yogyakarta. Penerbit: ANDI.

[8]. Redmond. 1993. Multimedia Programming Interface AndData Specifications. Microsoft Corporation.

[9]. Sugiono, etal. 2008. Watermarking Pada File Audio PCM WAVE Dengan

Metode Echo Data Hiding. Konferensi Nasional Sistem dan Informatika 2008;

Bali, Nopember 15, 2008.

[10]. Winarso, Sri. M.E. 2007. Digital Watermarking Menggunakan MetodeDiscrete Cosine Transform. Jurnal Teknologi Informasi-AITI. Februari

(21)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Analisis sistem adalah merupakan proses untuk memperoleh pemahaman yang

menyeluruh terhadap kebutuhan sistem sehingga diperoleh gambaran proses yang

akan dilakukan sistem. Hal ini akan membantu pemodelan rancang bangun sistem

yang nantinya akan diimplementasikan dalam bentuk nyata.

3.1.1 Analisis Masalah

Salah satu cara untuk mengidentifikasi permasalahandengan penggunaan diagram

Ishikawa (fishbone diagram). Diagram Ishikawa adalah sebuah alat grafis yang

digunakan untuk mengidentifikasi, mengeksplorasi dan menggambarkan suatu

masalah serta sebab dan akibat dari masalah tersebut. Diagram ini juga sering disebut

sebagai diagram sebab-akibat atau diagram tulang ikan. Identifikasi terhadap

permasalahan akan membantu analisis persyaratan sistem yang nantinya akan

dikembangkan.

Pada aplikasi ini dilakukan perbandingan hasil watermarkingpada video yang

berformat AVI dengan MP4 menggunakan algoritma Echo Data Hiding.Labelwatermarkyang disisipkan berupa teks berformat .txt. Setelah proses watermarking dan ekstraksi selesai, maka dilakukan pengujian parameter

watermarking dengan menghitung nilairecovery rate (RR), Mean Squared Error

(MSE) serta Peak Signal to Noise Ratio (PSNR).

Proses kerja algoritmaEcho Data Hidingpada watermarking dan ekstraksi

yaitu penyisipan dan pengekstrakan video dilakukan pada sampel audio dengan

(22)

maka key yang digunakan berfungsi sebagai acuan dalam melakukanproses

pembuatan delay echo yang mewakili bit biner “0” dan “1”. Hasil dari operasi penyisipan ini adalah sebuah sinyal yang telah berisi data dan key. Data yang

disisipkan dalam modul ini adalah sederetan bit biner yang merupakan konversi dari

kode unik hasil generate.

Frame pada streamaudio yang terdapat pada file AVI dan MP4 berformatRIFF

(Resource Interchange File Format) yang membagi sebuah data file ke dalam blok,

atau potongan. Untuk membentuk echodigunakan dua buah impuls yang disebut

kernel. Kernel “satu” dibuat dengan delay δ1 detik sedangkankernel “nol” dibuat

dengan delay δ0 detik.Jika hanya 1 echo yang dihasilkan dari sinyal asli maka hanya 1 bit dari teks yang dapat disisipkan. Karena itu, sinyal awal dibagi-bagi ke dalam

beberapa blok sebelum proses encoding dimulai. Ketika proses encoding telah selesai,

blok-blok tersebut digabungkan kembali membentuk sinyal baru.

Seluruh kategori dan sebab akibat yang disebutkan kemudian dimuat dalam

sebuah diagram Ishikawa sebagai berikut.

Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalahan Sistem

Pada diagram Ishikawa, masalah utama ditunjukkan oleh segi empat paling

(23)

dihubungkan oleh sebuah garis ke tulang utama (garis horizontal yang terhubung ke

kepala ikan). Selanjutnya sebab akibat yang muncul ditunjukkan oleh tulang-tulang

kecil yang diwakili oleh garis panah yang mengarah ke tulang-tulang kategori

masalah.

3.1.2 Analisis Persyaratan

Analisis persyaratan sebuah sistem dikelompokkan ke dalam dua bagian yaitu, analisis

persyaratan fungsional dan analisis persyaratan non-fungsional.

3.1.2.1 Analisis Persyaratan Fungsional

Persyaratan fungsional adalah segala sesuatu yang harus dimiliki oleh sistem.

Persyaratan fungsional sistem yang akan dirancang antara lain sebagai berikut:

1. Sistem harus menyediakan sumberdaya untuk melakukan watermarking dan

ekstraksi dengan menerapkan echo data hiding, dimana untuk keamanannya

ekstraksi digunakan kunci.

2. Pada penerapan algoritma Echo Data Hiding, sistem juga harus menyediakan

sumberdaya untuk parameter-parameter yang ingin dicapai.

3.1.2.2 Analisis Persyaratan Non-Fungsional

Persyaratan non-fungsional adalah persyaratan apa yang harus dilakukan sistem.

Seringkali berupa batasan atau sesuatu yang menjadi perhatian builder sebuah sistem.

Persyaratan non-fungsional yang harus dipenuhi oleh sistem yang dirancang adalah

penggunaan Microsoft Accesssebagai pangkalan data dan Crystal Report untuk

merepresentasikan hasil proses watermarking serta esktraksi.

3.1.3 Pemodelan Sistem

Pemodelan sistem dibuat untuk mengetahui gambaran umum dari sistem yang akan

(24)

3.1.3.1 Pemodelan Sistem dengan Use Case Diagram

Pemodelan sistem dilakukan untuk memperoleh gambaran yang lebih jelas tentang

objek apa saja yang akan berinteraksi dengan sistem serta hal-hal apa saja yang harus

dilakukan oleh sebuah sistem sehingga sistem dapat berfungsi dengan baik sesuai

dengan mestinya.

Perancangan fungsionalitas perangkat lunak pembuktian kepemilikan video

yang akan dikembangkan dimodelkan dengan diagram use case. Aktor yang nantinya

akan berinteraksi dengan sistem adalah pengguna (user). Pengguna dikategorikan

sebagai entitas yang melakukan proses watermarking dan ekstraksi.

Sesuai dengan analisis kebutuhan sistem, beberapa hal yang nantinya harus

dilakukan sistem adalah:

1. Melakukan watermarking terhadap video asli untuk pemberian label identitas

kepemilikan menghasilkan video ter-watermark

2. Melakukan ekstraksi label kepemilikan terhadap file video ter-watermark

Berdasarkan informasi kebutuhan sistem dan aktor yang berperan, diagram use

case berikut dirancang sebagai pemodelan persyaratan sistem.

Gambar 3.2 Use CaseDiagram Sistem Aplikasi

Perbandingan Hasil Watermarking Pada Video AVI dengan MP4 Menggunakan Algoritma Echo Data

Hiding

Sistem Kepemilikan

File Video

Watermarking

Esktraksi

Key/Kode Esktraksi <<extends>> <<uses>>

<<uses>>

(25)

Pada diagram tersebut tampak bahwa seorang User (pengguna) hanya bekerja

dengan mengakses Use Case sistem watermark video. Pengguna tidak perlu

mengetahui secara persis proses apa saja yang terjadi pada setiap tahap. Dengan

demikian untuk memutuskan proses apa yang nantinya dilakukan pada setiap tahap

menjadi tanggung jawab sistem.

Berikut ini merupakan dokumentasi naratif untuk use case Proses

watermarking.

Tabel 3.1 Dokumentasi Naratif Use CaseWatermarking

Nama use case Sistem keamanan file video

Aktor User

Deskripsi Use case yang mendeskripsikan fungsi pengamanan file video dengan pemberian label identitas.

Pre-condition Video yang di-label teks ber format AVI dan MP4.

(26)

Activity diagram untuk use case kontrol proses watermarking terlihat sebagai

berikut.

User Sistem

Gambar 3.3 Activity DiagramProses Watermarking Memilih tombol watermarking

Memilih tombol Browse

Memasukkan Key dan label

Tampilkan kesalahan

Tidak

Memilih tombol Proses

Ya

Penyisipan label

Menghitung nilai MSE dan PSNR

(27)

Pada dokumentasi naratif use casedan activity diagram terlihat bahwa kontrol

proses dilakukan dengan menjaga tahapan watermarking berlangsung sesuai dengan

mekanisme dan kemudian sistem memutuskan apa saja yang harus dilakukan oleh

sistem pada setiap tahapan dengan memanggil modul program yang sesuai untuk

memproses proses selanjutnya.

Berikut ini merupakan dokumentasi naratif untuk use case Proses Ekstraksi.

Tabel 3.2 Dokumentasi Naratif Use CaseEkstraksi

Nama use case Sistem keamanan file video

Aktor User

Deskripsi Use case yang mendeskripsikan fungsi ekstraksi kepemilikan dengan pengambilan label identitas dari file video.

Pre-condition Video yang di-label teks ber format AVI dan MP4.

Typical course of

event

Aksi aktor Respon sistem

Langkah 1: User memilih tombol

Ekstraksi dari menu utama.

Langkah 3 User memasukkan file

video watermark dengan memilih

tombol Browse

Langkah 5: User memasukkan

Key dan kode ekstraksi

Langkah 2: Sistem merespon

dengan memanggil program

Ekstraksi video.

Langkah 4: Sistem

menampilkan nama-nama file

video

Langkah 6: Sistem melakukan

ekstraksi label dari file video

watermark dan menghitung

nilai RR.

Alternate course Aksi aktor Respon sistem

- -

(28)

Activity diagram untuk use case proses ekstraksi terlihat sebagai berikut.

User sistem

Gambar 3.4Activity DiagramProses Ekstraksi Memilih tombol

Proses Melakukan ekstraksi label

Menghitung nilai RR

Mengkonfirmasi keberhasilan proses Memilih tombol Ekstraksi

Memilih tombol Browse

Memasukkan Key dan Kode Ekstraksi

Tampilkan kesalahan

Tidak

Ya

(29)

Pada dokumentasi naratif use casedan activity diagram terlihat bahwa kontrol

proses dilakukan dengan menjaga tahapan ekstraksi berlangsung sesuai dengan

mekanisme yang seharusnya dan kemudian sistem memutuskan apa saja yang harus

dilakukan oleh sistem pada setiap tahapan dengan memanggil modul program yang

sesuai untuk memproses pesan.

3.1.4Analisis Proses Sistem

Implementasi watermarking pada pemberian identitas file video terdiri proses

Watermarking dan Ekstraksi dapat digambarkan dalam penelitian sebagai sequence

diagram.Sequence Diagram proses Watermarking dapat dilihat seperti pada Gambar

3.5.

Gambar 3.5Sequence Diagram Proses Watermarking :Watermarking

Browse File video

File video

:Echo Data Hiding

Echo

:Insertion Echo

Insert Key dan label

Kernel File video

Biner Key dan label

:Hitung MSE dan PSNR

(30)

Sistem watermarking memerlukan file video asli, key dan label identitas yang akan

dimasukkan sebagai identitas video. Tahap awal dilakukan pembentukan echo pada

video dengan bantuan kernel (0 dan 1). Fungsi echo adalah sebagai wadah tempat

penyisip dalam bentuk biner.

Sequence Diagram proses Ekstraksi dapat dilihat seperti pada Gambar 3.6.

Gambar 3.6Sequence Diagram Proses Ekstraksi

Sistem ekstraksi memerlukan file video watermark, key dan kode ekstraksi yang akan

dimasukkan untuk mendapatkan label identitas video. Tahap awal dilakukan

pembacaan echo pada video watermark untuk mendapatkan kernel (0 dan 1). Label

penyisip yang peroleh dalam bentuk biner dikonversikan ke ASCII.

Implementasi watermarking dituliskan sebagai pseudocode dibawah ini. :Ekstraksi

Browse File video watermark

File video watermark

Kernel 0 dan 1 :Ekstraksi bit echo

Insert Key dan Kode Ekstraksi

Biner Key dan Kode Ekstraksi

:Hitung RR

Nilai RR

:Pembentukan Label

(31)

Video  Video_input Label  Label_input

For i=1 to sampel_video_max

Kernel=echo_kernel0

If kernel=0 then

Kernel=1

Else

Kernel=0

Endif

bin_label=ASCII_to_Bin (label)

if bin_label=1 then

Kernel 0  bin_label

Else if bin_label=0 then

Kernel 1  bin_label

Endif

Next i

Video_Watermark  Video(save)

kd_Ekstr= FileLen(Video)

Jum_bit_label_Aslilen(label_asli)

Keterangan:

User menginput file video yang hendak di-watermarking, serta label sebagai pemberi

identitas. Selanjutnya sistem membuat echo pada file video dengan menggunakan

kernel 0 dan 1. Label kemudian dikonversi menjadi kode biner dan disisipkan pada

echo 0 dan 1 sampai semua biner label habis dan dilakukan penyimpanan file video

ter-watermarking.

Implementasi ekstraksi dituliskan sebagai pseudocode dibawah ini.

video  Video_Watermark kodeEks  kd_Ekstr

(32)

If kernel0 then

bin_label=1

Else

bin_label=0

Endif

ASCII_labelbinToASCII (bin_label)

Next i

Label  ASCII_label

Jum_bit_label_Ekstlen(ASCII_label)

Keterangan:

User menginput file video dan kode ekstraksi, selanjutnya sistem membentuk echo 0

dan 1 menggunakan kernel 0 dan 1. Sistem membaca kernel 0 sebagai biner 1 dan

kernel 1 sebagai biner 0 dari label watermark. Setelah semua biner diperoleh, maka

biner label dikonversikan ke ASCII sebagai label watermark.

3.2Perancangan Sistem

Perancangan sistem berdasarkan hasil analisis proses sistem akan diperoleh gambaran

fungsionalitas yang akan diterapkan pada sistem. Berdasarkan gambaran ini suatu

model rancang bangun diwujudkan dalam bentuk flow chartdan rancangan antarmuka

pengguna, dimana rancangan ini nantinya akan diimplementasikan melalui bahasa

pemrograman.

3.2.1 Perancangan Flow Chart

Flowchart adalah bagan alir yang menggambarkan arus data dari program. Flowchart

menggambarkan proses-proses yang akan dilakukan oleh sistem dengan bentuk

(33)

3.2.1.1 Flow ChartWatermarking Video

Flow ChartWatermarking Video dapat dilihat seperti pada Gambar 3.7

Gambar 3.7Flow ChartWatermarking

3.2.1.2 Flow Chart Ekstraksi

Flow Chart ekstraksi label dari file video watermark dapat dilihat seperti pada

Gambar 3.8.

Start

Input File Video, Label dan Password

Baca Sampel Audio

Pembuatan Echo dengan Kernel 0 dan 1

Sisipkan setiap kernel untuk data sampel

Konversikan Pesan  Biner

Ganti Kernel 1 dengan bit-bit Pesan

Gabung Kernel dengan Data Sampel

Representasi Video watermark Nilai MSE, PSNR, Kode Ekstraksi

Stop

(34)

Gambar 3.8Flow Chart Ekstraksi

3.2.2 Perancangan Antarmuka (Interface)

Perancangan antar muka adalah rancangan tampilan yang menghubungkan pengguna

(user) dengan komputer dengan bantuan program. Salah satu syarat pembuatan antar

muka adalah berorientasi pada mudah digunakan (user friendly) serta informatif. Start

Input File Video Watermark, Key dan Kode Ekstraksi

Baca Sampel Audio

Baca Kernel 1 dari Sampel Audio

Konversikan 8 Biner  ASCII

Gabung kode ASCII  Label

Representasi Label dan Recovery rate

Stop

(35)

3.2.2.1Rancangan Menu Utama

Rancangan Menu Utama merupakan tampilan yang pertama kali muncul saat program

dijalankan. Pada rancangan ini terdapat menu Watermarking yang berfungsi untuk

melakukan watermarking terhadap file video, Extractionyang berfungsi untuk

melakukan ekstraksi terhadap file video watermark, Result yang untuk menampilkan

informasi hasil watermarking serta ekstraksi label dari file video, About dan Quit.

Rancangan Menu Utama terlihat seperti pada Gambar 3.9.

Gambar 3.9Rancangan Menu Utama

Keterangan:

1. Menu Watermarkingyaitu program yang berfungsi untuk melakukan proses

watermarking terhadap file video.

2. Menu Extraction yaitu program yang berfungsi untuk melakukan proses

ekstraksi terhadap file video watermark.

3. Menu Result yaitu program yang berfungsi untuk menampilkan hasil

perbandingan watermarking video AVI dan MP4

4. Menu About yaitu program yang berfungsi untuk menampilkan informasi

aplikasi.

5. Menu Quit yaitu program yang berfungsi untuk menutup form Menu Utama

aplikasi.

6. Logo Universitas Sumatera Utara

7. Label Keterangan nama penelitian

Judul Penelitian

Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Xxxxxxxxxxxxxxxxxxxxxxxxxxx Xxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxx

Watermarking About Quit

1 4 5

7 Extraction

2

Result

3

(36)

3.2.2.2Rancangan Form Watermarking

Rancangan Form Watermarking berfungsi sebagai penyisipan label identitas yang

berformat teks ke dalam filevideo digital. Pada rancangan ini terdapat tampilan tombol

untuk pemanggilan file video yang akan di-watermarking. Sebelum proses

watermarking user harus menginput Key serta label penyisip. Output pada proses

watermarking adalah nilai MSE (Mean Squared Error), PSNR (Peak Signal to Noise

Ratio) serta kode ekstraksi yang harus diinput pada saat melakukan ekstraksi.

Rancangan Form Watermarking dapat dilihat seperti pada Gambar 3.10.

Gambar 3.10 Rancangan Form Watermarking

Video Watermark AVI Video Watermark MP4

(37)

Keterangan:

1. TextBox berfungsi berisi nama file video AVI yang akan di-watermarking

2. TextBox berfungsi berisi nama file video MP4 yang akan di-watermarking

3. Tampilan Video AVI melalui Windows Media Player

4. Tampilan Video MP4 melalui Windows Media Player

5. TextBox berfungsi berisi nama file video AVI watermark

6. TextBox berfungsi berisi nama file video MP4 watermark

7. TextBox berisi keywatermark

8. TextBox berisi label watermark dalam ASCII

9. TextBox berisi label watermark dalam biner

10. TextBox berisi kode ekstraksi video AVI

11. TextBox berisi kode ekstraksi video MP4

12. Label berisi nilai MSE video AVI

13. Label berisi nilai PSNR video AVI

14. Label berisi nilai MSE video MP4

15. Label berisi nilai PSNR video MP4

3.2.2.3Rancangan Form Extraction

Rancangan form Extraction berfungsi melakukan ekstraksi label penyisip dari file

video yang sudah di-watermarking. Pada tampilan form Extraction yang terdiri dari

opsi pilihan format file video yang hendak diekstraksi dengan memilih tombolLoad.

Tombol Play berfungsi untuk menjalankan video yang dipilih sebelum dan sesudah

dilakukan extraction. Tombol Batal berfungsi untuk membersihkan halaman

Extraction. Sebelum dilakukan proses Extraction, user diharuskan menginput

informasi Key serta kode ekstraksi. Output dari proses Extractionadalah label penyisip

serta nilai Recovery Rate (RR). Rancangan Form Extraction dapat dilihat seperti pada

(38)

Gambar 3.11 Rancangan Form Ekstraksi

Keterangan:

1. TextBox berfungsi untuk menampilkan nama file video AVI watermark

2. TextBox berfungsi untuk menampilkan nama file video MP4 watermark

3. Tampilan Video AVI melalui Windows Media Player

4. Tampilan Video MP4 melalui Windows Media Player

5. TextBox berfungsi berisi key ekstraksi file video AVI

6. TextBox berfungsi berisi key ekstraksi file video MP4 Tampilan

Biner Penyisip 11 Biner Penyisipan 12

(39)

7. TextBox berisi kode ekstraksi video AVI

8. TextBox berisi kode ekstraksi video MP4

9. Label berisi ASCII label penyisip video AVI

10.Label berisi ASCII label penyisip video MP4

11.Label berisi Biner label penyisip video AVI

12.Label berisi Biner label penyisip video MP4

13.Label berisi ASCII label ekstraksi video AVI

14.Label berisi ASCII label ekstraksi video MP4

15.Label berisi Biner label ekstraksi video AVI

16.Label berisi Biner label ekstraksi video MP4

17.Label berisi nilai Recovery Rate video AVI

18.Label berisi nilai Recovery Rate video MP4

3.2.2.4Rancangan Hasil Pengujian Watermarking

Rancangan Hasil Pengujian Watermarking berfungsi untuk menampilkan hasil

watermarking video AVI dan MP4 berupa menghitung nilai MSE dan PSNR.

Rancangan Hasil Pengujian MSE dan PSNR dapat dilihat seperti pada Gambar 3.12.

Gambar 3.12 Rancangan Hasil Pengujian Watermarking

No FileVideoAsli FileVideoWatermark Label Penyisip MSE PSNR Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx

(40)

3.2.2.5Rancangan Hasil Pengujian Ekstraksi

Rancangan Hasil Pengujian Ekstraksi berfungsi untuk menampilkan hasil ekstraksi

label dari video watermark yang berformat AVI dan MP4 berupa menghitung nilai

recovery rate. Rancangan Hasil Pengujian ekstraksi dapat dilihat seperti pada Gambar

3.13.

Gambar 3.13 Rancangan Hasil Pengujian Ekstraksi

3.2.2.6Rancangan About

Rancangan About ini berfungsi menampilkan informasi tentang aplikasi pada

penelitian ini. Rancangan About dapat dilihat seperti pada Gambar 3.14.

Gambar 3.14 Rancangan About

Informasi Watermarking dan ekstraksi video format AVI dan MP4 dengan algoritma Echo Data Hiding

No FileVideoAsli FileVideoWatermark Label Penyisip Label Ekstraksi RR Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx Xx xxxxxxxxxxxxx xxxxxxxxxxxxxxxxx xxxxxxxxxxx xxxxxx xxxxxxx

(41)

BAB 4

IMPLEMENTASI DAN PENGUJIAN

4.1Implementasi

Implementasimerupakanhasil dari perancangan sistem pada bab sebelumnya yang

berisi tentang proses dan tampilan sistem mencakup keseluruhan bentuk tampilan

pada sistem.

4.1.1 Proses Pembacaan File Video

Sebagai contoh dibawah ini adalah struktur file RIFF (wav)

52 48 46 46 24 08 00 00 57 41 56 45 66 6d 74 20 10 00 00 00 01 00 02 00 22 56 00

00 88 58 01 00 04 00 10 00 64 61 74 61 00 08 00 00 1e1734 00 20 1f 1e 4a 1d 3b 1f

10 f4 1e f324 e7 23 a6 3c f2 24 f2 11 c0 1a 0d 00 7f 11 00 22 07 3d 3d 0 3d 0 2 9a 2a 4f 3e 3d 00 10 10 10 03 3d 10 10 2 f 10 10 12 00 12 10 25 23 13 00 04 11 23 00 00 12 11 32 2a 2a 9f 25 10 -10 02 12 10 53 13 00 a6 11 12 23 00 0f 10 10 10 12 10 5d 23 13 70 11 26 23 00 01 13 9a 2a 2f 10 10 10 12 10 53 90 56 11 23 00 01 13 0e 22 529a 2a 10 3d 10 02 2f 10 10 10 12 -10 11 33 13 00 07 3d 10 02 3f 10 10 12 12 53 13 30 30 37 07 13 3d 10 02 f 0 10 10 12 -10 53 14 13 00 07 3d 10 02 f 0 10 00 12 26 25

Gambar 4.1Data StreamAudio Wav

Dari file audio dengan format WAV di atas:

a. Empat byte pertama selalu berisi 52 48 46 46 (hexa) yang jika di konvensi

mempunyai arti R =52, I =48, F= 46, F = 46 sama dengan RIFF.

b. Empat byte berikutnya berisi 24 08 00 00 menyatakan ukuran file audio yaitu

24=36, 08=8, 00=0, 00=0 yang sama dengan 36800, maka ukuran filenya

adalah 36800 kb – I kb = 36799 kb.

c. Empat byte berikutnya 57 41 56 45 menyatakan jenis file: 57=W, 41=A, 56=V,

45=E

(42)

e. Empat byte berikutnya adalah 10 00 00 00 yang menyatakan panjang

informasi, 10 = 16, 00=0, 00=0, 00=0 semuanya bernilai 16.

f. Empat byte berikutnya adalah 01 00 02 00 yang bernilai 1 dan 2 channel

(stereo).

g. Empat byte berikutnya adalah 22 56 00 00 yang menyatakan sample rate

dengan nilai 22=”, 56=V, 00=0, 00=0.

h. Empat byte berikutnya adalah 88 58 01 00 yang menyatakan byte rate dengan

nilai 22=”, 56=V, 00=0, 00=0.

i. Dua byte berikutnya adalah BlockAlign yang bernilai 04 00 yang menyatakan

yang menyatakan ukuran data untuk satu sample penuh dalam byte. Yang

dimaksud dengan satu sample penuh adalah satu sample yang mewakili nilai

dari sample pada semua channel pada suatu waktu.

j. Dua byte berikutnya adalah nilai bit per sampel (BitsPerSample) yang bernilai

10 00 adalah 16 dan 00 = 16 bit per sampel untuk sampel right channel

maupun untuk sampel left channel.

k. Empat byte berikutnya adalah 64 61 74 61 yang menyatakan ID dengan nilai

64=d, 61=a, 74=t, 61=a dengan arti “data” yang menyatakan data sampel

digital audio.

l. Enam belas (16) byte berikutnya adalah sampel audio right channel sampel 1

sampai sampel ke 4 dengan nilai 1e1734 00 20 1f 1e 4a 1d 3b 1f 10 f4 1e f324.

m. Enam belas (16) byte berikutnya adalah sampel audio left channel sampel 5

sampai sampel ke 8 dengan nilai f2 11 c0 1a 0d 00 7f 11 00 22 07 3d 3d 0 3d

0.

n. Selanjutnyaadalah data sampel audio.

Langkah-langkah watermarking dengan algoritma echo data hiding adalah

sebagai berikut:

1. Input file video asli (cover vidio) dan key.

2. Pemisahan frame video dengan sampleaudio.

3. Pembacaan sample audio dari frame audio

4. Hitung nilai biner untuk setiap sampleaudio.

5. Konversikan label teks dan password ke nilai biner.

(43)

7. Sisipkan nilai biner label ke dalam echo audio.

8. Simpan file video watermark.

Sebagai contoh 16 byte dari sample audio diatas: 1e1734 00 20 1f 1e 4a 1d 3b 1f 10 f4

1e f324 disisipi dengan pesan HEY. Sample audio dikonversikan ke biner menjadi:

1e = 00011110

17 = 00010001

34 = 00110100

00 = 00000000

20 = 10000000

If = 00011111

Ie = 00011110

4a = 01001010 1d = 00011101

3b = 00111011

1f = 00011111

10 = 00010000

f4 = 11110100

1e = 00011110

f3 = 11110011

24 = 00100100

Biner pesan “HEY” adalah 01001000 01000101 01011001 Biner key “123” adalah 00000001 00000010 00000011

Jadi, biner penyisip adalah 00000001 00000010 00000011 00100011 01001000

01000101 01011001

Dengan biner 00100011 (dalam ASCII adalah “#”) sebagai penanda batasan antara biner key dan biner pesan yang akan disisipkan.

Pembagian data sampel menjadi 4 blok dimana masing-masing berisi 16 byte/4 yaitu 4

data.

Blok-1

1e = 00011110

(44)

34 = 00110100

00 = 00000000

Blok-2

20 = 10000000

If = 00011111

Ie = 00011110

4a = 01001010 Blok-3

1d = 00011101

3b = 00111011

1f = 00011111

10 = 00010000

Blok-4

f4 = 11110100

1e = 00011110

f3 = 11110011

24 = 00100100

Pembuatan kernel 0 dan 1 dari data sampel adalah:

Pada setiap blok ditambahkan kernel 0 dan 1 secara berselang-seling, dimana Blok-1

dan Blok-3 ditambah kernel 0 sedangkan Blok-2 dan Blok-4 ditambah kernel 1

sebagai berikut:

Blok-1

1e = 00011110

17 = 00010001

34 = 00110100

00 = 00000000

0 = 00000000 <Kernel 0>

Blok-2

20 = 10000000

If = 00011111

Ie = 00011110

(45)

1 = 00000001 <Kernel 1>

Blok-3

1d = 00011101

3b = 00111011

1f = 00011111

10 = 00010000

0 = 00000000 <Kernel 0>

Blok-4

f4 = 11110100

1e = 00011110

f3 = 11110011

24 = 00100100

1 = 00000001 <Kernel 1>

Selanjutnya sisipkan biner vektor penyisip 00000001 00000010 00000011 00100011

01001000 01000101 01011001 ke dalam setiap blok, dimana bit 0 ke dalam kernel 0

dan bit 1 ke dalam bit 1.

Langkah-langkah ekstraksi adalah sebagai berikut:

1. Input file video watermark,key serta kode ekstraksi.

2. Pembacaan header file video.

3. Baca sample audio dari stream pada posisi kode ekstraksi.

4. Baca bit terakhir atau echo.

5. Hitung nilai biner untuk setiap echo pada sample audio.

6. Rekonstruksi biner setiap 8 bit ke ASCII menjadi label.

7. Tampilkan label.

Selanjutnya pesan “HEY” dalam biner adalah: 01001000 01000101 01011001

H : 01001000

E : 01000101

Y : 01011001

(46)

0 1 0 0 1 0 0 0

Gambar 4.2 Sinyal awal yang dipecah menjadi beberapa bagian kecil

Pada Gambar 4.2 sinyal asli dibagi menjadi tujuh bagian yang diberi label a, b,

c, d, e, f, dan h. Pada bagian a, c, d, dan f akan disisipkan bit 0. Untuk itu akan

digunakan kernel 0 sebagai fungsi sistem pada setiap bagian tersebut. Demikian

sebaliknya bit 1 akan disisipkan pada bagian b, e, g dan h maka akan digunakan kernel

1 sebagai fungsi sistem pada bagian tersebut. Untuk mencapai hasil yang tidak dapat

didengar oleh pendengaran manusia, maka dapat dibuat sinyal echo 1 dengan

melakukan pembuatan echo pada sinyal asli menggunakan kernel 1 dan membuat

sinyal echo 0 dengan menggunakan kernel 0 sebagai fungsi sistem terhadap sinyal

asli. Hasil dari sinyal sinyal tersebut dapat dilihat pada Gambar 4.3.

Gambar 4.3 Pembuatan sinyal echo 1 dan sinyal echo 0

Untuk menggabungkan dua sinyal tersebut, maka dibuat dua sinyal mixer. Sinyal

mixer terdiri dari nol dan satu tergantung dari bit yang ingin disembunyikan pada

(47)

Gambar 4.4 Sinyal Mixer

Sinyal mixer 0 kemudian dikalikan dengan sinyal echo 0 sedangkan sinyal

mixer 1 dikalikan dengan sinyal echo 1, kemudian kedua hasil tersebut dijumlahkan.

Sebagai catatan bahwa sinyal mixer 0 merupakan komplemen dari sinyal mixer 1 dan

transisi antara masing masing sinyal adalah bertahap atau melandai. Jumlah antara dua

sinyal mixer tersebut selalu 1. Ini akan memberikan transisi yang halus antara masing

masing bagian yang dikodekan dengan bit yang berbeda, dan mencegah perubahan

yang mencolok pada hasil gabungan sinyal.

4.1.2 Perhitungan Mean Square Error (MSE), Peak Signal to Noise Ratio (PSNR) dan Recovery Rate (RR)

MSE didalam statistik merupakan kuadrat rata-rata dari error yaitu perbedaan antara

sinyal asli dengan sinyal estimasi. Sinyal estimasi merupakan sinyal output dari

sistem. Semakin kecil nilai MSE maka sinyal asli dengan sinyal estimasi mempunyai

kesamaan. MSE digunakan untuk mengukur rata-rata kesalahan yang berasal dari

kuantitas yang akan diestimasi.

MSE = ∑ )2

Dimana MSE = Mean Square Error

N = jumlah data sampel

S = sinyal baseline (nilai data cover audio)

Se = sinyal estimasi (nilai data watermark audio)

Jika diketahui jumlah sampel (N) = 10, maka perhitungan nilai sinyal Baseline dan

(48)

Tabel 4.1 Perhitungan Nilai Sinyal Baseline dan Estimasi

S Se (S-Se) (S-Se)2

S1 = 50 S1e = 50 S-Se = 0 0

S2 = 40 S2e = 55 S-Se = 15 225

S3 = 30 S3e = 30 S-Se = 0 0

S4 = 0 S4e = 15 S-Se = 15 225

S5 = 80 S5e = 75 S-Se = 5 25

S6 = 110 S6e = 100 S-Se = 10 100

S7 = 30 S7e = 30 S-Se = 0 0

S8 = 20 S8e = 20 S-Se = 0 0

S9 = 10 S9e = 20 S-Se = 10 100

S10 = 10 S10e = 10 S-Se = 0 0

∑ (S-Se)2 675

Jadi, nilai MSE = 1/10 x (675) = 67.5

Setelah nilai MSE diperoleh, maka selanjutnya dapat dilakukan perhitungan nilai

PSNR dengan rumus PSNR = 20 x log10 (

√ ) dengan Nmax = 110

PSNR = 20 x log (

PSNR = 20 x log (

PSNR = 20 x log(13.39)

PSNR = 20 x 1.12

PSNR = 22,53

Bit label watermarking “HEY” berjumlah = 24 bit dan bit label yang berhasil

diekstraksi = 24 bit maka, perhitungan recovery rate dapat dihitung dengan rumus

( )

Recovery Rate (RR)= (24/24) x 100 %= 100 %

(49)

Berikut ini adalah tampilan dan penjelasan dari form – form yang terdapat pada

aplikasi watermarking pada video AVI dengan MP4 menggunakan algoritma Echo

Data Hiding.

4.2.1 Tampilan Menu Utama

Tampilan Menu Utama merupakan tampilan awalyang muncul setelah menjalankan

program watermarking video. Tampilan ini berisi menu Watermarking,Extraction,

Result, Aboutdan Quit. Tampilan Menu Utama dapat dilihat pada Gambar4.5.

Gambar 4.5 Tampilan Menu Utama

4.2.2 Tampilan Form Watermarking

Dari Menu Utama pada Gambar 4.1 terdapat sub menu Watermarking berfungsi untuk

melakukan proses penyisipan pesan ke dalam file video AVI dan MP4 seperti pada

(50)

Gambar 4.6 Tampilan Form Watermarking

4.2.3 Tampilan Form Extraction

Dari Menu Utama terdapat sub menu Extraction yang berfungsi untuk melakukan

deteksi label dari file video AVI dan MP4 yang ter-watermarking seperti pada

Gambar 4.7.

(51)

4.2.4 Tampilan Hasil Pengujian Watermarking

Tampilan Hasil Pengujian Watermarkingmerupakan informasi hasil penyisipan label

identitas pada file video AVI maupun MP4. Tampilan Hasil Pengujian Watermarking

dapat dilihat pada Gambar 4.8.

Gambar 4.8 Tampilan Hasil Pengujian Watermarking

4.2.5 Tampilan Hasil Pengujian Extraction

Tampilan Pengujian Extractionmerupakan informasi hasil ekstraksi label identitas dari

file video AVI maupun MP4 yang ter-watermarking. Tampilan Hasil Pengujian

(52)

Gambar 4.9 Tampilan Hasil Pengujian Extraction

4.2.6 Tampilan About

Tampilan About berfungsi untuk menampilkan keterangan tentang penulis skripsi

watermarkingvideo menggunakan algoritma Echo Data Hiding(EDH). Tampilan

About dapat dilihat pada Gambar 4.10.

(53)

4.3 Hasil Implementasi dan Pengujian

Pengujian sistem berfungsi untuk mengetahui kinerja dari program dalam melakukan

watermarking dan ekstraksi file video dengan algoritma Echo Data Hiding.

4.3.1 Hasil Pengujian Watermarking

Pengujian Watermarking adalah melakukan penyisipan file video dengan panjang

pesan yang bervariasi. Tampilan hasil pengujian watermarking file video dapat dilihat

pada Gambar4.11.

Gambar 4.11 Tampilan Hasil Pengujian Watermarking beserta file video

Pada proses watermarking dengan menggunakan algoritma Echo Data Hiding,

dilakukan penyisipan label identitas berupa teks yang kemudian diubah ke dalam nilai

biner dan disisipkan pada bit-bit sample audio yang juga berupa nilai biner.Setelah

proses penyisipan label berhasil dilakukan, maka diperoleh nilai MSE dan PSNR pada

masing-masing file video AVI dan MP4 sesuai dengan formula yang digunakan dalam

perhitungan nilai MSE dan PSNR. Berikut hasil perolehan nilai MSE dan PSNR dari

proses watermarking pada AVI dan MP4 menggunakan algoritma Echo Data Hiding

(54)

MSE = )2

Jika diketahui jumlah sampel (N) = 10 dan ∑ (S-Se)2 = 675

maka nilai MSE = 1/10 x (675) = 67.5

Setelah nilai MSE diperoleh, maka selanjutnya dapat dilakukan perhitungan nilai

PSNR dengan rumus PSNR = 20 x log10 ( ) dengan Nmax = 110

PSNR = 20 x log (

PSNR = 20 x log (

PSNR = 20 x log(13.39)

PSNR = 20 x 1.12

PSNR = 22,53

4.3.2 Hasil Pengujian Ekstraksi

Pengujian Extraction adalah melakukan pengeluaran/ pengembalianlabel dari dalam

file video watermark. Tampilan Pengujian Extraction dapat dilihat pada Gambar 4.12.

Gambar 4.12 Tampilan Hasil Pengujian Ekstraksi beserta file video

Pada proses ekstraksi, label penyisip berupa nilai biner dalam representasi teks

(55)

penyisip yang telah disisipkan pada proses watermarking sebelumnya. Nilai

pengembalian label penyisip melalui proses ekstraksi ini yang dimaksud sebagai nilai

Recovery Rate (RR). Berikut perolehan hasil dari ekstraksi berupanilai RR:

Bit label watermarking “FASILKOM-TI” berjumlah = 88 bit dan bit label yang berhasil diekstraksi = 88 bit maka, perhitungan Recovery Rate dapat dihitung dengan

( )

Recovery Rate= (88/88) x 100% = 100%

Setelah melakukan pengujian terhadap sistem maka diperoleh hasil pengujian. Hasil

pengujian sistem terhadap proses watermarking dan ekstraksi pada 6 buah sample

video AVI dan 6 buah sample video MP4 memperoleh nilai rata-rata untuk

parameter-parameter yang diuji disajikan pada tabel 4.2.

Tabel 4.2 Nilai Rata-rata MSE, PSNR dan RR

No.

AVI MP4

MSE PSNR RR MSE PSNR RR

1. 41,77 31,92 100 59,08 32,55 100

2. 38,10 32,32 100 53,89 32,95 100

3. 44,37 31,66 100 62,74 32,29 100

4. 26,44 33,91 100 37,39 34,54 100

5. 51,23 31,04 100 72,45 31,66 100

6. 46,80 31,43 100 66,19 32,06 100

Rata-rata

41,45 32,05 100 58,62 32,68 100

Nilai MSE rata-rata untuk video format AVI : 41.45

Nilai PSNR rata-rata untuk video format AVI : 32,05

Nilai Recovery Rate rata-rata video format AVI : 100

Nilai MSE rata-rata untuk video format MP4 : 58,62

Nilai PSNR rata-rata untuk video format MP4 : 32,68

(56)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah melakukan studi literatur, analisis dan perancangan sistem serta melalui

implementasi dan pengujian sistem, maka diperoleh kesimpulan sebagai berikut:

1. Sistem dapat melakukan watermarking dan ekstraksi label teks yang disisipkan

pada dua file video yang berformat AVI serta MP4 dengan baik dan tepat.

2. Pengujian sistem terhadap 6 buah sample video AVI dan 6 buah sample video

MP4 memperoleh nilai rata-rata untuk parameter-parameter yang diuji sebagai

berikut:

Nilai MSE rata-rata untuk video format AVI : 41.45

Nilai PSNR rata-rata untuk video format AVI : 32,05

Nilai Recovery Rate rata-rata video format AVI : 100

Nilai MSE rata-rata untuk video format MP4 : 58,62

Nilai PSNR rata-rata untuk video format MP4 : 32,68

Nilai Recovery Rate rata-rata video format MP4 : 100

3. Dari hasil pengujian sistem dapat dilihat bahwa nilai rata-rata MSE untuk file

video MP4 lebih besar dibandingkan dengan video AVI. Nilai MSE yang

besar, menyatakan bahwa penyimpangan atau selisih antara frame video hasil

penyisipan dengan frame video aslinya cukup besar. Hal ini menunjukkan

bahwa metode Echo Data Hiding berjalan lebih baik pada video AVI

(57)

Sebaliknya, nilai rata-rata PSNR untuk file video MP4 lebih besar

dibandingkan dengan video AVI. Nilai PSNR yang besar menunjukkan

kualitas yang lebih baik. Semakin besar nilai PSNR, semakin baik pula hasil

yang diperoleh pada tampilan citra hasil. Hal ini menunjukkan bahwa metode

Echo Data Hiding berjalan lebih baik pada video MP4 dibandingkan dengan

video AVI ditinjau dari parameter PSNR.

Sedangkan untuk nilai rata-rata RR untuk kedua video adalah sama dengan

nilai pengembalian yang bernilai sama.

5.2 Saran

Adapun saran-saran untuk pengembangan penelitian ini di masa yang akan datang

adalah:

1. Agar penelitian selanjutnya dapat mencoba menyisipkan file lain selain file

ekstensi .txt, seperti logo citra ataupun suara.

2. Mencoba parameter lain selain Recovery Rate (RR), Mean Squared Error

(MSE), dan Peak Signal to Noise Ratio (PSNR) yang telah digunakan pada

penelitian ini. Parameter lainnya seperti, Robust VideoWatermarking dalam

(58)

BAB 2

TINJAUAN PUSTAKA

2.1Video Digital

Untuk memahami tentang video digital, harus dipahami dulu pengertian

mengenai video itu sendiri. Video dapat didefinisikan sebagai sekumpulan

gambar bergerak yang diperoleh dari hasil rekaman kamera atau hasil animasi

komputer.Pada mulanya informasi video ini disimpan secara analog, sebagai

perubahan bentuk gelombang secara kontinyu yang mewakili adanya perubahan

warna dan kecerahan (brightness) dari gambar yang direkam. Di sisi lain, komputer digital hanya dapat menyimpan dan mengolah data

yang bersifat biner. Untuk itu di kalangan industri komputer didefinisikan warna

dalam besaran 24-bit yang dapat digunakan untuk menyimpan sekitar 16,7 juta

kemungkinan warna yang berbeda [8].

Dengan demikian data video dapat disimpan secara digital sebagai titik-titik

yang masing-masing memiliki warna tertentu dan titik-titik tersebut jika disusun

sebagai satu kesatuan akan membentuk suatu gambar secara utuh.

Kemajuanteknologi yang dicapai pada saat ini telah

memungkinkan komputer pribadi (Personal Computer) memiliki kemampuan

untukmenampilkan informasi berupa video yang berisi gambar bergerak beserta

suaranya.

Untuk menyimpan data video secara digital, telah diciptakan berbagai

format penyimpanan dan metode kompresi-dekompresi. Perangkat lunak yang

digunakan untuk melakukan kompresi dan dekompresi terhadap data video digital

dengan menggunakan teknik tertentu disebut juga dengan codec yang merupakan

singkatan dari compressor-decompressor. Sampai saat ini masih dilakukan

(59)

menyimpan data video digital dengan seefisien mungkin. Di antara format video

digital yang populer dan banyak digunakan pada saat ini adalah: AVI, QuickTime,

Indeo, Cinepak dan MPEG [2]. MPEG memiliki beberapa jenis ekstensi seperti

MPEG-1, MPEG-2,MPEG-4 dan sebagainya, jenis-jenis tersebut semakin

berkembang seiring pesatnya teknologi multimedia saat ini.

File videodigital terdiri dari 2 bagian utama yaitu gambar (visual) dan suara

(audio), kedua aspek tersebut digabungkan menjadi satu kesatuan yang disebut file

video. Pada umumnya file video sekarang ini banyak yang telah mengalami proses

kompresi. Salah satu format multimedia yang dibentuk berdasarkan proses kompresi

adalah format AVI (AudioVideoInterleave). Banyak file video yang dikompresi

dengan ukuran yang tingkat perbedaannya sangat jauh, sehingga kualitas gambar yang

dihasilkan menjadi berbeda kualitasnya (menurun) dengan file aslinya. Algoritma

yang tersedia untuk melakukan kompresi tersebut juga sangat beragam, penggunaan

algoritma itu biasanya lebih mengutamakan efisiensi pengecilan ukuran file, akan

tetapi juga ada yang mempertahankan kualitas dari file multimedia tersebut.Pada file

AVI terdapat 3 bagian utama yang merupakan komponen penyusun audio dan visual

pada file AVI yaitu AVI Header, AVI Stream dan AVI Frame.

AVI (Audio Video Interleaved) adalah format video yang paling populer, karena

kwalitas gambar yang di berikan sangat baik. AVI sendiri diperkenalkan oleh

Microsoft pada tahun 1992 sebagai bagian dari teknologi Video for Windows

miliknya. File AVI menyimpan data audio dan video pada struktur interleaved. File ini

hanya berupa kontainer - dan data audio video dapat dikompres menggunakan

berbagai codec. Kualitas dan kapasitas tergantung pada codec dan secara khusus

codec yang digunakan adalah MPEG, Divx atau WMV. Video dengan format MPEG

adalah format kompresi yang distandarisasi oleh Moving Picture Experts Group yang

terbentuk oleh 350 perusahaan dan organisasi dimana ukuran format MPEG lebih

kecil dari ukuran format AVI.

File AVI dimulai dengan header utama,header ini ditandai dengan 4 karakter

kode. Header mengandung informasi utama yang terdapat pada file AVI, yaitu

(60)

AVI (misal: Hasindex, Mustuseindex, Copyrighted), metode kemampuan file AVI

(misal: can read, canwrite, allkeyframe, nocompression), jumlah stream pada file,

sebagai contoh pada file yang mempunyai audio dan visual akan mempunyai 2

stream, ukuran buffer yang digunakan untuk menyimpan data file AVI pada memori,

tinggi dan lebar dari sekuensial file AVI, skala waktu yang digunakan pada

keseluruhan file AVI, jumlah sampel dari file AVI, panjang / lama waktu file AVI,

jumlah stream yang ditambahkan atau dihilangkan dari file serta deskripsi tipe file.

Sedangkan AVI stream terdiri dari 2 jenis yaitu streamvideo dan streamaudio,

streamaudio tidak harus terdapat di dalam suatu file AVI. Pada bagian streamvideo ini

berisi data yaitu tipe stream yang didefinisikan dengan 4 karakter kode, handler yang

menangani kompresi saat file disimpan, kode untuk metode penggunaan stream

(misal: AVIstreamInfodisabled, AVIstreaminfoenabled), metode, prioritas, bahasa

yang digunakan oleh stream, skala waktu yang digunakan, jumlah sampel stream,

posisi frame awal, panjang / lama waktu stream, spesifikasi ukuran dari pergeseran

audio dan video data pada file AVI, ukuran buffer yang digunakan untuk menyimpan

data file AVI pada memori, kualitas data video pada stream, ukuran sebuah sampel

data pada stream, dimensi frame, jumlah dari proses pengeditan stream yang pernah

dilakukan, jumlah dari proses pengeditan format stream yang pernah dilakukan serta

deskripsi nama stream.

Frame pada streamvideo yang terdapat pada file AVI merupakan suatu data

yang berbentuk DIB (Device Independent Bitmap). Bentuk DIB secara umum terdiri

dari 3 bagian utama yaitu bitmap file header yang berisi informasi tentang tipe,

ukuran, dan layout dari file DIB, bitmap info yang terdiri dari 2 struktur utama yaitu

bitmap info header dan RGB-quad, serta data piksel-piksel penyusun gambar yang

terdapat pada frame.

2.1.1 Format File AVI (Audio Video Interleaved)

Format file AVI didefinisikan oleh Microsoft Corporation. Secara umum, file AVI

dapat mengandung dua jenis aliran data yangdisebut juga dengan stream, yaitu stream

(61)

video saja tanpa harus memilikistream audio[8].Semuafile AVI minimalharus

memiliki dua buah chunk list. Dua chunk list inidigunakan untuk menyimpan format

dari stream dan isi data dari stream yangterdapat di dalam file. File AVI juga dapat

memiliki chunk index. Chunk index iniberisi informasi mengenai lokasi dari

chunk-chunk data yang ada di dalam file. Data yangterdapat di dalam file AVI merupakan

data audio dan data video yang disimpan

untuk dimainkan secara berselingan antara audio dengan video-nya sehingga

gambar video yang dijalankan akan tampak secara bersamaan dengan suara dari

audio-nya.

File AVI memiliki beberapa karakteristik yang penting untuk diperhatikan.

Karakteristik yang penting ini meliputi:

a. Ukuran lebar dan tinggi dari gambar video dalam satuan pixel. Semakin besar

ukuran gambar yang digunakan, akan semakin besar pula kapasitas yang

dibutuhkan oleh media penyimpannya. Ukuran yang digunakan umumnya

memiliki perbandingan lebar dibanding tinggi sebesar 4 : 3, misalnya: 160 x

120, 240 x 180, dan 320 x 240.

b. Laju frame (frame rate) dari stream video dalam satuan frame per detik (fps).

Semakin tinggi laju frame yang digunakan, semakin halus dan semakin alami

gambar yang dihasilkan, namun semakin besar pula kapasitas yang dibutuhkan

oleh media penyimpannya. Laju frame yangumum digunakan adalah 10, 12, 15,

24, 25, dan 30 fps.

c. Resolusi warna dari stream video dalam satuan bit per pixel (bpp). Semakin

tinggi resolusi warna, semakin bagus gambar yang dihasilkan, namun semakin

besar pula kapasitas yang dibutuhkan oleh media penyimpannya. Resolusi yang

umum digunakan adalah 4 bpp, 8 bpp, 16 bpp, dan 24 bpp.

d. Ukuran sampel dari stream audio dalam satuan bit. Ukuran sampel yang umum

digunakan adalah 8-bit dan 16-bit. Semakin tinggi ukuran sampel, semakin

tinggi pula kualitas suara yang dihasilkan, namun semakin besar pula kapasitas

(62)

e. Laju sampel (sample rate) dari stream audio dalam satuan Hz. Laju sampel yang

umum digunakan adalah 11025 Hz, 22050 Hz, dan 44100 Hz. Semakin tinggi

laju sampel, semakin bagus kualitas suara yang dihasilkan, namun semakin

besar pula kapasitas yang dibutuhkan oleh media penyimpannya.

f. Jumlah kanal dari stream audio. Untuk audio mono menggunakan 1 kanal,

sedangkan untuk stereo menggunakan 2 kanal.

2.1.2 Format Video MPEG

Video format MPEG merupakan file video yang sudah mengalami kompresi.

Teknologi kompresi dapat dilakukan pada audio atau video dengan memiliki standar

kompresi tertentu. MPEG salah satu standar kompresi video yang mengembangkan

standar pengkodean citra bergerak. MPEG memiliki beberapa jenis seperti MPEG-1,

MPEG-2,MPEG-4 dan sebgainya, jenis-jenis tersebut semakin berkembang seiring

pesatnya teknologi multimedia saat ini [5].

1. MPEG-1

Seperti halnya kompresi MPEG-2, kompresi MPEG-1 merupakan metode

kompresi yang diperuntukkan bagi distribusi video dan merupakan standar MPEG

versi pertama. Kompresi ini memiliki ukuran frame size 352x240 pixel. Kompresi

ini masih dipakai sebagai acuan standar untuk VCD, CD-ROM dan web video.

2. MPEG-2

MPEG merupakan singkatan dari Motion Pictures Expert Group, sebuah

organisasi para professional dalam bidang film dan video yang menentukan

peraturan standar industri dalam bidang ini, sedangkan angka 2 menyatakan versi

dari standar ini (versi 2). MPEG-2 dapat menyajikan video dengan kualitas yang

tinggi, mendukung kecepatan transfer lebih dari 8 Mbps. MPEG-2 ideal untuk

DVD yang memiliki data rate sebesar 9,8 Mbps. Kompresi MPEG-2 ditujukan

untuk distribusi video bukan untuk konsumsi editing video. Jadi dalam proses

editing video kita menggunakan kompresi DV25, untuk kemudian dikompresi

Gambar

Gambar 3.6Sequence Diagram Proses Ekstraksi
Gambar 3.7Flow ChartWatermarking
Gambar 3.8Flow Chart Ekstraksi
Gambar 3.9Rancangan Menu Utama
+7

Referensi

Dokumen terkait

Untuk melakukan analisa perbandingan terhadap hasil kompresi file video digital form at FLV dan MPEG dengan algoritma Huffman ini, penulis menggunakan data yang diperoleh

[r]

Jika semua data benar,Tekan tombol Ekstrak maka akan melakukan proses ekstraksi berkas mp3 dengan menggunakan metode Echo Data Hiding (edh) dan menampilkan teks yang tersembunyi

Berdasarkan hasil penelitian, maka kesimpulan berkaitan dengan penelitian yang dilakukan yakni: Pada aplikasi video streaming, penggunaan jaringan dengan menggunakan

Video digital adalah berkas komputer yang digunakan untuk menyimpan kumpulan berkas digital seperti video , audio , metadata, informasi, pembagian chapter , dan judul