Video Coding - Toleransi Kerugian Pakej yang Lebih Baik
Sep 25, 2018
Video Coding - Toleransi Kerugian Pakej yang Lebih Baik

Aliran video H.264 semasa (bukan hierarki) sangat matang dari segi pemampatan data, dan semua kaedah yang dipelajari dari buku digunakan apabila memampatkan data. Salah satu yang paling penting ialah menghantar kenaikan. maklumat. Jika bingkai imej video hanya sedikit berubah berdasarkan bingkai sebelumnya, maka apabila menghantar imej bingkai, tidak perlu untuk menghantar maklumat yang tidak diubah. Codec hanya akan menghantar maklumat tambahan dan memaklumkan penerima: "Piksel ini telah membuat perubahan sedemikian sementara piksel lain tetap utuh." Dengan cara ini, maklumat yang akan dihantar jauh lebih rendah daripada maklumat yang dihantar oleh imej keseluruhan bingkai, supaya kesan mampatan lebih baik.
Walau bagaimanapun, apabila rangkaian mempunyai kehilangan paket, kelemahan kaedah penghantaran maklumat tambahan ini akan diserlahkan. Setelah satu paket hilang, akhir penerimaan tidak dapat memperoleh maklumat perubahan terkini bingkai imej video, sehingga imej video akan mengalami sedikit kesilapan. Apabila paket seterusnya tercapai, imej itu sendiri dibina atas maklumat yang salah, jadi kualiti imej lebih buruk lagi. Sebagai tindak balas kepada masalah ini, codec semasa menggunakan kaedah menghantar maklumat bingkai gambar lengkap dari semasa ke semasa. Sebaik sahaja kehilangan paket berlaku, penerima boleh meminta untuk mengemas kini keseluruhan bingkai imej untuk mempercepat proses pemangkasan. Walau bagaimanapun, ini akan menyebabkan kelewatan rangkaian keseluruhan, serta masa pemprosesan dalaman codec, hasilnya jelas.
Terdapat juga beberapa vendor yang menggunakan algoritma pembetulan ralat ke hadapan (FEC) untuk menyelesaikan masalah ini. FEC adalah sejenis algoritma pengekodan blok yang meningkatkan ketepatan dengan membuat maklumat yang berlebihan dan menghantar maklumat berlebihan bersama dengan aliran paket asal. Maklumat berlebihan ini boleh membantu membina semula paket yang hilang dalam rangkaian, dengan syarat maklumat yang betul dan maklumat yang berlebihan mencukupi. Kaedah ini kedengarannya baik, tetapi sudah tentu kosnya sedikit. Oleh kerana codec juga perlu menghantar maklumat yang berlebihan, keperluan bandwidth untuk rangkaian meningkat dengan sewajarnya. Sesetengah codec menjamin jalur lebar penghantaran yang berterusan (video ditambah overhed FEC) dengan mengorbankan jalur lebar yang diperuntukkan kepada video. Jelas sekali, ini akan membawa kerugian kepada kualiti aliran video. Di samping itu, dalam algoritma FEC, sebelum kod FEC dihantar, paket data mesti dibuat dan kod FEC mesti dikira. Pada akhir penerimaan, paket data dan maklumat yang berlebihan perlu dikumpulkan untuk membina semula paket data yang hilang, yang tidak dapat dielakkan Meningkatkan kelewatan. Peningkatan kelewatan akan mengurangkan interaktiviti komunikasi video dan meningkatkan kesukaran perbualan dua hala.
Jadi, apa yang boleh menyelesaikan masalah SVC ini? Kami tahu bahawa SVC mencipta imej video melalui lapisan asas dan satu atau lebih lapisan peningkatan, yang dibawa dalam paket data yang berbeza pada rangkaian, kesan kehilangan paket data lapisan dasar dan hasil pengekodan bukan hierarki. Ia konsisten, tetapi kesan peningkatan paket packet loss adalah lebih kecil. Oleh kerana lapisan peningkatan didasarkan pada lapisan asas dan bukannya imej bingkai depan, kehilangan packet lapisan peningkatan hanya menyebabkan ketajaman sementara dan kerentanan kadar bingkai tanpa menjejaskan seni bina asas imej video.
Kod FEC boleh melindungi maklumat lapisan asas aliran video SVC dengan cara yang sama seperti pengekodan bukan hierarki. Dalam komunikasi video SVC dengan keperluan resolusi yang lebih rendah, penggunaan kod FEC juga mempunyai masalah batasan, overhed dan kelewatan pengekodan jalur lebar yang rendah bukan hierarki. Dalam keperluan jalur lebar yang lebih tinggi, perbezaan antara teknik pengekodan video bertingkat dan tidak boleh dilapis sangat jelas. Ini kerana hanya ada overhead di lapisan asas, tetapi tidak dalam lapisan penambahbaikan. Sebagai contoh, jika kod FEC menambah jumlah overhead 20%, dan lapisan asas hanya menduduki 25% daripada jalur lebar keseluruhan komunikasi video, iaitu, dalam pengekodan video berlapis, kod FEC hanya menduduki 5% daripada keseluruhan komunikasi video. Jalur lebar, sementara kod FEC menduduki 20% daripada lebar jalur keseluruhan dalam pengekodan video yang tidak dapat dilapis.
Oleh itu, kelebihan teknologi pengekodan video berlapis di sini ditunjukkan dalam kombinasi seni bina aliran berlapis dan perlindungan asas FEC lapisan. Untuk panggilan jalur lebar rendah, kesan yang dicapai oleh pengekodan video berlapis dan pengekodan video bukan berlapis adalah sama. Walau bagaimanapun, dalam panggilan jalur lebar tinggi, pengekodan video berlapis boleh memberikan video berkualiti tinggi dalam rangkaian yang mudah untuk menjatuhkan paket, dan memerlukan perlindungan kurang daripada pengekodan video yang tidak dapat dilapis.




