Gambar 2.4 H.261 source coder
2.4.2 H.263
Pada Februari 1995 ITU-T SG15 mengeluarkan standar H.263 yang dirancang untuk penggunaan komunikasi bit-rate namun tidak pernah berjalan dengan baik ketika melalui
jaringan POTS Plain Old Telephone Service. Standar H.263 telah menggantikan standar H.261 untuk video conferencing di beberapa aplikasi dan mendominasi standarisasi untuk beberapa
aplikasi internet video streaming sekarang ini. Algoritma pengkodean H.263 hampir sama dengan H.261 namun dengan beberapa perbaikan dan perubahan untuk meningkatkan kinerja
dan pemulihan kesalahan dalam pengcodingan. Selain QCIF dan CIF yang didukung oleh H.261, standar H.263 mendukung resolusi SQCIF, 4CIF, dan 16CIF. SQCIF memiliki sekitar setengah
resolusi dari QCIF. 4CIF dan 16CIF masing-masing adalah 4 dan 16 kali dari resolusi CIF. Gambaran source coder H.263, berdasarkan ITU :
Gambar 2.4 H.263 source coder
H.263 menggunakan hybrid of inter-picture prediction untuk memanfaatkan keadaan
kosong sementara dan mengubah kode dari sinyal yang tersisa untuk mengurangi terjadinya ruang kosong.
Dengan mode motion vector yang tak terbatas, motion vector diizinkan untuk menunjuk ke luar gambar. Pixel terujung digunakan sebagai prediksi untuk pixel yang belum ada. Dengan
mode ini, keuntungan yang signifikan dicapai jika ada gerakan di tepi gambar, terutama untuk format gambar yang lebih kecil.
Coding aritmatika berbasis Sintaks berarti bahwa coding aritmetika digunakan sebagai
pengganti coding panjang variabel. SNR dan rekonstruksi frame akan sama, tetapi secara signifikan lebih sedikit bit yang akan diproduksi.
2.4.3 H.264
Berdasarkan ISOIEC 14496-10, Standar H.264AVC pertama kali diterbitkan pada Mei tahun 2003 dan dibangun berdasarkan pada konsep awal standar seperti MPEG-2 dan
MPEG-4 Visual. H.264 menawarkan efisiensi kompresi yang lebih baik yakni kompresi video yang lebih berkualitas dan fleksibilitas yang lebih besar dalam melakukan kompresi, transmisi
dan penyimpanan video. Video encoder pada H.264 dapat melakukan prediksi, transform dan proses encoding untuk menghasilkan kompresi bitstream H.264. Sedangkan video decoder H.264
dapat melakukan proses decoding secara lengkap, inverse transform dan rekonstruksi untuk memnghasilkan sebuah urutan video yang telah diencode. Dibandingkan dengan standar seperti
MPEG-2 dan MPEG-4 Visual, H.264 memiliki kelebihan antara lain: -
Kualitas gambar yang lebih baik pada bitrate kompresi yang sama -
Kecepatan bit kompresi yang lebih rendah untuk kualitas gambar yang sama. -
Standar H.264 menawarkan fleksibilitas yang lebih besar dari segi kompresi dan transmisi. Sebuah encoder H.264 dapat memilih dari berbagai jenis alat kompresi,
sehingga cocok untuk aplikasi mulai dari bitrate rendah hingga transmisi HDTV ke konsumen televisi.
Gambaran source coder H.264 berdasarkan ITU :
Gambar 2.5 H.264 source coder Encoder : Forward path
Frame masukan Fn digunakan untuk proses encoding. Frame tersebut diproses dalam
unit macroblock berdasarkan 16x16 pixel dari gambar asli. Setiap macroblock di-encode menjadi mode intra atau inter. Pada salah satu kasus, prediksi macroblock P dibentuk
berdasarkan sebuah frame yang direkonstruksi. Intra coding menyediakan akses menuju ke urutan kode ketika proses decoding berjalan lancar. Intra coding menggunakan bermacam-
macam mode prediksi ruang untuk mengurangi ruang yang berlebihan pada sinyal sumber untuk satu gambar. Pada mode intra, P dibentuk dari sampel pada frame yang ada di saat itu yang
sudah di-encode, di-decode, dan direkonstruksi sebelumnya uF
n
pada gambar 2.5; menjelaskan bahwa sampel yang tidak difilter digunakan untuk membentuk P. Inter coding prediksi atau bi-
prediksi lebih efisien, ketika prediksi dari setiap blok sampel sudah dilakukan dari frame ke frame
yang saling berhubungan akan digunakan motion vectors. Pada gambar 2.5 frame yang
berhubungan ditunjukkan oleh frame yang di-encode sebelumnya F’
n-1
, namun prediksi dari tiap macroblock
mungkin dibentuk dari satu atau dua frame yang lalu atau yang akan datang yang sudah di-encode dan direkonstruksi. Prediksi P dikurangi dari macroblock saat itu untuk
menghasilkan sisa macroblock atau macroblock yang berbeda Dn. Prediksi sisa kemudian dikompresi menggunakan transform menggunakan block transform untuk mengurangi korelasi
ruang kosong pada block sebelum terkuantisasi. Transformed dan quantized memberi X, satu set koefisien dari quantized transform. Koefisien ini dikirim kembali dan di-encode menggunakan
kode entropy seperti context-adaptive variable length codes CAVLC atau context adaptive binary arithmetic coding CABAC. Koefisien entropy di-encode, bersama dengan informasi
yang diperlukan untuk proses decode macroblock seperti macroblock prediction mode, quantizer step size
, motion vector information yang mendeskripsikan bagaimana macroblock telah menjadi motion-compensated, dll dari aliran bit yang terkompresi. Proses tersebut
melewati Network Abstraction Layer NAL untuk transmisi ataupun penyimpanan.
Encoder:Reconstruction Path
Koefisien quantized macroblock X di-decode saat pengiriman untuk merekonstruksi sebuah frame untuk proses encode dari macroblock berikutnya. Koefisien X kembali
ditingkatkan Q
-1
dan transform di-invers T
-1
untuk menghasilkan sebuah macroblock yang berbeda D
n
’. Hal tersebut tidak identik dengan macroblock asli yang berbeda D
n
; proses quantization
menghasilkan paket hilang dan D
n
’ menjadi versi Dn yang menyimpang. Prediksi macroblock
P ditambahkan ke D
n
’ untuk membuat sebuah rekonstruksi macroblock uF’
n
versi menyimpang dari macroblock sebenarnya. Sebuah deblocking filter dijalankan untuk
mengurangi efek penyimpangan blok pada batas block dan reconstructed reference frame dibuat dari rangkaian macroblock F’
n
.
Decoder
Decode r menerima aliran bit yang terkompresi dari NAL. Elemen data ter-decode secara
entropi dan diurutkan kembali ke sebuah set dari koefisien X yang terkuantisasi. Kemudian ditingkatkan kembaliinverse quantized dan dilakukan inverse transformed untuk menghasilkan
D
n’
yang identik dengan D
n
’ pada encoder. Proses ini menggunakan informasi header yang di- decode
dari aliran bit, peng-decode membuat prediksi macroblock P, identik pada prediksi P yang sebenarnya yang diberntuk pada peng-encode. P kemudian ditambahkan ke D
n
’ untuk menghasilkan uF’
n
yang difilter untuk membuat macroblock F’
n
yang di-decode.
2.5 Packet Flow