[FFmpeg-devel] [PATCH]lavc/pgssubdec: Fix palette colourspace
Reimar Döffinger
Reimar.Doeffinger at gmx.de
Sun Apr 17 21:36:47 CEST 2016
On Sun, Apr 17, 2016 at 09:24:29PM +0200, Reimar Döffinger wrote:
> On Sun, Apr 17, 2016 at 09:08:45PM +0200, Carl Eugen Hoyos wrote:
> > - YUV_TO_RGB1(cb, cr);
> > - YUV_TO_RGB2(r, g, b, y);
> > + if (ctx->hdtv > 0) {
> > + YUV_TO_RGB1_CCIR(cb, cr);
> > + YUV_TO_RGB2_CCIR(r, g, b, y);
> > + } else {
> > + YUV_TO_RGB1(cb, cr);
> > + YUV_TO_RGB2(r, g, b, y);
> > + }
>
> That is actually more wrong :)
> YUV_TO_RGB1_CCIR is Rec.609, so what should be used for SD.
Rec.601 I meant here.
> For HD, it still should use the *255.0/224.0, but the other
> coefficients need to be tweaked.
To Rec.709 values.
> MPlayer seems to be a bit off, plus we already have fixed-point
> coefficients in libswscale we might want to match, but something
> like:
> r_add = FIX(1.5701*255.0/224.0) * cr + ONE_HALF;\
> g_add = - FIX(0.1870*255.0/224.0) * cb - FIX(0.4664*255.0/224.0) * cr + \
> ONE_HALF;\
> b_add = FIX(1.8556*255.0/224.0) * cb + ONE_HALF;\
More information about the ffmpeg-devel
mailing list