Я пишу API кодирования видео на C ++ с помощью ffmpeg. Уровень видео является одним важным параметром, но я не знаю, как назначить его AVCodecContext.
Я прочитал документ ffmpeg и выяснил, что"level" - это тип int, ниже - определение в строке 3014 файла avcodec.h.
/**
3010 * level
3011 * - encoding: Set by user.
3012 * - decoding: Set by libavcodec.
3013 */
3014 int level;
3015 #define FF_LEVEL_UNKNOWN -99
, согласно моему поиску в Google, значение level равно 1.1 (1.2,1.3,2 ...) до 5.2, очевидно, это не тип int.Я думаю, что уровень должен быть типом enum, но я не могу найти какое-либо определение по этому поводу.
Я вижу некоторое использование в Интернете, такое как:
AVCodecContect *pCtx;
pCtx->level = 3;
....//or
pCtx->level = 50;
, но я думаю, что этонеправильное использование ... Я думаю, что правильный способ присвоения выглядит примерно так:
pCtx->level = FF_LEVEL_UNKNOWN;
, поэтому мне интересно, есть ли какое-нибудь соответствующее определение типа enum относительно уровня и как его найти.