Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Penerapan Algoritma Stout Codes Pada Kompresi File Audio Aplikasi Kumpulan Ceramah Ustadz KH. Zainuddin MZ Aziz Alfaridho Hrp Program Studi Teknik Informatika. Fakultas Ilmu Komputer & Teknologi Informasi. Universitas Budi Darma. Medan. Indonesia Jl. Sisingamangaraja No. Siti Rejo I. Kec. Medan Kota. Kota Medan. Sumatera Utara. Indonesia Email: azistaurus97@gmail. AbstrakOePada saat ini perkembangan teknologi sangat berperan penting dalam memudahkan perpindahan data baik audio maupun video, namun dengan banyaknya data yang diterima tidak seimbang dengan kapasitas memori yang dimiliki sehingga membuat memori menjadi lambat bekerja atau lelet maka disarankan untuk melakukan proses kompresi terlebih dahulu terkhusus pada file yang berkapasitas besar. Teknik kompresi biasanya digunakan untuk proses transmisi data dan penyimpanan data. Keuntungan data yang terkompresi antara lain menghemat penyimpanan data memudahkan distribusi data dengan media elektronik maupun media removable seperti flashdisk. CD. DVD, dan lain lain. Berdasarkan keuntunagn seperti di atas penelitian ini menerapkan algoritma kompresi data pada file audio menggunakan algoritma stout code. File audio ceramah Ustadz KH. Zainuddin MZ sangat banyak peminatnya sehingga sangat merugikan jika file tersebut di nikmatin dalam keadaan file yang besar. Oleh karena itu penelitian ini sangat berguna menurut penulis dan di harapkan juga bagi pengguna lain. Kata Kunci: Kompresi. Ceramah. Audio. Algoritma. Stout Code. AbstractOeAt this time, technological developments play a very important role in facilitating the transfer of data, both audio and video, however, with the amount of data received not being balanced with the memory capacity that is available, making the memory work slowly or slowly, it is recommended to carry out a compression process first, especially on files that large capacity. Compression techniques are usually used for data transmission and data storage processes. The advantages of compressed data include saving data storage, making it easier to distribute data using electronic media or removable media such as flash disks. CDs. DVDs, etc. Based on the advantages above, this research applies a data compression algorithm to audio files using the stout code algorithm. The audio files of Ustadz KH. Zainuddin MZ's lectures are very popular so it would be very detrimental if the files were enjoyed in large files. Therefore, this research is very useful according to the author and it is hoped that it will also be useful for other users. Keywords: Compression. Lecture. Audio. Algorithm. Stout Codes. PENDAHULUAN Pada awal keberadaannya telepon hanya digunakan sebagai alat untuk berkomunikasi jarak jauh, namun pada saat ini telepon genggam telah bertransformasi menjadi media untuk mempelajari suatu pokok permasalahan dalam lingkup kehidupan yang berbeda dengan cakupan yang lebih luas, salah satunya dapat memudahkan setiap orang untuk mengakses berbagai bidang ilmu contohnya bidang ilmu agama yang kini tersebar luas di play store dalam bentuk aplikasi. Dimana dapat diketahui secara luas, banyak orang yang mencari tentang pelajaran agama dalam sebuah pembahasan ceramah. Mengingat banyak orang yang membutuhkan jawaban seputar agama dari ceramah, maka terciptalah aplikasi yang memuat khusus ceramah-ceramah ustadz kenamaan. Aplikasi ceramah merupakan sebuah aplikasi dengan kumpulan ceramah-ceramah dengan berbagai pembahasan tentang kehidupan dan amalan yang baik. Dalam aplikasi ceramah ini, penulis mengambil ceramah dari Ustadz KH. Zainuddin MZ yang sudah sangat dikenal dan banyak sekali penggemarnya juga pengikutnya. Keakuratan dalam ceramah dan pembahasan di aplikasi ini di perkuat dengan berbagai acuan dan sumber yakni Alquran dan Hadist dimana sebagai sumber hukum dari umat islam. Pada aplikasi kumpulan ceramah ini terdapat 49 audio ceramah yang memiliki ukuran yang lumayan besar. Dengan banyaknya jumlah audio tersebut maka juga berpengaruh pada kapasitas penyimpanan yang juga akan semakin membesar, juga akan memakan waktu lebih bila kita ingin mengirim atau membagikan file tersebut kepada orang lain di karenakan ukuranya, bila dilakukan pengkompresian maka proses pengiriman data tersebut menjadi lebih cepat karena ukurannya menjadi semakin kecil. Disini saya melakukan perancangan aplikasi baru dengan memanfaatkan file audio ceramah dari aplikasi yang sudah ada karena dari penjabaran di atas dengan 49 audio ceramah dan besar ukurannya sekitar 20 MB sampai 30 MB sepertinya perlu dilakukan kompresi. kebanyakan aplikasi kumpulan ceramah memiliki kapasitas yang besar sehingga akan membutuhkan banyak ruang untuk menyimpan file aplikasi tersebut, banyak orang akan memilih untuk menghapus aplikasi lain agar bisa memasang aplikasi baru di telepon genggamnya, hingga akhirnya akan sangat tidak efektif jika sewaktu waktu aplikasi yang telah dihapus dibutuhkan kembali. Hal ini dapat dihindari apabila aplikasi tersebut melewati proses kompresi terlebih dahulu. Kompresi sendiri adalah sebuah proses yang dapat mengubah sebuah aliran data masukan data asli ke dalam aliran data yang lain . ata yang telah dimampatka. yang memiliki ukuran yang lebih kecil . Salah satu metode yang digunakan dalam melakukan kompresi atau pemampatan data yaitu algoritma Stout Codes. Algoritma Stout Codes mengurutkan karakter yang paling banyak muncul ke bit terkecil dan karakter yang langka ke bit terbesar. Dengan begitu, ukuran file dapat diminimalisir dari ukuran aslinya. Aziz Alfaridho Hrp. JoGTC | Page 1 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc METODOLOGI PENELITIAN 1 Tahapan Penelitian. Tahapan Penelitian yang digunakan dalam penelitian ini terbagi dalam 5 . tahap antara lain adalah: Studi Literatur Pada tahap ini penulis mengumpulkan referensi yang diperlukan dalam penelitian, yang mana dilakukan untuk memperoleh data-data atau informasi yang dibutuhkan dalam penelitian ini. Pada tahap studi literature dilakukan pengumpulan buku, jurnal, e-book, artikel, makalah, student papper, maupun situs internet yang membahas algortima Stout code untuk dipelajari lebih lanjut. Analisis dan Perancangan Sistem Pada tahapan analisis dan perancangan sistem akan dilaksanakan perancangan flowchart, interface. UML dan perancangan aplikasi kompresi file gambar dengan menerapkan algoritma Stout code. Implementasi Sistem Pada tahap implementasi sistem ini dilakukan implementasi terhadap hasil perancangan dengan cara melakukan penulisan program. Pengujian Sistem Pengujian sistem yang sudah dikembangkan dengan sistematika yang sudah dirancang sedemikian rupa untuk melihat perangkat lunak memberikan hasil yang diinginkan. Dokumentasi Dalam tahap dokumentasi dilakukan penyusunan laporan dari hasil perancangan sistem dalam format penulisan 2 Kompresi. Kompresi sendiri adalah sebuah proses yang dapat mengubah sebuah aliran data masukan . ata asl. ke dalam aliran data yang lain . ata yang telah dimampatka. yang memiliki ukuran yang lebih kecil . Kompresi data dalam bidang ilmu komputer, ilmu pengetahuan dan seni adalah sebuah penyajian informasi ke dalam bentuk yang lebih sederhana. Kompresi data dapat di artikan juga sebagai proses yang dapat mengubah sebuah aliran data masukan . umber atau data asl. ke dalam aliran data yang lain . eluaran atau data yang dimampatka. yang memiliki ukuran yang lebih kecil . Berdasarkan penguraian diatas maka dapat disimpulkan bahwa kompresi merupakan sebuah proses untuk memapatkan data dengan cara menghilangkan bagian-bagian dari data tersebut, namun bagian yang dihilangkan merupakan bagian-bagian yang tidak kentara oleh indera manusia, contohnya dengan menghilangkan bagian-bagian pixel suatu gambar hal ini dilakukan untuk memperkecil kapasitas penyimpanan suatu data. !"!#$% '()* *,*)$- . ("/01#* ( rasio kompresi = 100 Oe /!"!#$% '()* *2*)!0 . ("/01#* . y 100%a. 3 Audio. Audio merupakan salah satu elemen dalam multimedia, di mana elemen ini dapat dirasakan dengan indera pendengaran. Audio terdiri dari kata yang diucap, suara-suara, musik dan bahkan gangguan . Audio sendiri adalah gelombang yang merambat akibat dari tekanan yang melalui beberapa media . enda padat, cair, atau ga. Suara terdiri dari frekuensi dan dapat didengar dalam jangkauan pendengaran tingkatan yang cukup kuat untuk didengar . 4 Algoritma. Algoritma merupakan teknik penyusunan langkah-langkah penyelesaian masalah dalam bentuk kalimat denngan jumlah kata terbatas tetapi tersusun secara logis dan sistematis . Dalam makalah pendeknya Quentin stout memperkenalkan dua keluarga RI dan SI dari rekursi, kode panjang variable untuk bilangan bulat, mirip dengan dan lebih umum dari Elias omega dan Even Ae Rodeh code. Stout code bersifat universal dan asimtotik optimal sebelum membaca sebelumnya pembaca diingankan bawah panjangn L dari Bilangan bulat n diberikan oleh L =1 log2 n . Dua kelompok kode tergantung pada pilihan parameter interger 1 sekali a nilai. ebih besar dari atau sama dengan . untuk 1 telah dipilih kata sandi dalam keluarga pertama terdiri dari awalan RI . dan akhiran 0n akhiran adalah nilai biner dari n dalam bit L didahuluan oleh permisa 0 tunggal. itu awalan RI . terdiri dari grup panjang dimulai dengan panjang L dari n yaitu menduhului panjangn L1 dan L maka panjang L2 dari L1 dan seterusnya sampai panjang Li tercapai yang cukup pendek untuk masuk dalam kelompok 1- bit. Perhatikan bahwa kelompok panjang . ecuali mungkin yang paling kiri ) dimulai dengan 1. dengan demikian permisa 0 tunggal menunjukkan akhir kelompok panjang. Sebagai contoh kita memilih 1 = 2 dan mengkodekan interger 985 Ae bit n yang nilainya tepat tidak relevan. Akhiran adalah string 986 Ae bit 0n dan awalan di mulai dengan grup L = 985 =11110110012 panjang L1 dari grup ini adalah 1010 =10102 panjang L2 dari kelompok kedua adalah 4 = 1002 dan panjang L3 adalah 3 = 112 lengkap oleh karena itu codeword adalah . n perahatikan bagaimana kelompok panjang di mulaidengan 1, yang menyiratkan bahwa setiap kelompok diikuti oleh 1, kecuali kelompok panjang terakhir yang diikuti oleh 0. Penguraian sederhana. Dekoder dimulai dengan membaca bit pertama. Ini adalah panjang grup berikutnya. Semakin banyak grup panjang dibaca, hingga grup ditemukan yang diikuti oleh 0. Ini menunjukkan bahwa grup berikutnya adalah n itu sendiri. Dengan latar belakang ini, definisi rekursif dari awalan Rl mudah dibaca dan memahami. Kami Aziz Alfaridho Hrp. JoGTC | Page 2 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc menggunakan notasi L = 1 ? Log2 n? dan dilambangkan dengan B . , . representasi biner l-bit . ode bet. dari integer Jadi. B . , . = 01100. Untuk l Ou 2, awalan didefinisikan oleh: B . ,l )). Sl . = for 0 < n < 2l Ae 1 . Rl (L Ae l -) B . ,L),for n>2l Mereka yang akrab dengan Even Ae Rodeh code mungkin sudah menyadari bahwa kode ini identik dengan R3. Lebih lanjut, kode omega Elias (Bagian 3. berada di antara R2 dan R3 dengan dua perbedaan: . kode omega mengkodekan jumlah Li Oe1 dan . pemisah 0 ditempatkan di sebelah kanan n. Tabel 1. Kode Omega mengkodekan jumlah Li R2. = 11 100 1010 1111011001 R2. = 100 1010 1111011001 R2. = 1010 1111011001 R2. = 01010 1111011001 R2. = 001010 1111011001 R2. =111001111 111110010110110 R2. =100 1111 111110010110110 R2. =1111 111110010110110 R2. = 01111 111110010110110 R2. = 001111 111110010110110 Tabel pendek mencantumkan awalan Rl . untuk 2 O l O 6 dan 985-bit dan 31. 925-bit integer. Jelas bahwa awalan terpendek diperoleh untuk nilai parameter l = L = 1 ? Log2 n ?. Nilai l yang lebih besar menghasilkan awalan yang sedikit lebih lama, sedangkan nilai yang lebih kecil membutuhkan kelompok yang lebih panjang dan karenanya menghasilkan awalan yang jauh lebih lama. Manipulasi aljabar dasar menunjukkan bahwa rentang panjang terbaik L untuk parameter yang diberikan l diberikan oleh . s, 2e - . di mana s = 2l Oe 1 dan e = 2l - 1 = 2s - 1 . ni adalah rentang panjang terbaik L, bukan bilangan bulat terbaik . Tabel berikut mencantumkan interval ini untuk beberapa nilai l dan menjelaskan bahwa parameter kecil, seperti 2 dan 3, cukup untuk sebagian besar aplikasi praktis kompresi data. Parameter l = 2 terbaik untuk bilangan bulat yang panjangnya 2 hingga 7 bit, sedangkan l = 3 yang terbaik untuk bilangan bulat yang panjangnya 8 hingga 127 bit. Keluarga kedua kode Stout serupa, tetapi dengan awalan yang berbeda dilambangkan dengan Sl . Untuk nilai l kecil, keluarga ini menawarkan beberapa peningkatan dibandingkan kode Rl. Secara khusus, ini menghilangkan sedikit redundansi yang ada dalam kode Rl karena grup panjang tidak boleh 0 . tulah sebabnya grup panjang dalam kode omega mengkodekan Li Oe 1 dan bukan L. Awalan Sl mirip dengan awalan Rl dengan perbedaan bahwa grup panjang untuk Li mengkodekan Li Oe1 Oe l. Jadi. S2 . , awalan dari bilangan bulat 985-bit n, dimulai dengan grup panjang 10-bit 1111011001 dan menambahkannya ke grup panjanguntuk 10Oe1Oe2 = 7 = 1112. Untuk ini didahului grup panjang untuk 3Oe1Oe2 = 0 sebagai dua bit 00. Hasilnya adalah awalan 15-bit 00 | 111 | 1111011001, lebih pendek dari 19 bit R2 . Contoh lain adalah S3 . , yang dimulai dengan 1111011001 yang sama dan bergantung padanya kelompok panjang untuk 10Oe1Oe3 = 6 = 1102. Rekursi berhenti pada titik ini karena 110 adalah grup l-bit. Hasilnya adalah 13-bit codeword 110 | 1111011001, sekali lagi lebih pendek dari 17 bit R3 . Melihat bahwa kolom paling kiri mencantumkan nilai L, misalnya, panjang bilangan bulat yang dikodekan, dan bukan bilangan bulat itu sendiri. Grup panjang mempertahankan nilainya hingga grup yang mengikutinya menjadi semua 1, di mana titik grup bertambah 1 dan grup yang mengikuti diatur ulang ke 10 . Semua grup panjang, kecuali mungkin yang paling kiri, mulai dengan 1. Perilaku reguler yang akan dijabarkan di bawah ini adalah hasil dari pilihan Li Oe1 Oe l. Berikut ini di bawah merupakan kode S2. dan kode S3. Tabel 2. Kode S2. dan Kode S3. S2. 00 100 1000000 00 101 10000000 00 110 100000000 00 111 1000000000 01 1000 10000000000 01 1001 100000000000 S3. 000 1000 100000000000 Aziz Alfaridho Hrp. JoGTC | Page 3 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Awalan S2 . , misalnya, dimulai dengan grup 7-bit 1000000 = 64 dan bergantung padanya S2 . Oe1Oe. = S2 . = 00 | 100. Kami menekankan lagi bahwa tabel hanya mencantumkan awalan, bukan codeword lengkap. Setelah ini dipahami, tidak sulit untuk melakukannya lihat bahwa kode Stout kedua adalah kode awalan. Setelah codeword diberikan, itu tidak akan menjadi awalan dari codeword lainnya. Jadi, misalnya, awalan dari semua codewords untuk bilangan bulat 64-bit dimulai dengan awalan 00 100 dari bilangan bulat 4-bit, tetapi setiap codeword untuk bilangan bulat 4-bit memiliki 0 mengikuti 00 100, sedangkan codewords untuk bilangan bulat 64-bit memiliki 1 mengikuti 00 100. HASIL DAN PEMBAHASAN Analisa merupakan suatu penguraian dari sebuah pokok pembahasan, dalam hal ini pembahasan mengenai perancangan aplikasi kompresi audio menggunakan algoritma Stout Code. Masalah yang akan dianalisia adalah bagaiman cara mengkompres file audio yang ukurannya besar sehingga ukurannya menjadi lebih kecil agar lebih mudah dalam proses penyimpanan maupun pemindahan data. 1 Penerapan Algoritma Stout Code. Berdasarkan analisa, kompresi files Audio memiliki ukuran lebih besar dariukuran yang lainnya. Dengan melakukan kompresi file Audio, file yang berukuran besar akan dikompresi menjadi ukuran yang kecil dan akan mengurangi alokasi Dalam penelitian ini, akan dibahas 2 proses utama yaitu proses kompresi dan dekompresi, dan peneliti akan mengkompresi sebuah fileAudio dengan algoritma stout codes. Contoh file Audio yang akan dikompres adalah file berektensi MP3 yang akan dilakukan sebuah proses kompresi. Sebelum file dikompresi, terlebih dahulu dilakukan pembacaan pada file audio untuk mendapatkan file berupa biner. Membaca biner yang terdapat pada file audio menggunakan aplikasi Binary Viewer untuk mencari biner pada aplikasi file MP3. Berikut adalah contoh file audio yang akan dikompresi dan dekompresi. Tabel 3. Sempel File audio yang akan dikompresi Nama File Extension File Size ZainuddinMz-MencariJodoh. MP3 28 MB Gambar 1. File Audio Yang Akan Dikompresi Gambar 2. Isi file audio Dari Hasil Binary Viewer Berdasarkan contoh diatas di dapat nilai biner viewer, adapun nilai hexa yang akan di jadikan sampel untuk penelitian ini pada file Audio sempel D:\Azis\FolderSkripsi/K. ZainuddinMz-MencariJodoh. mp3 tersebut adalah: Aziz Alfaridho Hrp. JoGTC | Page 4 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Tabel 4. Nilai Hexadesimal berdasarkan binary viewer 1 Kompresi Algoritma Stout Codes. Dalam proses kompresi algoritma stout codes yaitu dengan mengurutkan frekuensi dari karakter yang muncul lalu merubah karakter tersebut menjadi codeword. Berikut ini langkah-langkah untuk mengkompresi file audio menggunakan algoritma stoutcodes: Buat daftar frekuensi kemunculan tiap-tiap karakter dan mengurutkan dari frekuensi terbesar sampai frekuensi Tabel 5. Daftar Frekuensi Kemunculan Karakter Hexsa ASCII Biner Bit Total Bit Frekuensi Bit x Frekuensi Mencari codeword dari setiap karakter yang ada berdasarkan data yang ada pada tabel 5. Untuk mencari codeword, pertama sekali menentukan nilai l, pada penelitian ini menggunakan nilai l = 2. Setelah menentukan nilai l, maka masukan rumus berikut: Untuk nilai 0 O n O 2l - 1 Karena nilai l=2, maka: 0 O n O 22-1 =>0 O n O 3 . n=1, maka codeword yang dihasilkan adalah nilai biner dari n yaitu 1 dan diambil sebanyak nilai l yaitu 2 sehingga codewordnya : 01 . n=2, maka codeword yang dihasilkan adalah nilai biner dari n yaitu 10 dan diambil sebanyak nilai l yaitu 2 sehingga codewordnya : 10 . n=3, maka codeword yang dihasilkan adalah nilai biner dari n yaitu 11 dan diambil sebanyak nilai l yaitu 2 sehingga codewordnya : 11 Untuk nilai n Ou 2l Karena nilai l=2, maka: n Ou 22 =>n Ou 4 . n=4 dengan nilai biner 100, maka nilai L=3 diambil dari panjang bit dari nilai biner n dan langkah selanjutnya mencari nilai R. R2. -1-. = 0, nilai binernya 0 dan diambil sebanyak nilai l, yaitu 2 sehingga nilai R=00. Rl(L-1-. ,L)=00100 . n=5dengan nilai biner 101, maka nilai L=3 R2. -1-. = 0, nilai binernya 0 dan diambil sebanyak nilai l, yaitu 2 sehingga nilai R=00. Rl(L-1-. ,L)=00101 . n=6 dengan nilai biner 110, maka nilai L=3 R2. -1-. = 0, nilai binernya 0 dan di ambil sebanyak nilai 1, yaitu 2 Sehingga nilai R=00 R1(L-1-. ,L)=00110 . n=7 dengan biner 111, maka nilai L=4 R2. -1-. = 0, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=00 Aziz Alfaridho Hrp. JoGTC | Page 5 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc R1(L-1-. ,L)=010111 . n=8 dengan biner 1000, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011000 . n=9 dengan biner 1001, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011001 . n=10 dengan biner 1010, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011010 . n=11 dengan biner 1011, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011011 . n=12 dengan biner 1100, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011100 . n=13 dengan biner 1101, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011101 . n=14 dengan biner 1110, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011110 . n=15 dengan biner 1111, maka nilai L=4 R2. -1-. = 1, nilai binernya 1 dan diambil sebanyak nilai l, yaitu 2 Sehingga nilai R=01 R1(L-1-. ,L)=011111 Mengganti karakter yang ada dengan codeword yang telah dihasilkan, dan dapat dilihat pada tabel 4: Tabel 6. Pergantian karakter menjadi codeword Hexsa Codeword Bit Total Frekkuensi Bit x Frekuensi Berdasarkan pada tabel di atas dapat dibentuk nilai bit baru hasil kompresi dari susunan nilai hexadecimal sampel awal sebelum kompresi yaitu, 00, 00, 14, 00, 00, 00, 6C, 6F, 67, 65, 64, 69, 2E, 62, 6C, 6F, 67, 73, 70, 6F, 74, 2E, 63, 6F, 6D. anpa ada tanda koma dan spas. menjadi nilai bit biner: Au01010011001010111100010001011101100001100100101011010111000100011011011100100111010010101111010 011111Ay. Kemudian sebelum di dapatkan hasil keseluruhan akhir kompresi dilakukan penambahan stringbit itu sendiri yaitu padding bit dan flag bit. Jika sisa bagi panjang string bit terhadap 8 adalah 0 maka tambahan 00000001. Nyatakan dengan bit akhir. Sedangkan jika sisa bagi panjang string bit terhadap 8 adalah n. , 2, 3, 4, 5, 6, . maka tambahkan 0 sebanyak Aziz Alfaridho Hrp. JoGTC | Page 6 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc 7 Ae n Au1Ay di akhir string bit. Nyatakan dengan L. Lalu tambahkan bilangan biner dari 9 Ae n. nyatakan dengan bit akhir. karena jumlah string bit 101 tidak habis dibagi 8 dan sisanya 5 bit, nyatakan sisa bagi tersebut dengan nilai n. tambahkan 0 sebanyak 0 sebanyak 7 Ae n Au1Ay di akhir string bit. Nyatakan dengan L. Lalu tambahkan bilangan biner dari 9 Ae n. Nyatakan dengan bit akhir. Gambar 3. Perhitungan Penambahan Bit 1101001111100100000100 Total panjang bit keseluruhan setelah ada penambahan bit adalah 101 3 8 = 112. Selanjutnya lakukan pemisahan bit manjadi beberapa kelompok. Setiap kelompok terdiri dari 8 bit. 01010011-00101011-11000100-01011101-10000110-01001010-11010111-00010001-10110111-00100111-0100101011110100-11111001-00000100 Berdasarkan pada pembagian kelompok nilai biner, didapatkan 6 kelompok nilai biner baru yang sudah terkompresi beserta nilai biner penambahan bit. Setelah pembagian dilakukan, maka nilaiyang sudah dibagi dirubah kedalam suatu karakter dengan terlebih dahulumencari nilai desimal dari string bit tersebutmenggunakan kode ASCII untuk megetahui nilai yang sudah terkompresi. Nilai simbol yang sudah terkompresi dapat dilihat pada tabel di bawah Tabel 7. Nilai Desimal terkompresi Biner Nilai Desimal Terkompresi Simbol i Ao Setelah mengetahui hasil kompresi tersebut, hasil kompresi dapat di ukur atau di hitung sebagi berikut: ycycoycycycaycuycaycnycyccycaycycaycyceycyceycoycaEayccycnycoycuycoycyycyceycycn y 100% ycycoycycycaycuycaycnycyccycaycycaycyceycayceycoycycoyccycnycoycuycoycyycyceycycn 112ycaycnyc yayc = 100% Oe y 100% 200 ycaycnyc yayc = 100% Oe 56% yayc = 44% yayc = 100% Oe Selanjutnya proses dekompresi hal yang dilakukan adalah menganalisa keseluruhan bit hasil dari kompresi Prosesdekompresi sangat penting untuk membuktikan bahwa pengkompresia yang dilakukan sudah benar. Adapun bit keseluruhan hasil kompresi dapat dilihat pada tabel yang di jabarkan seperti di bawah berikut: Tabel 8. Hasil Tekompres Simbol i Nilai Desimal Terkompresi Biner Aziz Alfaridho Hrp. JoGTC | Page 7 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Simbol Ao Nilai Desimal Terkompresi Biner Berdasarkan pada tabel di atas maka diambil seluruh nilai biner dan digabungkan menjadi: Au01010011001010111100010001011101100001100100101011010111000100011011011100100111010010101111010 01111100100000100Ay Selanjutnya adalah dengan mengembalikan binary menjadi string bit semula dengan menghilangkan biner yang Untuk mengembalikan binary menjadi string bit semula dapat dilakukan melalui langkah berikut ini. Lakukan pembacaan pada 8 bit terakhir, hasil pembacaan berupa bilangan desimal. Nyatakan hasil pembacaan dengan n. Hilangkan bit pada bagian akhir sebanyak 7 n. Setelah dilakukan perhitungan pembacaan bit akhir. Nilai biner yang dihilangkan sebanyak 8 bit pada akhir. n = 5. Hilangkan 7 n atau 7 5 = 12. Penjelasan diatas menujukan bahwa bit akhir harus Hasil pengembalian binary menjadi string bit semula dapat dilihat sebagai berikut ini: Au01010011001010111100010001011101100001100100101011010111000100011011011100100111010010101111010 011111Ay Berdasarkan perhitungan dengan algoritma stout codesstring bit pada diatas berjumlah 101 bit seperti diawal sehingga dilakukan pembacaan string bit awal. Adapun tabel hasil perhitungan diatas adalah sebagai berikut: Tabel 9. Pengecekan Bit Indeks Nilai Keterangan Tidak Ada Ada pada table . Tidak Ada Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak ada Ada Pada tabel . Tidak Ada Ada pada tabel . Tidak Ada Ada pada tabel . Tidak Ada Ada pada tabel . Tidak Ada Ada pada tabel . C) Tidak Ada Ada pada tabel . F) Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada Pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Aziz Alfaridho Hrp. JoGTC | Page 8 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Indeks Nilai Biner Biner Keterangan Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Keterangan Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . E) Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Ada pada tabel . C) Tidak Ada Ada pada tabel . F) Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Keterangan Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Ada pada tabel. F) Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . E) Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . Tidak Ada Aziz Alfaridho Hrp. JoGTC | Page 9 Journal Global Tecnology Computer Vol 3. No. Desember 2023. Hal 1-10 ISSN: 2809-6118 (Online - Elektroni. DOI: 10. 47065/jogtc. Website https://ejurnal. seminar-id. com/index. php/jogtc Indeks Nilai Keterangan Ada pada tabel . F) Tidak Ada Tidak Ada Tidak Ada Tidak Ada Tidak Ada Ada pada tabel . D) Maka dari penjabaran diatas dapat dibentuk tabel stout codes dan nilai hexaawal. Berdasarkan hasil dekompresi di atas didapati nilai sampel hexadesimal berdasarkan binary viewer sehingga dihasilkan string semula seperti tabel di Tabel 10. Tabel Hexa dan stout codes Hexsa Codeword Bit Frekkuensi Bit x Frekuensi Total Berdasarkan hasil dekompresi di atas didapati nilai hexadesimal awal sebelum kompresi sebagai berikut, 00, 00, 14, 00, 00, 00, 6C, 6F, 67, 65, 64, 69, 2E, 62, 6C, 6F, 67, 73, 70, 6F, 74, 2E, 63, 6F, 6D KESIMPULAN Berdasarkan pembahasan dan evaluasi sebelumnya dan analisa terhadap penerapan algoritma Stout codes terhadap kompresi file audio aplikasi kumpulan ceramah ustadz KH. Zainuddin MZ, maka dihasilkan kesimpulan yaitu Proses kompresi dan dekompresi pada file audio dilakukan dengan proses encoding dan decoding yang terdapat pada metode algoritma Stout codes. Algoritma Stout Codes dapat diterapkan untuk melakukan kompresi karakter yang terdapat pada file audio ceramah sehingga ukuran file menjadi lebih kecil. Aplikasi kompresi file audio telah selesai dirancang dengan menggunakan Eclipse dimana file audio didalamnya telah terkompresi dengan menggunakan algoritma stout code. REFERENCES