/* Общая проверка независимого KEY (configuration + Annex B AU). Не переписывает поток. * Проверяет ограниченный набор для звонков: AVC Baseline/CB, HEVC Main/Main tier, * progressive 8-bit 4:2:0, один spatial/temporal layer, без reorder. DPB — по Annex A. * Результат публикуется целиком только после успешной проверки VPS/SPS/PPS и IDR. * Все функции доступны worker-потокам; состояния и платформенных объектов нет. */ #ifndef CALL_VIDEO_BITSTREAM_H #define CALL_VIDEO_BITSTREAM_H #include "call_video.h" #ifdef __cplusplus extern "C" { #endif struct call_video_bitstream { unsigned width, height, level, profile, dpb; }; int call_video_inspect_key(int codec, const uint8_t *data, size_t length, struct call_video_bitstream *out); int call_video_check_key(const struct call_video_format *format, const uint8_t *data, size_t length); /* Копирует эталонный KEY (буфер 8192 байт достаточен), возвращает размер или -1. */ int call_video_probe_key(int codec, int profile, uint8_t *out, size_t capacity); #ifdef __cplusplus } #endif #endif