mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-12-16 12:00:06 +01:00
avcodec/defs: Add AV_PROFILE_* defines, deprecate FF_PROFILE_* defines
These defines are also used in other contexts than just AVCodecContext ones, e.g. in libavformat. Furthermore, given that these defines are public, the AV-prefix is the right one, so deprecate (and not just move) the FF-macros. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
@@ -61,11 +61,11 @@ typedef struct SVCContext {
|
||||
#define DEPRECATED AV_OPT_FLAG_DEPRECATED
|
||||
static const AVOption options[] = {
|
||||
{ "loopfilter", "enable loop filter", OFFSET(loopfilter), AV_OPT_TYPE_INT, { .i64 = 1 }, 0, 1, VE },
|
||||
{ "profile", "set profile restrictions", OFFSET(profile), AV_OPT_TYPE_INT, { .i64 = FF_PROFILE_UNKNOWN }, FF_PROFILE_UNKNOWN, 0xffff, VE, "profile" },
|
||||
{ "profile", "set profile restrictions", OFFSET(profile), AV_OPT_TYPE_INT, { .i64 = AV_PROFILE_UNKNOWN }, AV_PROFILE_UNKNOWN, 0xffff, VE, "profile" },
|
||||
#define PROFILE(name, value) name, NULL, 0, AV_OPT_TYPE_CONST, { .i64 = value }, 0, 0, VE, "profile"
|
||||
{ PROFILE("constrained_baseline", FF_PROFILE_H264_CONSTRAINED_BASELINE) },
|
||||
{ PROFILE("main", FF_PROFILE_H264_MAIN) },
|
||||
{ PROFILE("high", FF_PROFILE_H264_HIGH) },
|
||||
{ PROFILE("constrained_baseline", AV_PROFILE_H264_CONSTRAINED_BASELINE) },
|
||||
{ PROFILE("main", AV_PROFILE_H264_MAIN) },
|
||||
{ PROFILE("high", AV_PROFILE_H264_HIGH) },
|
||||
#undef PROFILE
|
||||
{ "max_nal_size", "set maximum NAL size in bytes", OFFSET(max_nal_size), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE },
|
||||
{ "allow_skip_frames", "allow skipping frames to hit the target bitrate", OFFSET(skip_frames), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE },
|
||||
@@ -177,12 +177,12 @@ FF_ENABLE_DEPRECATION_WARNINGS
|
||||
param.iMultipleThreadIdc = avctx->thread_count;
|
||||
|
||||
/* Allow specifying the libopenh264 profile through AVCodecContext. */
|
||||
if (FF_PROFILE_UNKNOWN == s->profile &&
|
||||
FF_PROFILE_UNKNOWN != avctx->profile)
|
||||
if (AV_PROFILE_UNKNOWN == s->profile &&
|
||||
AV_PROFILE_UNKNOWN != avctx->profile)
|
||||
switch (avctx->profile) {
|
||||
case FF_PROFILE_H264_HIGH:
|
||||
case FF_PROFILE_H264_MAIN:
|
||||
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
|
||||
case AV_PROFILE_H264_HIGH:
|
||||
case AV_PROFILE_H264_MAIN:
|
||||
case AV_PROFILE_H264_CONSTRAINED_BASELINE:
|
||||
s->profile = avctx->profile;
|
||||
break;
|
||||
default:
|
||||
@@ -191,34 +191,34 @@ FF_ENABLE_DEPRECATION_WARNINGS
|
||||
break;
|
||||
}
|
||||
|
||||
if (s->profile == FF_PROFILE_UNKNOWN && s->coder >= 0)
|
||||
s->profile = s->coder == 0 ? FF_PROFILE_H264_CONSTRAINED_BASELINE :
|
||||
if (s->profile == AV_PROFILE_UNKNOWN && s->coder >= 0)
|
||||
s->profile = s->coder == 0 ? AV_PROFILE_H264_CONSTRAINED_BASELINE :
|
||||
#if OPENH264_VER_AT_LEAST(1, 8)
|
||||
FF_PROFILE_H264_HIGH;
|
||||
AV_PROFILE_H264_HIGH;
|
||||
#else
|
||||
FF_PROFILE_H264_MAIN;
|
||||
AV_PROFILE_H264_MAIN;
|
||||
#endif
|
||||
|
||||
switch (s->profile) {
|
||||
case FF_PROFILE_H264_HIGH:
|
||||
case AV_PROFILE_H264_HIGH:
|
||||
av_log(avctx, AV_LOG_VERBOSE, "Using %s, "
|
||||
"select EProfileIdc PRO_HIGH in libopenh264.\n",
|
||||
param.iEntropyCodingModeFlag ? "CABAC" : "CAVLC");
|
||||
break;
|
||||
case FF_PROFILE_H264_MAIN:
|
||||
case AV_PROFILE_H264_MAIN:
|
||||
av_log(avctx, AV_LOG_VERBOSE, "Using %s, "
|
||||
"select EProfileIdc PRO_MAIN in libopenh264.\n",
|
||||
param.iEntropyCodingModeFlag ? "CABAC" : "CAVLC");
|
||||
break;
|
||||
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
|
||||
case FF_PROFILE_UNKNOWN:
|
||||
s->profile = FF_PROFILE_H264_CONSTRAINED_BASELINE;
|
||||
case AV_PROFILE_H264_CONSTRAINED_BASELINE:
|
||||
case AV_PROFILE_UNKNOWN:
|
||||
s->profile = AV_PROFILE_H264_CONSTRAINED_BASELINE;
|
||||
param.iEntropyCodingModeFlag = 0;
|
||||
av_log(avctx, AV_LOG_VERBOSE, "Using CAVLC, "
|
||||
"select EProfileIdc PRO_BASELINE in libopenh264.\n");
|
||||
break;
|
||||
default:
|
||||
s->profile = FF_PROFILE_H264_CONSTRAINED_BASELINE;
|
||||
s->profile = AV_PROFILE_H264_CONSTRAINED_BASELINE;
|
||||
param.iEntropyCodingModeFlag = 0;
|
||||
av_log(avctx, AV_LOG_WARNING, "Unsupported profile, "
|
||||
"select EProfileIdc PRO_BASELINE in libopenh264.\n");
|
||||
|
||||
Reference in New Issue
Block a user