diff mbox series

[FFmpeg-devel] avcodec/av1dec: fix matrix coefficients exposed by codec context

Message ID 20240220182901.2634807-1-jeebjp@gmail.com
State Accepted
Commit 37936b09ce316c32c456539afeb748d472088135
Headers show
Series [FFmpeg-devel] avcodec/av1dec: fix matrix coefficients exposed by codec context | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Jan Ekström Feb. 20, 2024, 6:28 p.m. UTC
`colorspace` in avcodec terms means `matrix coefficients`.
---
 libavcodec/av1dec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

llyyr Feb. 20, 2024, 6:35 p.m. UTC | #1
On 2/20/24 23:58, Jan Ekström wrote:
> `colorspace` in avcodec terms means `matrix coefficients`.
> ---
>   libavcodec/av1dec.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> index 7ffa7821e9..7debc4deda 100644
> --- a/libavcodec/av1dec.c
> +++ b/libavcodec/av1dec.c
> @@ -743,7 +743,7 @@ static int set_context_with_sequence(AVCodecContext *avctx,
>       avctx->color_range =
>           seq->color_config.color_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
>       avctx->color_primaries = seq->color_config.color_primaries;
> -    avctx->colorspace = seq->color_config.color_primaries;
> +    avctx->colorspace = seq->color_config.matrix_coefficients;
>       avctx->color_trc = seq->color_config.transfer_characteristics;
>   
>       switch (seq->color_config.chroma_sample_position) {
LGTM, fixes this* sample not being rendered in ycgco colorspace when 
using hwaccel

*: https://github.com/mpv-player/mpv/issues/13521
Jan Ekström Feb. 20, 2024, 6:58 p.m. UTC | #2
On Tue, Feb 20, 2024 at 8:30 PM James Almer <jamrial@gmail.com> wrote:
>
> On 2/20/2024 3:28 PM, Jan Ekström wrote:
> > `colorspace` in avcodec terms means `matrix coefficients`.
> > ---
> >   libavcodec/av1dec.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> > index 7ffa7821e9..7debc4deda 100644
> > --- a/libavcodec/av1dec.c
> > +++ b/libavcodec/av1dec.c
> > @@ -743,7 +743,7 @@ static int set_context_with_sequence(AVCodecContext *avctx,
> >       avctx->color_range =
> >           seq->color_config.color_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
> >       avctx->color_primaries = seq->color_config.color_primaries;
> > -    avctx->colorspace = seq->color_config.color_primaries;
> > +    avctx->colorspace = seq->color_config.matrix_coefficients;
> >       avctx->color_trc = seq->color_config.transfer_characteristics;
> >
> >       switch (seq->color_config.chroma_sample_position) {
>
> LGTM

Thanks, applied as 37936b09ce316c32c456539afeb748d472088135 on master.

Will attempt to cherry-pick this as far as possible.

Jan
Jan Ekström Feb. 20, 2024, 8:55 p.m. UTC | #3
On Tue, Feb 20, 2024 at 8:58 PM Jan Ekström <jeebjp@gmail.com> wrote:
>
> On Tue, Feb 20, 2024 at 8:30 PM James Almer <jamrial@gmail.com> wrote:
> >
> > On 2/20/2024 3:28 PM, Jan Ekström wrote:
> > > `colorspace` in avcodec terms means `matrix coefficients`.
> > > ---
> > >   libavcodec/av1dec.c | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
> > > index 7ffa7821e9..7debc4deda 100644
> > > --- a/libavcodec/av1dec.c
> > > +++ b/libavcodec/av1dec.c
> > > @@ -743,7 +743,7 @@ static int set_context_with_sequence(AVCodecContext *avctx,
> > >       avctx->color_range =
> > >           seq->color_config.color_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
> > >       avctx->color_primaries = seq->color_config.color_primaries;
> > > -    avctx->colorspace = seq->color_config.color_primaries;
> > > +    avctx->colorspace = seq->color_config.matrix_coefficients;
> > >       avctx->color_trc = seq->color_config.transfer_characteristics;
> > >
> > >       switch (seq->color_config.chroma_sample_position) {
> >
> > LGTM
>
> Thanks, applied as 37936b09ce316c32c456539afeb748d472088135 on master.
>
> Will attempt to cherry-pick this as far as possible.

This fix was cherry-picked to releases 6.1 (a267d4ad4c92), 6.0
(511b84442323), 5.1 (9bf90b126028), 5.0 (6073fff84d0d), 4.4
(5507a4062496), in which libavcodec/av1dec.c exists.

Jan
diff mbox series

Patch

diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c
index 7ffa7821e9..7debc4deda 100644
--- a/libavcodec/av1dec.c
+++ b/libavcodec/av1dec.c
@@ -743,7 +743,7 @@  static int set_context_with_sequence(AVCodecContext *avctx,
     avctx->color_range =
         seq->color_config.color_range ? AVCOL_RANGE_JPEG : AVCOL_RANGE_MPEG;
     avctx->color_primaries = seq->color_config.color_primaries;
-    avctx->colorspace = seq->color_config.color_primaries;
+    avctx->colorspace = seq->color_config.matrix_coefficients;
     avctx->color_trc = seq->color_config.transfer_characteristics;
 
     switch (seq->color_config.chroma_sample_position) {