On Sat, Jul 21, 2018 at 02:33:24PM +0200, Martin Vignali wrote: > Hello, > > Patch in attach improve some part of the prores_aw encoder. >
> 001 : use scantable in prores_data instead of a duplicate one. This could negativly affect the performance of the changed inner loop have you checked that the changed function does not become slower ? > 002 : use for the frame header, primaries, transfert, colorspace like in > proresenc_ks > avoid color shift on some software (update fate test) > 003 : change qp start value for each profile based on official encoder > output > and update proxy qp end to a bigger value (also based on official encoder > output) > (update fate test) > 004 : calculate dct part before the quantif search. Avoid to recalculate it > each time > On a basic test Prores decoding -> prores encoding, the global speed > improvment is around 2% > > This encoder is cover by 4 fate test, can be run with : > make fate-vsynth3-prores;make fate-vsynth2-prores;make > fate-vsynth1-prores;make fate-vsynth_lena-prores SAMPLES=fate-suite/ > > Plan to add later more part from the ks encoder to this one > > Martin [...] > libavcodec/proresenc_anatoliy.c | 6 +++--- > tests/ref/vsynth/vsynth1-prores | 2 +- > tests/ref/vsynth/vsynth2-prores | 2 +- > tests/ref/vsynth/vsynth3-prores | 2 +- > tests/ref/vsynth/vsynth_lena-prores | 2 +- > 5 files changed, 7 insertions(+), 7 deletions(-) > f469d157875b5b92fd7053dde08c226296c0cf6b > 0002-avcodec-proresenc_aw-use-AVframe-primaries-transfert.patch > From 2891017d83b9a0e10c912d68bc64f67e960bff38 Mon Sep 17 00:00:00 2001 > From: Martin Vignali <martin.vign...@gmail.com> > Date: Sat, 21 Jul 2018 14:10:07 +0200 > Subject: [PATCH 2/4] avcodec/proresenc_aw : use AVframe primaries, transfert, > colorspace for frame header instead of default (unknown, unknown, Rec601) > > avoid color shift, on some decoding software > --- > libavcodec/proresenc_anatoliy.c | 6 +++--- > tests/ref/vsynth/vsynth1-prores | 2 +- > tests/ref/vsynth/vsynth2-prores | 2 +- > tests/ref/vsynth/vsynth3-prores | 2 +- > tests/ref/vsynth/vsynth_lena-prores | 2 +- > 5 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/libavcodec/proresenc_anatoliy.c b/libavcodec/proresenc_anatoliy.c > index dd6b1dcfb1..91b9a17947 100644 > --- a/libavcodec/proresenc_anatoliy.c > +++ b/libavcodec/proresenc_anatoliy.c > @@ -501,9 +501,9 @@ static int prores_encode_frame(AVCodecContext *avctx, > AVPacket *pkt, > bytestream_put_be16(&buf, avctx->height); > *buf++ = 0x83; // {10}(422){00}{00}(frame){11} > *buf++ = 0; > - *buf++ = 2; > - *buf++ = 2; > - *buf++ = 6; > + *buf++ = pict->color_primaries; > + *buf++ = pict->color_trc; > + *buf++ = pict->colorspace; Has someone confirmed that all values our enum contains or will contain can just be written with no check ? Thanks [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB While the State exists there can be no freedom; when there is freedom there will be no State. -- Vladimir Lenin
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel