Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
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
Decoder harus mendukung skalabilitas temporal, skalabilitas spasial, atau keduanya jika diperlukan oleh
spesifikasi pengodean 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 chroma yang di-subsample, jumlah sampel chroma per dimensi harus dibulatkan ke atas saat berasal dari jumlah sampel luma.
Pemangkasan, padding, atau penskalaan tidak diizinkan. Resolusi frame output harus sesuai dengan
resolusi frame input.
Persyaratan operasional
Bagian ini menentukan persyaratan untuk berbagai kondisi yang diharapkan untuk pengoperasian codec video. Pelanggaran persyaratan ini dapat membatasi penggunaan codec pada sebagian kecil skenario, tetapi tidak selalu mencegahnya digunakan. Misalnya, jika jumlah maksimum instance codec kurang dari
yang diperlukan, codec masih dapat digunakan bersama dengan codec jenis atau
implementasi lainnya.
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
Throughput dekode total maksimum, piksel per detik
≥ 3 × 2880 × 1880 × 30
Persyaratan performa
Bagian ini menentukan persyaratan 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 selisih waktu antara dua peristiwa: 1) codec mengirimkan frame dan 2) codec menerima frame. Waktu pemrosesan frame rata-rata dihitung selama periode geser minimal 10 detik yang berisi 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 terputus, dibagi dengan selisih 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 aliran 2880 × 1880 × 30 secara bersamaan dan verifikasi bahwa 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.
[null,null,["Terakhir diperbarui pada 2025-08-29 UTC."],[],[],null,["# Video codec requirements for Meet Media API\n\n| **Developer Preview:** Available as part of the [Google Workspace Developer Preview Program](https://developers.google.com/workspace/preview), which grants early access to certain features. \n|\n| **To use the Meet Media API to access real-time media from a conference, the Google Cloud project, OAuth principal, and all participants in the conference must be enrolled in the Developer Preview Program.**\n\nThis page provides the basic requirements for Google Meet Media API client video\ncodecs to ensure a good user experience.\n\nFunctional requirements\n-----------------------\n\nThis section specifies the requirements for the codec types and features.\n\n| Feature | Requirement |||\n|------------------|--------|-------------|-----|\n| Profile | AV1 | VP9 | VP8 |\n| Profile | `Main` | `Profile 0` | N/A |\n| Scalability | Decoder must support temporal scalability, spatial scalability, or both if required by the coding specification for given codec type and profile. |||\n| Raw video format | Codec must be capable of processing odd resolutions (such as when frame width or height are not multiple of 2; for example, 133 × 141). For subsampled chroma formats, the number of chroma samples per dimension must be rounded up when derived from the number of luma samples. Cropping, padding, or scaling isn't allowed. Resolution of the output frame must match the resolution of the input frame. |||\n\nOperational requirements\n------------------------\n\nThis section specifies requirements for various conditions the video codec is\nexpected to operate in. Violation of these requirements may restrict the usage\nof the codec to a subset of scenarios but doesn't necessarily prevent it from\nbeing used. For example, if the maximum number of codec instances is less than\nrequired, the codec can still be used together with codecs of other types or\nimplementations.\n\n| Parameter | Requirement |\n|----------------------------------------------------|---------------|---|---|---|\n| Minimum resolution, pixels | ≤ 128 × 128 |\n| Maximum resolution, pixels | ≥ 2880 × 1800 |\n| Minimum frame rate, FPS | ≤ 1 |\n| Maximum frame rate, FPS | ≥ 30 |\n| Minimum bitrate, kbps | ≤ 30 |\n| Maximum bitrate, kbps | ≥ 5000 |\n| Maximum decoder instances | ≥ 3 |\n| Maximum total decode throughput, pixels per second | ≥ 3 × 2880 × 1880 × 30 ||||\n\nPerformance requirements\n------------------------\n\nThis section specifies the requirements on codec performance. Violation of these\nrequirements may significantly impact the user experience and will almost\ncertainly block the usage of the codec.\n\n| Parameter | Requirement |\n|----------------------------------------------|-----------------------------------------------|\n| Maximum inter frame processing time, seconds | ≤ `1 / max(30, encode_target_frame_rate_fps)` |\n| Maximum key frame processing time, seconds | ≤ `2 / max(30, encode_target_frame_rate_fps)` |\n\nThe frame processing time is the time difference between two events: 1) codec\ndelivers the frame and 2) codec receives the frame. The average frame processing\ntime is calculated over a sliding window of at least **10 seconds** duration\nholding at least **10 frames**. The maximum frame processing time is the highest\nvalue among all individual frame processing time values.\n\nThe throughput is calculated as the number of processed frames, including\ndropped ones, divided by time delta between the two events: 1) codec delivers\nthe last frame and 2) codec delivers the first frame.\n\nTest cases\n----------\n\nThe following are test cases you can use:\n\n| Tests |\n|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Decode throughput | Decode up to three 2880 × 1880 × 30 streams simultaneously and verify that decoders don't violate the performance requirements. |\n| Decoder conformance | Decode a set of pre-encoded bitstreams. The output of the test decoder must match the output of a reference decoder (`libvpx` for VP8 \\& VP9, `libaom` for AV1). |\n| Temporal scalability | Decode video with multiple temporal layers (2 and 3). The output of the test decoder must match the output of the reference decoder. |\n| Spatial scalability | Decode video with multiple spatial layers (2 and 3). The output of the test decoder must match the output of the reference decoder. |\n\nRelated topics\n--------------\n\n- [Get started with Meet Media API](/workspace/meet/media-api/guides/get-started)"]]