diff mbox series

[FFmpeg-devel,1/1] pixdesc: add limited|full aliases for -color_range parameter

Message ID 20230331154956.3675424-2-chemag@gmail.com
State Accepted
Commit 984d0b6e6f40752cd00a2474bc1198d1a9e9e923
Headers show
Series add limited|full aliases for -color_range parameter | expand

Checks

Context Check Description
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Chema Gonzalez March 31, 2023, 3:49 p.m. UTC
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(+)

Comments

Chema Gonzalez April 10, 2023, 6:01 p.m. UTC | #1
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 mbox series

Patch

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"},