Meet Media API için video codec gereksinimleri

Bu sayfada, iyi bir kullanıcı deneyimi sağlamak için Google Meet Media API istemci video codec'leriyle ilgili temel şartlar verilmektedir.

İşlevsel şartlar

Bu bölümde, codec türleri ve özellikleri için gerekenler belirtilmektedir.

Özellik Gereksinim
Profil AV1 VP9 VP8
Main Profile 0 Yok
Ölçeklenebilirlik Belirli bir codec türü ve profili için kodlama spesifikasyonu gerektiriyorsa kod çözücü, zamansal ölçeklenebilirliği, mekansal ölçeklenebilirliği veya her ikisini de desteklemelidir.
Raw video biçimi

Codec, tek çözünürlükleri (ör. kare genişliği veya yüksekliği 2'nin katı olmadığında; örneğin 133 × 141) işleyebilmelidir. Alt örneklenmiş kroma biçimlerinde, boyut başına kroma örneklerinin sayısı, luma örneklerinin sayısından türetilirken yukarı yuvarlanmalıdır.

Kırpma, dolgu veya ölçeklendirmeye izin verilmez. Çıkış karesinin çözünürlüğü, giriş karesinin çözünürlüğüyle eşleşmelidir.

Operasyonel şartlar

Bu bölümde, video codec'inin çalışması beklenen çeşitli koşullarla ilgili şartlar belirtilmektedir. Bu koşulların ihlali, codec'in kullanımını belirli senaryolarla sınırlayabilir ancak kullanımını tamamen engellemeyebilir. Örneğin, maksimum codec örneği sayısı gerekenden azsa codec, diğer tür veya uygulamalardaki codec'lerle birlikte kullanılabilir.

Parametre Gereksinim
Minimum çözünürlük, piksel ≤ 128 × 128
Maksimum çözünürlük, piksel ≥ 2880 × 1800
Minimum kare hızı, FPS ≤ 1
Maksimum kare hızı, FPS ≥ 30
Minimum bit hızı, kb/sn ≤ 30
Maksimum bit hızı, kb/sn ≥ 5.000
Maksimum kod çözücü örnekleri ≥ 3
Maksimum toplam kod çözme işleme hızı, saniyede piksel sayısı ≥ 3 × 2880 × 1880 × 30

Performans koşulları

Bu bölümde, codec performansı ile ilgili şartlar belirtilmektedir. Bu şartların ihlal edilmesi, kullanıcı deneyimini önemli ölçüde etkileyebilir ve codec'in kullanımını neredeyse kesin olarak engeller.

Parametre Gereksinim
Maksimum kareler arası işleme süresi (saniye) ≤ 1 / max(30, encode_target_frame_rate_fps)
Maksimum anahtar kare işleme süresi (saniye) ≤ 2 / max(30, encode_target_frame_rate_fps)

Kare işleme süresi, iki etkinlik arasındaki zaman farkıdır: 1) codec, kareyi teslim eder ve 2) codec, kareyi alır. Ortalama kare işleme süresi, en az 10 kare içeren ve en az 10 saniye süren bir kayan pencere üzerinden hesaplanır. Maksimum kare işleme süresi, tüm tek tek kare işleme süresi değerleri arasındaki en yüksek değerdir.

İşleme hızı, işlenen kare sayısı (düşen kareler dahil) ile iki etkinlik arasındaki zaman farkının (1) codec son kareyi teslim eder ve 2) codec ilk kareyi teslim eder) bölünmesiyle hesaplanır.

Test durumları

Kullanabileceğiniz test senaryoları şunlardır:

Testler
Kod çözme işleme hızı Aynı anda en fazla üç 2.880 × 1.880 × 30 akışın kodunu çözün ve kod çözücülerin performans şartlarını ihlal etmediğini doğrulayın.
Kod çözücü uygunluğu Önceden kodlanmış bir bit akımı grubunun kodunu çözün. Test kod çözücünün çıkışı, referans kod çözücünün çıkışıyla eşleşmelidir (VP8 ve VP9 için libvpx, AV1 için libaom).
Zaman ölçeklenebilirliği Birden fazla zamansal katmanı (2 ve 3) olan videoların kodunu çözme Test kod çözücünün çıkışı, referans kod çözücünün çıkışıyla eşleşmelidir.
Uzamsal ölçeklenebilirlik Birden fazla uzamsal katman (2 ve 3) içeren videoların kodunu çözme Test kod çözücünün çıkışı, referans kod çözücünün çıkışıyla eşleşmelidir.