analisis performansi h.264 dan h.265 pada video streaming
TRANSCRIPT
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer e-ISSN: 2548-964X Vol. 1, No. 10, Oktober 2017, hlm. 1172-1181 http://j-ptiik.ub.ac.id
Fakultas Ilmu Komputer
Universitas Brawijaya 1172
Analisis Performansi H.264 dan H.265 pada Video Streaming dari Segi
Quality Of Service
Vico Andrea Budi Harto1, Rakhmadhany Primananda2, Aswin Suharsono3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya
Email: [email protected], [email protected] [email protected]
Abstrak
Penduduk dunia sudah berkembang dengan internet menjadi salah satu penemuan manusia yang paling
bermanfaat. Berbicara internet di Indonesia maka penyataan Telkom untuk membatasi pemakaian
tersebut pada 1 Febuari 2016 menjadi salah satu kontraversi. Telkom membandingkan pemakaian wajar
senilai 300 GB dengan 1200 streaming film berkualitas HD. Tentunya streaming video memiliki alur
dan proses yang menarik untuk diikuti, tapi muncul pertanyaan tentang codec terbaru seperti
H.265/HEVC yang dapat menekan 50% bandwidth daripada pendahulunya H.264/AVC. Pada penelitian
ini, dilakukan pengujian terhadap streaming menggunakan metode kompresi H.264/AVC dan
H.265/HEVC. Pengujian dilakukan untuk mengetahui efek dari penggunaan metode kompresi menurut
perubahan bitrate, framerate, dan bandwidth yang digunakan. Dari hasil pengukuran menurut parameter
tersebut didapatkan nilai durasi streaming live H.264 dan H.265 adalah 22.870 sec dan 34.039 sec, ketika
store adalah 10.927 sec dan 11.789 sec. Nilai throughput streaming live H.264 dan H.265 adalah 0.28
MBit/sec dan 0.18 MBit/sec, ketika store adalah 0.81 MBit/sec dan 0.79 MBit/sec. Nilai delay streaming
live H.264 dan H.265 adalah 18.04 ms dan 24.67 ms, ketika store adalah 8.47 ms dan 8.60 ms. Dapat
disimpulkan performa streaming H.264 lebih baik dari H.265 dikarenakan memiliki nilai durasi
streaming yang lebih rendah, throughput yang lebih tinggi, dan delay yang lebih kecil.
Kata Kunci: streaming live, streaming store, quality of service, H.264, H.265
Abstract
Human knowledge has grown. Internet become one of the most useful human's invention. Speaking
internet in Indonesia, Telkom declarated FUP on Feb 1 2016. Telkom comparing 320 GB bandwidth
with 1,200 movie streaming HD-quality. Of course, streaming video is an interesting thing, but the
question arises about the latest codecs such as H.265 that can compresed 50% bandwidth better than
H.264. This research make experiment between H.264/AVC and H.265/HEVC compression method.
Purpose of this research is to get quantity value from each bitrate, framerate, and bandwidth are used.
This research uses streaming duration, throughput, and delay as parameter. The result from measure
streaming quality with parameter, streaming duration value at streaming live codec H.264 and H.265
are 22.870 sec, 34.039 sec, streaming store are 10.927 sec, 11.789 sec. Throughput value streaming
live codec H.264 dan H.265 are 0.28 Mbit/sec, 0.18 Mbit/sec, streaming store are 0.81 Mbit/sec, 0.79
Mbit/sec. Delay value streaming live codec H.264 and H.265 are 18.04 ms, 24.67 ms, streaming store
are 8.47 ms, 8.60 ms. The conclution is streaming H.264 performa is better than H.265, because lower
streaming duration, lower delay, and better throughput.
Keywords: streaming live, streaming store, quality of service
1. PENDAHULUAN
Internet merupakan kemajuan bagi
peradaban manusia. Pada 1 Febuari 2016 PT.
Telkom yang merupakan provider internet
terbesar di Indonesia menerapkan FUP (Fair
Usage Policy, Kebijakan Penggunaan Wajar)
pada paket-paket intenet yang telah ditawarkan.
Menurut Telkom, kebijakan FUP yang mereka
sediakan melalui IndiHome masih memadai
pemakaian rumah tangga. Sebagai contoh untuk
layanan 10 Mbps, IndiHome yang sebelumnya
unlimited, saat ini memberikan FUP 300 GB
atau setara dengan menonton 1200 film pada
kualitas HD (Telkom, 2016).
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1173
Fakultas Ilmu Komputer, Universitas Brawijaya
Video streaming merupakan proses
menkonsumsi video tanpa mengunduhnya
terlebih dahulu. Website yang menyediakan jasa
streaming seperti Youtube bahkan media sosial
seperti Facebook pun memiliki fitur video
streaming. Untuk mengolah video yang
kemudian akan distreamingkan, maka
dibutuhkan codec. Codec berfungsi sebagai alat
untuk merekam, mengompres, dan
mendistribusikan suatu video. Pada satu sisi
video yang ingin didistribusikan memiliki
ukuran file yang terlalu besar dan memiliki
format video yang tidak sesuai untuk
dikonsumsi, dan di situ peran codec seperti
H.264 dan H.265 untuk mengompres video
dengan algoritma yang dimilikinya
(Wulaningsih, 2011).
H.264/AVC merupakan codec yang
diluncurkan pada tahun 2003, perusahaan besar
seperti Facebook dan Youtube menggunakan
codec H.264 dalam mengolah videonya untuk
distreaming pengunjung situsnya (Wikipedia,
2017) (WISTIA, 2017). Sedangkan H.265
merupakan codec yang diciptakan pada tahun
2013 dengan menawarkan penekanan bitrate
video dua kali lebih kecil dalam pengolahanya.
Dari penelitian Thomas H. Doria di Cisco pada
2013 dari paper “Great Codec Debut” yang
isinya adalah mendemonstarsi kalau
kompleksitas coding HEVC dapat menekan 50%
bandwidth dan mampu mengolah video dengan
resolusi ultra dan mengharapkan penelitianya
dapat berguna pada kegiatan coding dalam
keadaan real-time video conversation, agar
dapat mengatasi keterbatasan konsumsi
bandwidth (Doria, 2013).
Streaming membutuhkan bandwidth yang
besar, sedangkan codec H.265/HEVC
menawarkan kualitas sama dengan penekanan
50% bandwidth daripada H.264/AVC. Untuk
menganalisa performansi streaming antara
kedua codec H.265/HEVC dan H.264/AVC,
maka dibutuhkan tolak ukur berupa data yang
dapat dianalisa secara kuantitas. Data untuk
tolak ukur tersebut didapat dari parameter
Quality of Service, antara lain nilai delay, jitter,
packet loss, dan throughput dari kegiatan
streaming tersebut.
2. DASAR TEORI
2.1 Video Streaming
Live Model client server memisahkan secara
jelas antara server dan client. Pihak server
memberikan layanan jaringan sedangkan pihak
client menerima layanan. Server dan client dapat
berkomunikasi menggunakan aplikasi jaringan
yang disebut server program pada server dan
client program pada client (Sutanta, 2005).
Gambar 1 Arsitektur Client-Server
(Sumber: Sutanta, 2005)
Prinsip kerja jaringan dengan arsitektur ini
sangat sederhana, di mana Server akan
menunggu permintaan dari Client, memproses
dan memberikan hasilnya kepada Client,
sedangkan Client akan mengirimkan permintaan
ke Server, menunggu proses dan melihat
visualisasi hasil prosesnya. Sistem Client-Server
ini menggunakan protokol tama TCP/IP
(Transmission Control Protokol Internet
Protokol), dan sistem operasi yang digunakan
adalah Windows NT.
2.2 Live Streaming
Live streaming merupakan proses streaming
yang berjalan ketika konten yang
distreamingkan masih berlangsung (real-time),
contohnya seperti pertandingan sepak bola atau
menonton acara dari saluran televisi melalui
internet.
Streaming live menggunakan protokol yang
unreliable seperti UDP sehingga konten
terdistribusi secara real-time, namun konten
yang disugukan tidak dikonsumsi user secara
penuh karena unreliable dari UDP tersebut.
Streaming live membutuhkan media
menumpangkan konten yang distreamingkan
secara live. Dalam penyebaran datanya konten
video yang live akan diencode kemudian
didecode kembali oleh end-user. Encode video
biasanya menggunakan H.264/AVC untuk
konten visual dan AAC untuk konten audio
(Sinky, 2013).
2.3 Streaming Store
Streaming store merupakan proses
streaming yang berjalan ketika konten yang
ingin distreaming benar-benar sudah berada
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1174
Fakultas Ilmu Komputer, Universitas Brawijaya
pada server secara sempurna. Pada streaming
store user dapat melakukan forward, pause, dan
playback.
Streaming store menggunakan protokol
yang realiable end-to-end seperti TCP, yang
artinya konten yang disugukan akan dikonsumsi
secara penuh oleh end-user. Buffering
merupakan mekanisme dalam streaming untuk
menahan bagian konten agar dapat terstreaming
secara maksimal (Yildirim, 2009) (Shen, 2009)
Berbeda dengan live streaming, streaming store
membutuhkan webcast untuk menyimpan
konten yang akan distreamingkan (Shiao, 2012).
2.4 RTMP Streaming
Real time messaging protokol (RTMP)
merupakan protokol proprietary yang
dikembangkan oleh adobe system untuk
keperluan streaming video dan audio melalui
flash player. RTMP dirancang dengan perfroma
tinggi untuk mentansmisikan data video dan
audio. Protokol ini mempunyai banyak versi
seperti RTMPS, RTMPE, dan RTMPT. RTMPS
merupakan RTMP melalui TSL /SSL koneksi,
RTMPE RTMP yang dienkripsi dengan
mekanisme keamanan, sementara RTMPT
merupakan RTMP yang dibungkus dalam HTTP
permintaan untuk melintasi firewall. RTMP
merupakan protokol berbasis TCP (Guniganti,
2012).
2.5 HTTP Streaming
HTTP streaming berbasis TCP adalah
protokol pada aplikasi website. HTTP Dynamic
Streaming memberikan layanan untuk konten
media on-demand yang dapat menyediakan
streaming dengan kualitas tinggi menggunakan
H.264. HTTP streaming mampu
mengintegrasikan flash platform pada konten
video dengan sangat efesien (Singh, et al., 2012).
2.6 Bitrate
Bitrate dalam bahasa Indonesia berarti
satuan dasar. Bitrate merupakan satuan bits yang
terproses pada suatu unit dalam suatu waktu
(Gupta, 2006). Seperti satuan panjang, satuan
waktu, satuan kecepatan, bitrate juga memiliki
satuan dan yang paling sering digunakan adalah
bit/s (bit per detik). Sama seperti dari meter ke
kilometer, atau gram ke kilogram, atau m/detik
ke km/jam, bitrate juga memiliki tangga satuan
kilobit/s merupakan 103 dari bit/s, megabit/s
merupakan 106 dari bit/s, gigabit/s merupakan
109 dari bit/s, terabit/s merupakan 1012 dari bit/s.
Penulisan kependekan dari bit per second adalah
bps, dengan huruf “b” kecil, karena huruf “B”
besar dimiliki oleh satuan ukuran besar pada
suatu data, sehingga untuk penulisan satuan-
satuan bitrate menjadi bps, Kbps, Mbps, dlsb
(IEC, 2007).
2.6.1 Constant Bit Rate
Constant bitrate merupakan metode
encoding/mengolah video dengan bit output
yang relatif konstan atau tetap.
Gambar 2 CBR vs VBR
(Sumber: streaminglearningcenter.com)
CBR memiliki hasil yang konsisten, yang
artinya video dengan CBR memiliki trafik
pemakaian bandwidth yang tidak berubah-ubah.
CBR diterapkan pada website youtube dan
facebook, karena penggunaan bandwidth yang
konstan membuat kualitas pengalaman
berstreaming menjadi lebih baik (Singh, et al.,
2012).
Dari percobaan yang dilakukan oleh Cliff
pada 1 Feb 2016, didapatkan data usage dari
streaming youtube sebagai berikut.
Gambar 3 Youtube Data Usage Per Menit
(Sumber: http://www.clifftam.com/much-data-
youtube-video-use/)
Dari data terlihat konsumsi video resolusi
144p dalam satu menit memakan bandwidth
sebesar 1.90 MB, yang berarti video tersebut
memiliki bitrate 32 Kbps.
Dasar dalam pengembangan video codec
CBR adalah kesederhanaan dalam disain sistem.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1175
Fakultas Ilmu Komputer, Universitas Brawijaya
CBR menunjukkan kompleksitas yang rendah
karena tidak menggunakan statistical
multiplexing. Dan juga, CBR menunjukkan
latency/periode yang rendah untuk setiap frame
video, sekitar 100 ms. Disain CBR mengijinkan
sinkronisasi ulang frame video saat terjadi errors
pada waktu pengiriman paket.
CBR baik digunakan untuk streaming server
yang tidak ingin terganggu oleh Progressive
Download (http). Pada streaming server
diperlukan kontrol bandwidth yang cukup kuat
untuk digunakan pada waktu tertentu dan CBR
mampu melakukan hal itu. Dengan CBR,
encoder memutuskan apakah paket data harus
didrop atau tidak untuk menjaga bit rate agar
tetap konstan (Reflina, 2008).
2.7 Video Coding
Video coding berarti mengkompres,
memapatkan, atau mengecilkan ukuran data
video (Lubis, 2015). Sistem video coding antara
lain:
Gambar 4 Sistem Video Coding
(Sumber: Wien, 2015)
• Video Acquisition—Sumber video
bersekuensial dengan output dalam bentuk
digital. Proses acquisition hanya berlangsung
sementara dan tidak terikat dengan proses
lain.
• Pre-Processing—Kegiatan yang dilakukan
pada video mentah yang belum dikompres.
Seperti melakukan trimming, color format
conversion, color correction, atau de-noising.
• Encoding—Mentransformasi video yang
diinput menjadi coded bitstream. Tujuan
encoding adalah untuk menggenerate
compact representation dari iputan video
yang lebih sesuai untuk metode transmisi
pada aplikasi.
• Transmission—Membungkus bitstream
kedalam format yang tepat dan
ditransmisikan ke channel. Transmission
juga meliputi mengirim dan mengantarkan
video ke sisi penerima.
• Decoding—Transformasi bitstream yang
diterima menjadi sebuah video.
• Post-Processing—Kegiatan yang terjadi
pada data video untuk enhancement atau
untuk adaptation dalam display.
• Display—Presentasi dari video untuk
dikonsumsi. Video perlu ditransfer color
format yang tepat untuk display.
Tahapan proses terjadi setelah menjalankan
beberapa aplikasi. Pada kenyataannya, video
mentah yang belum dikompresi mengalami
proses re-encoding (Wien, 2015).
2.7.1 H.264/AVC
H.264/AVC merupakan codec video yang
memiliki keunggulan dibanding codec video lain
dengan kamampuan untuk encoding video
dengan menekan bitrate pada video agar video
bisa dihasilkan lebih minim daripada video
aslinya. H.264 ini merupakan codec dengan
teknik kompresi dengan memprediksi inter-
frame (Marpe, et al., 2006). Jadi dalam video
yang memiliki ribuan frame di dalamnya,
terdapat beberapa frame yang tidak jauh berbeda
dari frame sebelumnya, terkecuali memiliki
scane dengan latar yang berbeda. Teknik
kompresi H.264 mempertimbangkan tiap frame
yang berlanjut tersebut untuk diencode. Video
standar pada saat ini menggunakan H.264 yang
bisa mengatur seperti apa setingan video yang
ingin diterapkan dari ketajaman, kecerahan, dan
lain sebagainya (Wiegand, et al., 2003).
2.7.2 H.265/HEVC
H.265/HEVC merupakan codec video yang
dikembangkan setelah H.264. Tujuan dari H.265
adalah mengefisiensikan bitrate video dengan
mengompres bitrate dua kali lebih baik agar
menghasilkan ukuran video yang lebih minim
dengan kualitas yang sama dengan aslinya
(Sullivan, et al., 2012). H.265 ini memiliki
keunggulan dari H.264 dari berbagai aspek. Dari
segi subjektif dan objektif visualisasi H.265
memiliki kualitas yang lebih baik dibanding
H.264. Dibanding H.264/AVC, HEVC
menyimpan lebih dari 57% bit rate dari segi
perceptual quality (Ohm, et al., 2012).
2.8 FFmpeg
FFmpeg merupakan sebuah tool open source
yang digunakan untuk encoder dan decoder.
FFmpeg merupakan multimedia yang mampu
memproses dengan sangat baik (Zhang, et al.,
2011). FFmpeg menyediakan fungsi multimedia
sesuai kebutuhan seperti mengecilan resolusi,
framerate, pemotongan, dan lain sebagainya
(Caron, et al., 2007). FFmpeg merupakan tool
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1176
Fakultas Ilmu Komputer, Universitas Brawijaya
video converter praktis dan cepat yang dapat
mengolah video live (FFmpeg, 2012).
2.9 Quality Of Service
Qos tolak ukur suatu jaringan dikatakan baik
dari sisi trafik data yang berputar pada system
tersebut. Qos memiliki beberapa parameter yang
adalah durasi streaming, throughput, delay, dan
jitter.
1. Throughput merupakan bandwidth aktual
dalam satuan Mega bit per detik (Helton, 2013).
𝑇ℎ𝑟𝑜𝑢𝑔ℎ𝑝𝑢𝑡 =𝐽𝑢𝑚𝑙𝑎ℎ 𝑃𝑎𝑘𝑒𝑡 (𝑏𝑦𝑡𝑒𝑠)
𝑇𝑜𝑡𝑎𝑙 𝑊𝑎𝑘𝑡𝑢 (𝑑𝑒𝑡𝑖𝑘)
𝑀𝐵𝑖𝑡/𝐷𝑒𝑡𝑖𝑘 = 𝑇ℎ𝑟𝑜𝑢𝑔ℎ𝑝𝑢𝑡 𝑥 8/106
2. Delay merupakan jeda waktu paket pertama
dan paket berikutnya pada suatu jaringan
(Helton, 2013). 𝐷𝑒𝑙𝑎𝑦 = 𝑊𝑎𝑘𝑡𝑢 𝑘𝑒𝑑𝑎𝑡𝑎𝑛𝑔𝑎𝑛 𝑝𝑎𝑘𝑒𝑡
− 𝐾𝑒𝑑𝑎𝑡𝑎𝑛𝑔𝑎𝑛 𝑠𝑒𝑏𝑒𝑙𝑢𝑚𝑛𝑦𝑎
𝑅𝑎𝑡𝑎 − 𝑅𝑎𝑡𝑎 𝐷𝑒𝑙𝑎𝑦 =𝑇𝑜𝑡𝑎𝑙 𝐷𝑒𝑙𝑎𝑦 (𝑑𝑒𝑡𝑖𝑘)
𝐵𝑎𝑛𝑦𝑎𝑘 𝑃𝑎𝑘𝑒𝑡
Dengan adanya Qos maka suatu jaringan dapat
dikatakan baik berdasarkan data berupa angka
kuantitas (Dawood, et al., 2014).
2.10 Struktur Group Of Pictures
Group of Pictures merupakan cara untuk
melihat karakteristik suatu video. I (Intra coded
frame) artinya frame yang diencode tanpa ada
pertimbangan frame video sebelumnya atau
sesudahnya, lalu P (Predictive coded frame)
artinya frame yang diencde dengan
pertimbangan frame sebelumnya, dan B
(Bipredictive coded frame) artinya frame yang
diencode dengan pertimbangan frame
sebelumnya dan frame ini juga akan dijadikan
rujukan untuk pertimbangan frame setelahnya
(Huszak & Imre, 2010).
Gambar 5 Struktur Group Of Pictures
(Sumber: http://www.joshunwin.com/explained-
inter-frame-intra-frame-and-gop-structure/)
Struktur GOP suatu video pada Gambar 5
terdiri dari frame IPPBP-IPBPP-IPPBP-IPBPP-
IPBPB. Jumlah I pada video tersebut biasanya
berdasarkan perubahan scene pada suatu
film/video yang begitu drastis, contohnya ketika
perubahan scene dari percakapan biasa-biasa
yang mendadak menjadi film aksi penuh efek
dan warna. Jumlah P yang banyak menunjukkan
kalau codec berfungsi secara baik untuk
mengambil informasi frame sebelumnya untuk
diproses. Jumlah B tidak terlalu banyak dan
selalu diapit dalam kedua P menunjukkan sifat B
sebagai frame yang bisa menggunakan frame
sebelumnya untuk diproses dan refrensi untuk
frame selanjutnya. P memiliki ukuran 50% dari
ukuran I, sedangkan ukuran B adalah 20% dari I
(Joshunwin, 2014).
2.11 CPU Usage
CPU usage adalah pemnggunaan kapasitas
CPU oleh device dalam suatu waktu (CPU
Time). CPU time menghitung jumlah clock ticks
atau seconds. Ketika CPU Usage di atas 70%,
pengguna akan merasakan lag (seperti tersendat-
sendat). Semakin tinggi penggunaan CPU maka
semakin tinggi power yang digunakan. CPU
perlu diupgrade dari waktu ke waktu karena
perkembangan teknologi membuat software
membutuhkan resource yang semakin besar
untuk user exprience, bila tidak maka pengguna
harus melakukan pengurangan untuk
menghindari lag, seperti mengurangi resolusi
atau animations pada game.
2.12 Memory Usage
Memory Usage adalah penggunaan RAM
pada suatu device. Heavy memory usage berarti
device kehabisan free RAM. CPU membuthkan
RAM untuk menjalankan perintah secara
singkat, ketika device menggunakan RAM
melebihi kapasitas maka proses yang akan
dieksekusi menjadi lambat (Ivan, 2016).
Gambar 6 Task Manager
Pada windows memory usage bisa dilihat
pada task manager. Perubahan kurva memory
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1177
Fakultas Ilmu Komputer, Universitas Brawijaya
usage bisa dilihat ketika device digunakan untuk
melakukan proses yang banyak dalam waktu
cepat, seperti proses menginstal software atau
bermain game, atau memproses beberapa tab
pada browser secara sekaligus.
3. PERANCANGAN DAN
IMPLEMENTASI
3.1 Gambaran Umum Sistem
Sumber konten sudah berada pada server,
yang kemudian diencode oleh server dan
distreaming oleh client.
Gambar 7 Alur Streaming Video
Untuk melakukan streaming live, server
hanya perlu memproses konten video menjadi
url yang diproses sampai habis, sedangkan untuk
melakukan streaming store, server harus
menyimpan video hasil olahan terlebih dahulu.
3.2 Perancangan Streaming Live
Penerapan video streaming yang disiarkan
tanpa harus mengolah video secara keseluruhan
sebelum bisa distreaming oleh client. Server
mengolah suatu video ke dalam beberapa
spesifikasi, yakni:
1. Perbedaan Bitrate (1000 Kbps dan 400 Kbps)
2. Perbedaan Codec (H264 dan H265)
Kemudian client yang melakukan
streaming video tersebut dalam bandwidth yang
bervariasi:
2 Mbps, 1 Mbps, dan 512 Kbps.
Gambar 8 Data Flow pada Streaming Live
Terlihat pada gambar, proses ini terbagi
menjadi tiga bagian di mana ketiga bagian ini
yakni server, access point, dan client memiliki
peran sendiri-sendiri dalam kegiatan streaming
live
3.3 Perancangan Streaming Store
Penerapan video streaming dapat disiarkan
setelah video diolah secara keseluruhan dalam
beberapa spesifikasi kemudian disimpan dalam
storage server, spesifikasi video tersebut sebagai
berikut:
1. Perbedaan Bitrate (1000 Kbps dan 400
Kbps)
2. Perbedaan Codec (H264 dan H265)
Kemudian client yang melakukan
streaming video tersebut dalam bandwidth yang
bervariasi:
2 Mbps, 1 Mbps, dan 512 Kbps.
Gambar 9 Data Flow pada Streaming Store
Terlihat pada gambar, proses ini terbagi
menjadi tiga bagian di mana ketiga bagian ini
yakni server, access point, dan client memiliki
peran sendiri-sendiri dalam kegiatan streaming
store.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1178
Fakultas Ilmu Komputer, Universitas Brawijaya
3.4 Implementasi pada Server
apache2
apache2 digunakan sebagai basis untuk
streaming store. Tidak ada konfigurasi khusus
setelah melakukan instalisasi karena saat
streaming client menggunakan FFplay dari
fungsi FFmpeg melalui perintah pada terminal.
rtmp-nginx
rtmp-nginx sebagai basis streaming live.
rtmp-nginx memiliki konfigurasi dan aturan
yang harus diperhatikan. Sama seperti streaming
pada streaming store, client pada streaming live
juga menggunakan FFplay melalui perintah
terminal. Namun sebelumnya untuk pemasangan
rtmp-nginx itu sendiri diperlukan beberapa
penyesuaian untuk bisa digunakan.
Instalasi Encoder dan Codec Video
sudo apt-get install ffmpeg
sudo apt-get install libx264-dev
sudo apt-get install libx265-dev
4. PENGUJIAN DAN HASIL
4.1 Streaming Live H.264 vs. H.265
(30fps-400K, 30fps-1000K, 30fps-1500K)
Durasi Streaming (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 10 Durasi Streaming Live
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih rendah daripada H.265 (kanan).
Throughput (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 11 Throughput Streaming Live
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih tinggi daripada H.265 (kanan).
Delay (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 12 Delay Streaming Live
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih rendah daripada H.265 (kanan).
Retransmission (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 13 Retransmission Streaming Live
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih tinggi daripada H.265 (kanan).
4.2 Streaming Store H.264 vs. H.265
(30fps-400K, 30fps-1000K, 30fps-1500K)
Durasi Streaming (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 14 Durasi Streaming Store
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih rendah daripada H.265 (kanan),
meski nilainya hampir mendekati.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1179
Fakultas Ilmu Komputer, Universitas Brawijaya
Throughput (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 15 Throughput Streaming Store
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih tinggi daripada H.265 (kanan)
ketika streaming dilakukan pada bandwidth 2
Mbps.
Delay (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 16 Delay Streaming Store
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih rendah daripada H.265 (kanan
ketika streaming dilakukan pada bandwidth 512
Kbps.
Retransmission (2 Mbps, 1 Mbps, 512 Kbps)
Gambar 17 Retransmisison Streaming Store
Pada gambar terlihat H.264 (kiri) memiliki
nilai yang lebih tinggi daripada H.265 (kanan).
4.3 Struktur GOP (H.264, H.265, RAW)
Pada gambar 18 terlihat encoding dengan
menggunakan codec H.265 memiliki
mekanisme yang lebih baik terlihat dari nilai B
yang lebih tinggi dari nilai B milik H.264.
Gambar 18 Struktur GOP
H.264, H.265, dan RAW
4.4 CPU Usage dan Memory Usage
Gambar 19 CPU Usage dan Memory Usage
Streaming Live
Gambar 20 CPU Usage dan Memory Usage
Streaming Store
Pada gambar terlihat tren H.264 jauh lebih
cepat turunnya daripada H.265 itu membuktikan
encoding dengan H.265 cukup membebani
server.
5. KESIMPULAN
Dari pengujian dapat disimpulkan bahwa:
1. Ketika menggunakan tool FFmpeg untuk
memberi bitrate yang sama pada encode
video dengan codec yang berbeda yakni
H.264 dan H.265, user dapat melakukan
dengan cara memasukkan perintah –b:v
“nominal” di teriminal sebelum
mengeksekusi proses encoding.
2. Codec H.265 dapat diterapkan ketika
melakukan streaming store menggunakan
http streaming, namun ketika ingin
melakukan streaming live dengan rtmp,
rtmp tidak support data dengan format
.mpegts melainkan .flv sedangkan H.265
tidak mendukung format .flv namun
mendukung format .mpegts sehingga untuk
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1180
Fakultas Ilmu Komputer, Universitas Brawijaya
melakukan streaming live menggunakan
codec H.265 dibutuhkan cara proses
konversi dari output .mpegts dengan
protokol udp dan direstransmisi dengan
output .flv dengan protokol rtmp.
3. Dari segi parameter quality of service dapat
ditarik kesimpulan bahwa:
a. Nilai durasi streaming yang distreaming
dengan bandiwidth 2 Mbps, 1 Mbps, dan
512 Kbps ketika live streaming H.264-
30fps-400kbps adalah 22.870 sec, 23.612
sec, dan 24.127 sec, sedangkan ketika live
streaming H.265-30fps-400kbps adalah
34.039 sec, 33.443 sec, dan 33.815 sec, lalu
ketika streaming store H.264-30fps-
400kbps adalah 10.927 sec, 15.052 sec,
17.790 sec, sedangkan ketika streaming
store H.265-30fps-400kbps adalah 11.789
sec, 15.562 sec, 18.255 sec. Maka bisa
dikatakan durasi streaming menggunakan
H.264 lebih kecil daripada saat
menggunakan H.265.
b. Nilai throughput yang distreaming dengan
bandiwidth 2 Mbps, 1 Mbps, dan 512 Kbps
ketika live streaming H.264-30fps-400kbps
adalah 0.28 MBit/sec, 0.28 MBit/sec, dan
0.32 MBit/sec, sedangkan ketika live
streaming H.265-30fps-400kbps adalah
0.18 MBit/sec, 0.19 MBit/sec, dan 0.24
MBit/sec, lalu ketika streaming store
H.264-30fps-400kbps adalah 0.81
MBit/sec, 0.68 MBit/sec, dan 0.64
MBit/sec, sedangkan ketika streaming store
H.265-30fps-400kbps adalah 0.79
MBit/sec, 0.68 MBit/sec, dan 0.63
MBit/sec. Maka bisa dikatakan throughput
H.264 lebih besar daripada throughput
H.265.
c. Nilai delay yang distreaming dengan
bandiwidth 2 Mbps, 1 Mbps, dan 512 Kbps
ketika live streaming H.264-30fps-400kbps
adalah 18.04 ms, 18.28 ms, dan 19.38 ms,
sedangkan ketika live streaming H.265-
30fps-400kbps adalah 24.67 ms, 24.12 ms,
dan 26.11 ms, lalu ketika streaming store
H.264-30fps-400kbps adalah 8.47 ms,
10.61 ms, dan 11.79 ms, sedangkan ketika
streaming store H.265-30fps-400kbps 8.60
ms, 10.67 ms, dan 12.02 ms. Maka bisa
dikatakan delay H.264 lebih kecil daripada
delay H.265.
d. Nilai retransmission yang distreaming
dengan bandiwidth 2 Mbps, 1 Mbps, dan
512 Kbps ketika live streaming H.264-
30fps-400kbps adalah 2.82%, 4.64%, dan
18.11%, sedangkan ketika live streaming
H.265-30fps-400kbps adalah 0.09%,
0.81%, dan 17.98%, lalu ketika streaming
store H.264-30fps-400kbps adalah 19.41%,
27.43%, dan 29.03%, sedangkan ketika
streaming store H.265-30fps-400kbps
adalah 20.29%, 26.94%, dan 28.79%. Maka
bisa dikatakan retransmission H.264 lebih
besar daripada retransmission H.265.
Pada streaming live, H.265 memiliki
retransmission yang jauh lebih kecil daripada
H.264 sedangkan pada streaming store durasi
streaming kedua metode encoding ini relatif
mirip dengan H.264 yang jauh lebih kecil.
Sehingga dapat disimpulkan H.264 lebih baik
dari H.265 dari segi quality of service, karena
memiliki nilai durasi streaming yang lebih
rendah, throughput yang lebih tinggi, dan delay
yang lebih kecil. Dari sisi encoding, H.265
memiliki kompresi B (Bipredictive coded frame)
sebanyak 375 sedangkan pada H.264 sebanyak
359. Dari sisi CPU dan Memory Usage terlihat
penggunaan resource H.265 sedangkan H.264,
yang artinya H.265 lebih menggunakan banyak
CPU dan RAM.
Saran dari penulis untuk penelitian
selanjutnya adalah pengujian codec H.264,
H.265, dan atau yang terbaru menggunakan
metode VBR (Variant Bitrate). Proses encoding
dengan H.265 begitu membebani server
sehingga dibutuhkan server yang lebih baik
daripada server pada pengujian saat ini. Protokol
yang digunakan pada penelitian menjadi berubah
ketika H.265 tidak bisa melakukan streaming
live menggunakan protokol udp, itu membuat
penguji harus mengubah dari video dengan
protokol udp ke video dengan protokol rtmp,
sedangkan ketika H.265 tidak support format .flv
untuk protokol H.265, maka dibutuhkan metode
untuk melakukan pengujian yang lebih
sederhana tanpa media pengubahan protokol
terlebih dahulu.
DAFTAR PUSTAKA
Caron, F., Coulombe, S., & Wu, T. (2007). A
Transcoding Server for the Home
Domain. IEEE.
Doria, T. H., 2013. The Great Codec Debate
The Myths, Realities, and
Considerations You Need to Know
Before Making Your Next Video
Conferencing Purchase. s.l.:Cisco
SMO.
Jurnal Pengembangan Teknologi Informasi dan Ilmu Komputer 1181
Fakultas Ilmu Komputer, Universitas Brawijaya
Guniganti, R. G. (2012). A Comparision of
RTMP and HTTP Protocols with
rescpect to Packet loss and Delay
Variation based on Qoe. Master Thesis
Electrical Engineering.
Huszak, A., & Imre, S. (2010). Analysing GOP
Structure and Packet Loss Effects on
Error Propagation in MPEG–4 Video
Streams. International Syaposium on
Communication, Control, and Signal
Processing (ISCCSP).
Lubis, N. S. (2015). Analisis Perbandingan
Kompresi File Video Dengan Motion
Picture Expert Group-4 Dan Flash
Video Dengan Menggunakan Algoritma
Huffman. Sumatra Utara: Universitas
Sumatra Utara.
Marpe, D., Wiegand, T., & Sullivan, G. J.
(2006). The H.264/MPEG4 advanced
video coding standard and its
applications. IEEE Communications
Magazine.
Merritt, L. (2013). X264: A HIGH
PERFORMANCE H.264/AVC
ENCODER. Seattle: University of
Washington.
Ohm, J.-R., Sullivan, G., Schwarz, H., Tan, T.,
& Wiegand, T. (2012). Comparison of
the coding efficiency of video coding
standards-including High Efficiency
Video Coding (HEVC). IEEE Trans.
Circuits Syst. Video Technol.
Singh, K. D., Hadjadj-Aoul, Y., & Rubino, G.
(2012). Quality of experience
estimation for adaptive HTTP/TCP
video streaming using h.264/AVC.
IEEE.
Sullivan, G. J., Ohm, J., Han, W., & Wiegand,
T. (2012). Overview of the High
Efficiency Video Coding (HEVC)
Standard. IEEE Trans. Circuits Syst.
Video Technol.
Telkom. (2016, 01 31). Penjelasan Indihome
Terkait Kebijakan FUP.
Wiegand, T., Sullivan, G. J., Bjøntegaard, G., &
Luthra, A. (2003). Overview of the
H.264 / AVC Video Coding Standard.
IEEE Transactions on Circuits And
Systems for Video Technology.
Wien, M. (2015). High Efficiency Video
Coding, Coding Tool, and
Specification. Springer.
https://en.wikipedia.org/wiki/YouTube
WikiRTMP. (2017). 2017. Retrieved 1 27,
2017, from
https://en.wikipedia.org/wiki/Real-
Time_Messaging_Protocol#HTTP_tun
neling_.28RTMPT.29
Wulaningsih, T. (2011). Analisa Kinerja Teknik
Kompresi Video Pada Internet Protocol
Televisi (IPTV). ITS.
Zhang, B., Zeng, S., Xu, R., Guo, D., Yan, J., &
Wang, W. (2011). Design and
implementation of a scalable system
architecture for embedded multimedia
terminal. IEEE.