You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
lavc/qsvenc: add encode support for screen content coding extension
Enables HEVC Screen Content Coding extension support on ICL+ platform Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
This commit is contained in:
@@ -3411,12 +3411,15 @@ an internal session.
|
|||||||
Depth of look ahead in number frames, available when extbrc option is enabled.
|
Depth of look ahead in number frames, available when extbrc option is enabled.
|
||||||
|
|
||||||
@item @var{profile}
|
@item @var{profile}
|
||||||
|
Set the encoding profile (scc requires libmfx >= 1.32).
|
||||||
|
|
||||||
@table @samp
|
@table @samp
|
||||||
@item unknown
|
@item unknown
|
||||||
@item main
|
@item main
|
||||||
@item main10
|
@item main10
|
||||||
@item mainsp
|
@item mainsp
|
||||||
@item rext
|
@item rext
|
||||||
|
@item scc
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
@item @var{gpb}
|
@item @var{gpb}
|
||||||
|
@@ -74,6 +74,9 @@ static const struct profile_names hevc_profiles[] = {
|
|||||||
{ MFX_PROFILE_HEVC_MAINSP, "hevc mainsp" },
|
{ MFX_PROFILE_HEVC_MAINSP, "hevc mainsp" },
|
||||||
{ MFX_PROFILE_HEVC_REXT, "hevc rext" },
|
{ MFX_PROFILE_HEVC_REXT, "hevc rext" },
|
||||||
#endif
|
#endif
|
||||||
|
#if QSV_VERSION_ATLEAST(1, 32)
|
||||||
|
{ MFX_PROFILE_HEVC_SCC, "hevc scc" },
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct profile_names vp9_profiles[] = {
|
static const struct profile_names vp9_profiles[] = {
|
||||||
|
@@ -244,6 +244,9 @@ static const AVOption options[] = {
|
|||||||
{ "main10", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_MAIN10 }, INT_MIN, INT_MAX, VE, "profile" },
|
{ "main10", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_MAIN10 }, INT_MIN, INT_MAX, VE, "profile" },
|
||||||
{ "mainsp", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_MAINSP }, INT_MIN, INT_MAX, VE, "profile" },
|
{ "mainsp", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_MAINSP }, INT_MIN, INT_MAX, VE, "profile" },
|
||||||
{ "rext", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_REXT }, INT_MIN, INT_MAX, VE, "profile" },
|
{ "rext", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_REXT }, INT_MIN, INT_MAX, VE, "profile" },
|
||||||
|
#if QSV_VERSION_ATLEAST(1, 32)
|
||||||
|
{ "scc", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = MFX_PROFILE_HEVC_SCC }, INT_MIN, INT_MAX, VE, "profile" },
|
||||||
|
#endif
|
||||||
|
|
||||||
{ "gpb", "1: GPB (generalized P/B frame); 0: regular P frame", OFFSET(qsv.gpb), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, VE},
|
{ "gpb", "1: GPB (generalized P/B frame); 0: regular P frame", OFFSET(qsv.gpb), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, VE},
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user