H.263 H.264 Codec Video

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