Yêu cầu về bộ mã hoá và giải mã video cho Meet Media API

Trang này cung cấp các yêu cầu cơ bản đối với bộ mã hoá/giải mã video của ứng dụng khách Google Meet Media API để đảm bảo trải nghiệm tốt cho người dùng.

Yêu cầu về chức năng

Phần này chỉ định các yêu cầu đối với loại bộ mã hoá/giải mã và tính năng.

Tính năng Yêu cầu
Hồ sơ AV1 VP9 VP8
Main Profile 0 Không áp dụng
Khả năng mở rộng quy mô Bộ giải mã phải hỗ trợ khả năng mở rộng quy mô theo thời gian, khả năng mở rộng quy mô theo không gian hoặc cả hai nếu thông số kỹ thuật mã hoá yêu cầu đối với loại bộ mã hoá/giải mã và hồ sơ đã cho.
Định dạng video thô

Bộ mã hoá/giải mã phải có khả năng xử lý độ phân giải lẻ (chẳng hạn như khi chiều rộng hoặc chiều cao khung hình không phải là bội số của 2; ví dụ: 133 × 141). Đối với các định dạng sắc độ được lấy mẫu phụ, số lượng mẫu sắc độ trên mỗi chiều phải được làm tròn lên khi được lấy từ số lượng mẫu độ sáng.

Không được phép cắt, thêm khoảng đệm hoặc điều chỉnh tỷ lệ. Độ phân giải của khung hình đầu ra phải khớp độ phân giải của khung hình đầu vào.

Yêu cầu về hoạt động

Phần này chỉ định các yêu cầu đối với nhiều điều kiện mà bộ mã hoá/giải mã video dự kiến sẽ hoạt động. Việc vi phạm các yêu cầu này có thể hạn chế việc sử dụng bộ mã hoá/giải mã đối với một số trường hợp nhưng không nhất thiết ngăn việc sử dụng bộ mã hoá/giải mã. Ví dụ: nếu số lượng thực thể bộ mã hoá/giải mã tối đa ít hơn mức cần thiết, thì bạn vẫn có thể sử dụng bộ mã hoá/giải mã cùng với bộ mã hoá/giải mã thuộc các loại hoặc cách triển khai khác.

Tham số Yêu cầu
Độ phân giải tối thiểu, pixel ≤ 128 × 128
Độ phân giải tối đa, pixel ≥ 2880 × 1800
Tốc độ khung hình tối thiểu, FPS ≤ 1
Tốc độ khung hình tối đa, FPS ≥ 30
Tốc độ bit tối thiểu, kbps ≤ 30
Tốc độ bit tối đa, kbps ≥ 5000
Số thực thể bộ giải mã tối đa ≥ 3
Tổng thông lượng giải mã tối đa, pixel mỗi giây ≥ 3 × 2880 × 1880 × 30

Yêu cầu về hiệu suất

Phần này chỉ định các yêu cầu về hiệu suất của bộ mã hoá/giải mã. Việc vi phạm các yêu cầu này có thể ảnh hưởng đáng kể đến trải nghiệm người dùng và gần như chắc chắn sẽ chặn việc sử dụng bộ mã hoá/giải mã.

Tham số Yêu cầu
Thời gian xử lý tối đa giữa các khung hình, giây 1 / max(30, encode_target_frame_rate_fps)
Thời gian xử lý tối đa của khung hình chính, giây 2 / max(30, encode_target_frame_rate_fps)

Thời gian xử lý khung hình là khoảng thời gian giữa hai sự kiện: 1) bộ mã hoá/giải mã phân phối khung hình và 2) bộ mã hoá/giải mã nhận khung hình. Thời gian xử lý khung hình trung bình được tính trên một cửa sổ trượt có thời lượng ít nhất là 10 giây và chứa ít nhất 10 khung hình. Thời gian xử lý khung hình tối đa là giá trị cao nhất trong số tất cả các giá trị thời gian xử lý khung hình riêng lẻ.

Thông lượng được tính bằng số khung hình đã xử lý (bao gồm cả khung hình bị loại bỏ) chia cho khoảng thời gian delta giữa hai sự kiện: 1) bộ mã hoá và giải mã phân phối khung hình cuối cùng và 2) bộ mã hoá và giải mã phân phối khung hình đầu tiên.

Các trường hợp kiểm thử

Sau đây là các trường hợp kiểm thử mà bạn có thể sử dụng:

Thử nghiệm
Thông lượng giải mã Giải mã đồng thời tối đa 3 luồng 2880 × 1880 × 30 và xác minh rằng bộ giải mã không vi phạm các yêu cầu về hiệu suất.
Mức độ tuân thủ của bộ giải mã Giải mã một nhóm luồng bit được mã hoá trước. Đầu ra của bộ giải mã kiểm thử phải khớp với đầu ra của bộ giải mã tham chiếu (libvpx cho VP8 và VP9, libaom cho AV1).
Khả năng mở rộng quy mô theo thời gian Giải mã video có nhiều lớp thời gian (2 và 3). Đầu ra của bộ giải mã kiểm thử phải khớp với đầu ra của bộ giải mã tham chiếu.
Khả năng mở rộng quy mô theo không gian Giải mã video có nhiều lớp không gian (2 và 3). Đầu ra của bộ giải mã kiểm thử phải khớp với đầu ra của bộ giải mã tham chiếu.