Hi, 2014-10-30 14:49 GMT+01:00 Christophe Gisquet <christophe.gisq...@gmail.com>: > Hi, > > 2014-10-26 19:20 GMT+01:00 Michael Niedermayer <michae...@gmx.at>: >> I took the liberty to apply the patch and fix the bug instead of >> leaving it open until someone succeeds writing a fate test for it > > Hi, I wonder whether this should be reverted for now (and ticket #2970 > reopened at the same time). > > I have been checking how to produce interlaced content through the > encoder, and the current table produces worse results (PSNR-wise, but > it was big enough to not bother checking visually). > > I don't know if that's an encoder issue yet or if the decoder table is > still incorrect.
So I've rederived the encoder table, and I'm getting the following PSNR values, using tiny_psnr, on a progressive sequence from a chained encoding and decoding: Full progressive: stddev: 0.74 PSNR: 50.69 MAXDIFF: 19 Before: stddev: 1.43 PSNR: 44.97 MAXDIFF: 17 This patch: stddev: 0.76 PSNR: 50.44 MAXDIFF: 14 -- Christophe
From 614a10803e964ff621e6ac27f166081699d045da Mon Sep 17 00:00:00 2001 From: Christophe Gisquet <christophe.gisq...@gmail.com> Date: Fri, 30 Jan 2015 19:43:03 +0100 Subject: [PATCH] dvenc: fix 2x4x8 (interlaced) weight table Since the decoder has been fixed to output something similar to other implementations, the encoder weight table needed this fix. Reference PSNR values on a progressive sequence (from tiny_psnr) from a chained encoding and decoding: Full progressive: stddev: 0.74 PSNR: 50.69 MAXDIFF: 19 Before: stddev: 1.43 PSNR: 44.97 MAXDIFF: 17 This patch: stddev: 0.76 PSNR: 50.44 MAXDIFF: 14 --- libavcodec/dvenc.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/libavcodec/dvenc.c b/libavcodec/dvenc.c index 7061508..2442f2b 100644 --- a/libavcodec/dvenc.c +++ b/libavcodec/dvenc.c @@ -232,14 +232,14 @@ static const int dv_weight_88[64] = { 170627, 165371, 160727, 153560, 160727, 144651, 144651, 136258, }; static const int dv_weight_248[64] = { - 131072, 242189, 257107, 237536, 229376, 200636, 242189, 223754, - 224969, 196781, 262144, 242189, 229376, 200636, 257107, 237536, - 211916, 185364, 235923, 217965, 229376, 211916, 206433, 180568, - 242189, 223754, 224969, 196781, 211916, 185364, 235923, 217965, - 200704, 175557, 222935, 205965, 200636, 185364, 195068, 170627, - 229376, 211916, 206433, 180568, 200704, 175557, 222935, 205965, - 175557, 153560, 188995, 174609, 165371, 144651, 200636, 185364, - 195068, 170627, 175557, 153560, 188995, 174609, 165371, 144651, + 131072, 262144, 257107, 257107, 242189, 242189, 242189, 242189, + 237536, 237536, 229376, 229376, 200636, 200636, 224973, 224973, + 223754, 223754, 235923, 235923, 229376, 229376, 217965, 217965, + 211916, 211916, 196781, 196781, 185364, 185364, 206433, 206433, + 211916, 211916, 222935, 222935, 200636, 200636, 205964, 205964, + 200704, 200704, 180568, 180568, 175557, 175557, 195068, 195068, + 185364, 185364, 188995, 188995, 174606, 174606, 175557, 175557, + 170627, 170627, 153560, 153560, 165371, 165371, 144651, 144651, }; static av_always_inline int dv_init_enc_block(EncBlockInfo *bi, uint8_t *data, -- 1.9.2.msysgit.0
_______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel