Persyaratan codec video untuk Meet Media API

Halaman ini memberikan persyaratan dasar untuk codec video klien Google Meet Media API guna memastikan pengalaman pengguna yang baik.

Persyaratan fungsional

Bagian ini menentukan persyaratan untuk jenis dan fitur codec.

Fitur Persyaratan
Profil AV1 VP9 VP8
Main Profile 0 T/A
Skalabilitas Dekoder harus mendukung skalabilitas temporal, skalabilitas spasial, atau keduanya jika diperlukan oleh spesifikasi coding untuk jenis dan profil codec tertentu.
Format video mentah

Codec harus dapat memproses resolusi ganjil (seperti saat lebar atau tinggi frame bukan kelipatan 2; misalnya, 133 × 141). Untuk format kroma subsampling, jumlah sampel kroma per dimensi harus dibulatkan ke atas saat berasal dari jumlah sampel luma.

Pemangkasan, padding, atau penskalaan tidak diizinkan. Resolusi frame output harus cocok dengan resolusi frame input.

Persyaratan operasional

Bagian ini menentukan persyaratan untuk berbagai kondisi tempat codec video diharapkan beroperasi. Pelanggaran persyaratan ini dapat membatasi penggunaan codec ke sebagian skenario, tetapi tidak selalu mencegahnya digunakan. Misalnya, jika jumlah maksimum instance codec kurang dari yang diperlukan, codec masih dapat digunakan bersama dengan codec dari jenis atau implementasi lain.

Parameter Persyaratan
Resolusi minimum, piksel ≤ 128 × 128
Resolusi maksimum, piksel ≥ 2880 × 1800
Kecepatan frame minimum, FPS ≤ 1
Kecepatan frame maksimum, FPS ≥ 30
Kecepatan bit minimum, kbps ≤ 30
Kecepatan bit maksimum, kbps ≥ 5.000
Instance decoder maksimum ≥ 3
Total throughput dekode maksimum, piksel per detik ≥ 3 × 2880 × 1880 × 30

Persyaratan performa

Bagian ini menentukan persyaratan pada performa codec. Pelanggaran terhadap persyaratan ini dapat memengaruhi pengalaman pengguna secara signifikan dan hampir pasti akan memblokir penggunaan codec.

Parameter Persyaratan
Waktu pemrosesan antar-frame maksimum, detik 1 / max(30, encode_target_frame_rate_fps)
Waktu pemrosesan frame utama maksimum, detik 2 / max(30, encode_target_frame_rate_fps)

Waktu pemrosesan frame adalah perbedaan waktu antara dua peristiwa: 1) codec mengirimkan frame dan 2) codec menerima frame. Waktu pemrosesan frame rata-rata dihitung selama periode geser dengan durasi minimal 10 detik yang menyimpan minimal 10 frame. Waktu pemrosesan frame maksimum adalah nilai tertinggi di antara semua nilai waktu pemrosesan frame individual.

Throughput dihitung sebagai jumlah frame yang diproses, termasuk frame yang dihapus, dibagi dengan delta waktu antara dua peristiwa: 1) codec mengirimkan frame terakhir dan 2) codec mengirimkan frame pertama.

Kasus pengujian

Berikut adalah kasus pengujian yang dapat Anda gunakan:

Pengujian
Throughput dekode Dekode hingga tiga streaming 2880 × 1880 × 30 secara bersamaan dan pastikan dekoder tidak melanggar persyaratan performa.
Kesesuaian decoder Mendekode serangkaian bitstream yang telah dienkode sebelumnya. Output decoder pengujian harus cocok dengan output decoder referensi (libvpx untuk VP8 & VP9, libaom untuk AV1).
Skalabilitas temporal Mendekode video dengan beberapa lapisan temporal (2 dan 3). Output decoder pengujian harus cocok dengan output decoder referensi.
Skalabilitas spasial Mendekode video dengan beberapa lapisan spasial (2 dan 3). Output decoder pengujian harus cocok dengan output decoder referensi.