이 페이지에서는 우수한 사용자 환경을 보장하기 위한 Google Meet Media API 클라이언트 동영상 코덱의 기본 요구사항을 제공합니다.
기능 요구사항
이 섹션에서는 코덱 유형 및 기능의 요구사항을 지정합니다.
기능
요구사항
프로필
AV1
VP9
VP8
Main
Profile 0
해당 사항 없음
확장성
디코더는 지정된 코덱 유형 및 프로필의 코딩 사양에 필요한 경우 시간 확장성, 공간 확장성 또는 둘 다를 지원해야 합니다.
원시 동영상 형식
코덱은 홀수 해상도 (예: 프레임 너비나 높이가 2의 배수가 아님, 133×141)를 처리할 수 있어야 합니다. 서브샘플링된 크로마 형식의 경우 차원당 크로마 샘플 수는 루마 샘플 수에서 파생될 때 반올림해야 합니다.
자르기, 패딩, 크기 조정은 허용되지 않습니다. 출력 프레임의 해상도는 입력 프레임의 해상도와 일치해야 합니다.
운영 요구사항
이 섹션에서는 동영상 코덱이 작동해야 하는 다양한 조건의 요구사항을 명시합니다. 이러한 요구사항을 위반하면 코덱 사용이 일부 시나리오로 제한될 수 있지만 사용이 반드시 방지되는 것은 아닙니다. 예를 들어 최대 코덱 인스턴스 수가 필요한 수보다 적은 경우 코덱은 다른 유형이나 구현의 코덱과 함께 계속 사용할 수 있습니다.
매개변수
요구사항
최소 해상도(픽셀)
≤ 128 × 128
최대 해상도(픽셀)
≥ 2880 × 1800
최소 프레임 속도, FPS
≤ 1
최대 프레임 속도, FPS
≥ 30
최소 비트 전송률(kbps)
≤ 30
최대 비트 전송률(kbps)
5,000개 이상
최대 디코더 인스턴스
≥ 3
최대 총 디코딩 처리량, 초당 픽셀 수
≥ 3 × 2880 × 1880 × 30
성능 요구사항
이 섹션에서는 코덱 성능에 관한 요구사항을 명시합니다. 이러한 요구사항을 위반하면 사용자 환경에 상당한 영향을 미칠 수 있으며 코덱 사용이 차단될 가능성이 매우 높습니다.
매개변수
요구사항
최대 프레임 간 처리 시간(초)
≤ 1 / max(30, encode_target_frame_rate_fps)
최대 키 프레임 처리 시간(초)
≤ 2 / max(30, encode_target_frame_rate_fps)
프레임 처리 시간은 코덱이 프레임을 전송하는 이벤트와 코덱이 프레임을 수신하는 이벤트 간의 시간 차이입니다. 평균 프레임 처리 시간은 10프레임 이상을 포함하는 10초 이상의 슬라이딩 윈도우에서 계산됩니다. 최대 프레임 처리 시간은 모든 개별 프레임 처리 시간 값 중 가장 높은 값입니다.
처리량은 삭제된 프레임을 포함한 처리된 프레임 수를 코덱이 마지막 프레임을 전달하는 시점과 코덱이 첫 번째 프레임을 전달하는 시점 사이의 시간 델타로 나눈 값으로 계산됩니다.
테스트 사례
사용할 수 있는 테스트 사례는 다음과 같습니다.
테스트
디코딩 처리량
최대 3개의 2880×1880×30 스트림을 동시에 디코딩하고 디코더가 성능 요구사항을 위반하지 않는지 확인합니다.
디코더 적합성
미리 인코딩된 비트스트림 집합을 디코딩합니다. 테스트 디코더의 출력은 참조 디코더 (VP8 및 VP9의 경우 libvpx, AV1의 경우 libaom)의 출력과 일치해야 합니다.
시간적 확장성
여러 시간 레이어 (2 및 3)로 동영상을 디코딩합니다. 테스트 디코더의 출력은 참조 디코더의 출력과 일치해야 합니다.
공간 확장성
공간 레이어가 여러 개 (2개 및 3개)인 동영상을 디코딩합니다. 테스트 디코더의 출력은 참조 디코더의 출력과 일치해야 합니다.
[null,null,["최종 업데이트: 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)"]]