Message ID | 20230331154956.3675424-2-chemag@gmail.com |
---|---|
State | Accepted |
Commit | 984d0b6e6f40752cd00a2474bc1198d1a9e9e923 |
Headers | show |
Series | add limited|full aliases for -color_range parameter | expand |
Context | Check | Description |
---|---|---|
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
Ping :) -Chema On Fri, Mar 31, 2023 at 8:50 AM Chema Gonzalez <chemag@gmail.com> wrote: > > Aliases are also used in scale and zscale filters. > > Tested: > ``` > $ ./ffmpeg -hide_banner -y -i ~/src/media/images/y4m/lena.490x490.y4m -pix_fmt yuv420p -color_range unknown /tmp/unknown.y4m > ... > $ md5sum /tmp/unknown.y4m > 69aa7bf52bbd72444268a544c81d7643 /tmp/unknown.y4m > > $ ./ffmpeg -hide_banner -y -i ~/src/media/images/y4m/lena.490x490.y4m -pix_fmt yuv420p -color_range tv /tmp/tv.y4m > ... > $ md5sum /tmp/tv.y4m > 5c1c8759708ff6b25dd8a660da5200e7 /tmp/tv.y4m > > $ ./ffmpeg -hide_banner -y -i ~/src/media/images/y4m/lena.490x490.y4m -pix_fmt yuv420p -color_range pc /tmp/pc.y4m > ... > $ md5sum /tmp/pc.y4m > 1ccb85d14a3dfecb22e625711587ba97 /tmp/pc.y4m > > $ ./ffmpeg -hide_banner -y -i ~/src/media/images/y4m/lena.490x490.y4m -pix_fmt yuv420p -color_range limited /tmp/limited.y4m > ... > $ md5sum /tmp/limited.y4m > 5c1c8759708ff6b25dd8a660da5200e7 /tmp/limited.y4m > > $ ./ffmpeg -hide_banner -y -i ~/src/media/images/y4m/lena.490x490.y4m -pix_fmt yuv420p -color_range full /tmp/full.y4m > ... > $ md5sum /tmp/full.y4m > 1ccb85d14a3dfecb22e625711587ba97 /tmp/full.y4m > ``` > > Also ran fate. > ``` > $ make fate -j > ... > TEST ffprobe_xsd > TEST flv-add_keyframe_index > ``` > --- > doc/codecs.texi | 2 ++ > libavcodec/options_table.h | 2 ++ > 2 files changed, 4 insertions(+) > > diff --git a/doc/codecs.texi b/doc/codecs.texi > index 1adacd2b59..bd04e134e1 100644 > --- a/doc/codecs.texi > +++ b/doc/codecs.texi > @@ -890,9 +890,11 @@ Possible values: > @table @samp > @item tv > @item mpeg > +@item limited > MPEG (219*2^(n-8)) > @item pc > @item jpeg > +@item full > JPEG (2^n-1) > @end table > > diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h > index f331ce2861..979904daae 100644 > --- a/libavcodec/options_table.h > +++ b/libavcodec/options_table.h > @@ -346,6 +346,8 @@ static const AVOption avcodec_options[] = { > {"unspecified", "Unspecified", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_UNSPECIFIED }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, > {"mpeg", "MPEG (219*2^(n-8))", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_MPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, > {"jpeg", "JPEG (2^n-1)", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_JPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, > +{"limited", "MPEG (219*2^(n-8))", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_MPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, > +{"full", "JPEG (2^n-1)", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_JPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, > {"chroma_sample_location", "chroma sample location", OFFSET(chroma_sample_location), AV_OPT_TYPE_INT, {.i64 = AVCHROMA_LOC_UNSPECIFIED }, 0, INT_MAX, V|E|D, "chroma_sample_location_type"}, > {"unknown", "Unspecified", 0, AV_OPT_TYPE_CONST, {.i64 = AVCHROMA_LOC_UNSPECIFIED }, INT_MIN, INT_MAX, V|E|D, "chroma_sample_location_type"}, > {"left", "Left", 0, AV_OPT_TYPE_CONST, {.i64 = AVCHROMA_LOC_LEFT }, INT_MIN, INT_MAX, V|E|D, "chroma_sample_location_type"}, > -- > 2.39.2 >
diff --git a/doc/codecs.texi b/doc/codecs.texi index 1adacd2b59..bd04e134e1 100644 --- a/doc/codecs.texi +++ b/doc/codecs.texi @@ -890,9 +890,11 @@ Possible values: @table @samp @item tv @item mpeg +@item limited MPEG (219*2^(n-8)) @item pc @item jpeg +@item full JPEG (2^n-1) @end table diff --git a/libavcodec/options_table.h b/libavcodec/options_table.h index f331ce2861..979904daae 100644 --- a/libavcodec/options_table.h +++ b/libavcodec/options_table.h @@ -346,6 +346,8 @@ static const AVOption avcodec_options[] = { {"unspecified", "Unspecified", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_UNSPECIFIED }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, {"mpeg", "MPEG (219*2^(n-8))", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_MPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, {"jpeg", "JPEG (2^n-1)", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_JPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, +{"limited", "MPEG (219*2^(n-8))", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_MPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, +{"full", "JPEG (2^n-1)", 0, AV_OPT_TYPE_CONST, {.i64 = AVCOL_RANGE_JPEG }, INT_MIN, INT_MAX, V|E|D, "color_range_type"}, {"chroma_sample_location", "chroma sample location", OFFSET(chroma_sample_location), AV_OPT_TYPE_INT, {.i64 = AVCHROMA_LOC_UNSPECIFIED }, 0, INT_MAX, V|E|D, "chroma_sample_location_type"}, {"unknown", "Unspecified", 0, AV_OPT_TYPE_CONST, {.i64 = AVCHROMA_LOC_UNSPECIFIED }, INT_MIN, INT_MAX, V|E|D, "chroma_sample_location_type"}, {"left", "Left", 0, AV_OPT_TYPE_CONST, {.i64 = AVCHROMA_LOC_LEFT }, INT_MIN, INT_MAX, V|E|D, "chroma_sample_location_type"},