diff mbox series

[FFmpeg-devel,7/9] fftools/ffmpeg_dec: disregard demuxer timestamps for NOTIMESTAMPS formats

Message ID 20231001125552.23976-7-anton@khirnov.net
State Accepted
Commit 303f10d4dd642b903091728447e2d26ef77614b9
Headers show
Series [FFmpeg-devel,1/9] lavfi/yadif: update output frame durations | 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

Anton Khirnov Oct. 1, 2023, 12:55 p.m. UTC
In this case any timestamps are guessed by compute_pkt_fields() in
libavformat. Since we are decoding the stream, we have more accurate
information from the decoder and do not need any guesses.

Eliminates spurious PTS gaps in a number of FATE tests.

Also avoids dropping the majority of frames in fate-dirac*
---
 fftools/ffmpeg_dec.c              |  8 +++-
 tests/ref/fate/dirac              | 28 ++++++++++++++
 tests/ref/fate/dirac-low-delay    | 28 ++++++++++++++
 tests/ref/fate/mpeg2-ticket6677   | 14 +++----
 tests/ref/fate/vc1_ilaced_twomv   | 24 ++++++------
 tests/ref/fate/vc1_sa00040        | 12 +++---
 tests/ref/fate/vc1_sa00050        | 28 +++++++-------
 tests/ref/fate/vc1_sa10091        | 26 ++++++-------
 tests/ref/fate/vc1_sa10143        | 58 ++++++++++++++---------------
 tests/ref/fate/vc1_sa20021        | 62 +++++++++++++++----------------
 tests/ref/fate/xvid-custom-matrix |  2 +-
 tests/ref/fate/xvid-idct          |  2 +-
 12 files changed, 177 insertions(+), 115 deletions(-)

Comments

Andreas Rheinhardt Oct. 1, 2023, 1:18 p.m. UTC | #1
Anton Khirnov:
> In this case any timestamps are guessed by compute_pkt_fields() in
> libavformat. Since we are decoding the stream, we have more accurate
> information from the decoder and do not need any guesses.
> 
> Eliminates spurious PTS gaps in a number of FATE tests.
> 
> Also avoids dropping the majority of frames in fate-dirac*

Why did that happen?

- Andreas
Anton Khirnov Oct. 2, 2023, 8:59 a.m. UTC | #2
Quoting Andreas Rheinhardt (2023-10-01 15:18:30)
> Anton Khirnov:
> > In this case any timestamps are guessed by compute_pkt_fields() in
> > libavformat. Since we are decoding the stream, we have more accurate
> > information from the decoder and do not need any guesses.
> > 
> > Eliminates spurious PTS gaps in a number of FATE tests.
> > 
> > Also avoids dropping the majority of frames in fate-dirac*
> 
> Why did that happen?

lavf generated timestamps that were consecutive integers with a timebase
of 1/1200000
diff mbox series

Patch

diff --git a/fftools/ffmpeg_dec.c b/fftools/ffmpeg_dec.c
index 1de8234a97..fcee8b65ac 100644
--- a/fftools/ffmpeg_dec.c
+++ b/fftools/ffmpeg_dec.c
@@ -540,8 +540,9 @@  static int send_filter_eof(InputStream *ist)
     return 0;
 }
 
-static int packet_decode(InputStream *ist, const AVPacket *pkt, AVFrame *frame)
+static int packet_decode(InputStream *ist, AVPacket *pkt, AVFrame *frame)
 {
+    const InputFile *ifile = input_files[ist->file_index];
     Decoder *d = ist->decoder;
     AVCodecContext *dec = ist->dec_ctx;
     const char *type_desc = av_get_media_type_string(dec->codec_type);
@@ -556,6 +557,11 @@  static int packet_decode(InputStream *ist, const AVPacket *pkt, AVFrame *frame)
     if (pkt && pkt->size == 0)
         return 0;
 
+    if (pkt && ifile->format_nots) {
+        pkt->pts = AV_NOPTS_VALUE;
+        pkt->dts = AV_NOPTS_VALUE;
+    }
+
     ret = avcodec_send_packet(dec, pkt);
     if (ret < 0 && !(ret == AVERROR_EOF && !pkt)) {
         // In particular, we don't expect AVERROR(EAGAIN), because we read all
diff --git a/tests/ref/fate/dirac b/tests/ref/fate/dirac
index f3f3dafb19..2027a44395 100644
--- a/tests/ref/fate/dirac
+++ b/tests/ref/fate/dirac
@@ -5,3 +5,31 @@ 
 #sar 0: 1/1
 0,          0,          0,        1,   115200, 0xf73819e8
 0,          1,          1,        1,   115200, 0x082e3788
+0,          2,          2,        1,   115200, 0x9fe73790
+0,          3,          3,        1,   115200, 0x58f63cc4
+0,          4,          4,        1,   115200, 0xd91c3767
+0,          5,          5,        1,   115200, 0xac39658c
+0,          6,          6,        1,   115200, 0xd6d57406
+0,          7,          7,        1,   115200, 0x791b707f
+0,          8,          8,        1,   115200, 0x02e05e31
+0,          9,          9,        1,   115200, 0x7737ca43
+0,         10,         10,        1,   115200, 0xa9b5b019
+0,         11,         11,        1,   115200, 0x8b2685be
+0,         12,         12,        1,   115200, 0x2f547334
+0,         13,         13,        1,   115200, 0x9c2ba0ad
+0,         14,         14,        1,   115200, 0x17069da3
+0,         15,         15,        1,   115200, 0xbc7fadd1
+0,         16,         16,        1,   115200, 0xbf651cce
+0,         17,         17,        1,   115200, 0x2e1abc0d
+0,         18,         18,        1,   115200, 0xc6c9a945
+0,         19,         19,        1,   115200, 0x5234c510
+0,         20,         20,        1,   115200, 0x84b5ab26
+0,         21,         21,        1,   115200, 0xf01da61e
+0,         22,         22,        1,   115200, 0xfb339d74
+0,         23,         23,        1,   115200, 0x0973bf98
+0,         24,         24,        1,   115200, 0x7467023a
+0,         25,         25,        1,   115200, 0x3c8ba9a1
+0,         26,         26,        1,   115200, 0xdc699e3e
+0,         27,         27,        1,   115200, 0xe57f9d2e
+0,         28,         28,        1,   115200, 0x79b18bc4
+0,         29,         29,        1,   115200, 0x4c4c98a0
diff --git a/tests/ref/fate/dirac-low-delay b/tests/ref/fate/dirac-low-delay
index 13bf8e8517..758f17f05d 100644
--- a/tests/ref/fate/dirac-low-delay
+++ b/tests/ref/fate/dirac-low-delay
@@ -5,3 +5,31 @@ 
 #sar 0: 1/1
 0,          0,          0,        1,   115200, 0x2599a172
 0,          1,          1,        1,   115200, 0x08a8c08d
+0,          2,          2,        1,   115200, 0xf586aa9e
+0,          3,          3,        1,   115200, 0x5295c51e
+0,          4,          4,        1,   115200, 0x06b3d0c4
+0,          5,          5,        1,   115200, 0xed28999a
+0,          6,          6,        1,   115200, 0x566e7b4b
+0,          7,          7,        1,   115200, 0x146f8309
+0,          8,          8,        1,   115200, 0x9f57cbbc
+0,          9,          9,        1,   115200, 0xc9d6c278
+0,         10,         10,        1,   115200, 0xaf76c2eb
+0,         11,         11,        1,   115200, 0xf83854c7
+0,         12,         12,        1,   115200, 0x73a5c2c3
+0,         13,         13,        1,   115200, 0x91eb991f
+0,         14,         14,        1,   115200, 0x886a8c3b
+0,         15,         15,        1,   115200, 0x469ca5a8
+0,         16,         16,        1,   115200, 0x4666791d
+0,         17,         17,        1,   115200, 0xe010cab0
+0,         18,         18,        1,   115200, 0x1130ab51
+0,         19,         19,        1,   115200, 0x9fb4cca2
+0,         20,         20,        1,   115200, 0xd6e0b861
+0,         21,         21,        1,   115200, 0xd7289bea
+0,         22,         22,        1,   115200, 0x71bb6079
+0,         23,         23,        1,   115200, 0xf43ba8b6
+0,         24,         24,        1,   115200, 0xfb02a209
+0,         25,         25,        1,   115200, 0x45f2e2ce
+0,         26,         26,        1,   115200, 0x9b28a90a
+0,         27,         27,        1,   115200, 0x037ca263
+0,         28,         28,        1,   115200, 0x1985baba
+0,         29,         29,        1,   115200, 0x05a5a7f7
diff --git a/tests/ref/fate/mpeg2-ticket6677 b/tests/ref/fate/mpeg2-ticket6677
index 01e46b559b..faf4721726 100644
--- a/tests/ref/fate/mpeg2-ticket6677
+++ b/tests/ref/fate/mpeg2-ticket6677
@@ -3,10 +3,10 @@ 
 #codec_id 0: rawvideo
 #dimensions 0: 720x480
 #sar 0: 8/9
-0,          1,          1,        1,   518400, 0xc1866f5f
-0,          2,          2,        2,   518400, 0x9ba32764
-0,          4,          4,        1,   518400, 0xa9031bb8
-0,          5,          5,        1,   518400, 0x5e2c3502
-0,          6,          6,        1,   518400, 0xe860027a
-0,          7,          7,        2,   518400, 0xa9152430
-0,          9,          9,        1,   518400, 0xb98dd9f7
+0,          0,          0,        1,   518400, 0xc1866f5f
+0,          1,          1,        2,   518400, 0x9ba32764
+0,          3,          3,        1,   518400, 0xa9031bb8
+0,          4,          4,        1,   518400, 0x5e2c3502
+0,          5,          5,        1,   518400, 0xe860027a
+0,          6,          6,        2,   518400, 0xa9152430
+0,          8,          8,        1,   518400, 0xb98dd9f7
diff --git a/tests/ref/fate/vc1_ilaced_twomv b/tests/ref/fate/vc1_ilaced_twomv
index 096e5fc87b..99f346d4ab 100644
--- a/tests/ref/fate/vc1_ilaced_twomv
+++ b/tests/ref/fate/vc1_ilaced_twomv
@@ -4,15 +4,15 @@ 
 #dimensions 0: 1920x1080
 #sar 0: 1/1
 0,          0,          0,        1,  3110400, 0xc95e8861
-0,          2,          2,        1,  3110400, 0xf58b5cbf
-0,          3,          3,        1,  3110400, 0x2f866f33
-0,          4,          4,        1,  3110400, 0x05c18415
-0,          5,          5,        1,  3110400, 0x4077ca93
-0,          6,          6,        1,  3110400, 0x44d105fc
-0,          7,          7,        1,  3110400, 0xa0608374
-0,          8,          8,        1,  3110400, 0x407689dc
-0,          9,          9,        1,  3110400, 0x4707d00a
-0,         10,         10,        1,  3110400, 0x74986831
-0,         11,         11,        1,  3110400, 0xa5912619
-0,         12,         12,        1,  3110400, 0x44aa5565
-0,         13,         13,        1,  3110400, 0xb9752774
+0,          1,          1,        1,  3110400, 0xf58b5cbf
+0,          2,          2,        1,  3110400, 0x2f866f33
+0,          3,          3,        1,  3110400, 0x05c18415
+0,          4,          4,        1,  3110400, 0x4077ca93
+0,          5,          5,        1,  3110400, 0x44d105fc
+0,          6,          6,        1,  3110400, 0xa0608374
+0,          7,          7,        1,  3110400, 0x407689dc
+0,          8,          8,        1,  3110400, 0x4707d00a
+0,          9,          9,        1,  3110400, 0x74986831
+0,         10,         10,        1,  3110400, 0xa5912619
+0,         11,         11,        1,  3110400, 0x44aa5565
+0,         12,         12,        1,  3110400, 0xb9752774
diff --git a/tests/ref/fate/vc1_sa00040 b/tests/ref/fate/vc1_sa00040
index 554b838ff0..44844cabb3 100644
--- a/tests/ref/fate/vc1_sa00040
+++ b/tests/ref/fate/vc1_sa00040
@@ -6,15 +6,15 @@ 
 0,          0,          0,        1,    38016, 0xa6f15db5
 0,          1,          1,        1,    38016, 0xa6f15db5
 0,          2,          2,        1,    38016, 0xa6f15db5
-0,          4,          4,        1,    38016, 0x5c4ef0e7
-0,          5,          5,        1,    38016, 0x53a42d1d
-0,          6,          6,        1,    38016, 0x68f7d89e
+0,          3,          3,        1,    38016, 0x5c4ef0e7
+0,          4,          4,        1,    38016, 0x53a42d1d
+0,          5,          5,        1,    38016, 0x68f7d89e
+0,          6,          6,        1,    38016, 0xc15f4368
 0,          7,          7,        1,    38016, 0xc15f4368
-0,          8,          8,        1,    38016, 0xc15f4368
+0,          8,          8,        1,    38016, 0xd1bd47a8
 0,          9,          9,        1,    38016, 0xd1bd47a8
-0,         10,         10,        1,    38016, 0xd1bd47a8
+0,         10,         10,        1,    38016, 0xe1e821ca
 0,         11,         11,        1,    38016, 0xe1e821ca
 0,         12,         12,        1,    38016, 0xe1e821ca
 0,         13,         13,        1,    38016, 0xe1e821ca
 0,         14,         14,        1,    38016, 0xe1e821ca
-0,         15,         15,        1,    38016, 0xe1e821ca
diff --git a/tests/ref/fate/vc1_sa00050 b/tests/ref/fate/vc1_sa00050
index d30b1bfbe3..b8e89352f7 100644
--- a/tests/ref/fate/vc1_sa00050
+++ b/tests/ref/fate/vc1_sa00050
@@ -6,13 +6,14 @@ 
 0,          0,          0,        1,   115200, 0xb8830eef
 0,          1,          1,        1,   115200, 0xb8830eef
 0,          2,          2,        1,   115200, 0xb8830eef
-0,          4,          4,        1,   115200, 0x952ff5e1
-0,          5,          5,        1,   115200, 0xa4362b14
-0,          6,          6,        1,   115200, 0x32bacbe7
+0,          3,          3,        1,   115200, 0x952ff5e1
+0,          4,          4,        1,   115200, 0xa4362b14
+0,          5,          5,        1,   115200, 0x32bacbe7
+0,          6,          6,        1,   115200, 0x509eb814
 0,          7,          7,        1,   115200, 0x509eb814
-0,          8,          8,        1,   115200, 0x509eb814
+0,          8,          8,        1,   115200, 0x11a76c3e
 0,          9,          9,        1,   115200, 0x11a76c3e
-0,         10,         10,        1,   115200, 0x11a76c3e
+0,         10,         10,        1,   115200, 0x00cf734a
 0,         11,         11,        1,   115200, 0x00cf734a
 0,         12,         12,        1,   115200, 0x00cf734a
 0,         13,         13,        1,   115200, 0x00cf734a
@@ -20,16 +21,15 @@ 
 0,         15,         15,        1,   115200, 0x00cf734a
 0,         16,         16,        1,   115200, 0x00cf734a
 0,         17,         17,        1,   115200, 0x00cf734a
-0,         18,         18,        1,   115200, 0x00cf734a
+0,         18,         18,        1,   115200, 0xfddf48e6
 0,         19,         19,        1,   115200, 0xfddf48e6
-0,         20,         20,        1,   115200, 0xfddf48e6
-0,         21,         21,        1,   115200, 0x1eccebbf
-0,         22,         22,        1,   115200, 0x3da2f77e
-0,         23,         23,        1,   115200, 0x7c232572
-0,         24,         24,        1,   115200, 0xedf426e5
+0,         20,         20,        1,   115200, 0x1eccebbf
+0,         21,         21,        1,   115200, 0x3da2f77e
+0,         22,         22,        1,   115200, 0x7c232572
+0,         23,         23,        1,   115200, 0xedf426e5
+0,         24,         24,        1,   115200, 0x5324ab20
 0,         25,         25,        1,   115200, 0x5324ab20
-0,         26,         26,        1,   115200, 0x5324ab20
-0,         27,         27,        1,   115200, 0xa23e66bb
+0,         26,         26,        1,   115200, 0xa23e66bb
+0,         27,         27,        1,   115200, 0x680a50ff
 0,         28,         28,        1,   115200, 0x680a50ff
 0,         29,         29,        1,   115200, 0x680a50ff
-0,         30,         30,        1,   115200, 0x680a50ff
diff --git a/tests/ref/fate/vc1_sa10091 b/tests/ref/fate/vc1_sa10091
index ebfe2710ca..63f25c2b6a 100644
--- a/tests/ref/fate/vc1_sa10091
+++ b/tests/ref/fate/vc1_sa10091
@@ -4,32 +4,32 @@ 
 #dimensions 0: 720x480
 #sar 0: 1/1
 0,          0,          0,        1,   518400, 0xae20b4fa
+0,          1,          1,        1,   518400, 0x2b4ccdf9
 0,          2,          2,        1,   518400, 0x2b4ccdf9
 0,          3,          3,        1,   518400, 0x2b4ccdf9
 0,          4,          4,        1,   518400, 0x2b4ccdf9
 0,          5,          5,        1,   518400, 0x2b4ccdf9
-0,          6,          6,        1,   518400, 0x2b4ccdf9
+0,          6,          6,        1,   518400, 0x70d9a891
 0,          7,          7,        1,   518400, 0x70d9a891
 0,          8,          8,        1,   518400, 0x70d9a891
-0,          9,          9,        1,   518400, 0x70d9a891
-0,         10,         10,        1,   518400, 0xa461ee86
+0,          9,          9,        1,   518400, 0xa461ee86
+0,         10,         10,        1,   518400, 0x722bc6e8
 0,         11,         11,        1,   518400, 0x722bc6e8
 0,         12,         12,        1,   518400, 0x722bc6e8
-0,         13,         13,        1,   518400, 0x722bc6e8
+0,         13,         13,        1,   518400, 0xf752fd2c
 0,         14,         14,        1,   518400, 0xf752fd2c
-0,         15,         15,        1,   518400, 0xf752fd2c
-0,         16,         16,        1,   518400, 0x91abcaca
+0,         15,         15,        1,   518400, 0x91abcaca
+0,         16,         16,        1,   518400, 0x572727c3
 0,         17,         17,        1,   518400, 0x572727c3
-0,         18,         18,        1,   518400, 0x572727c3
+0,         18,         18,        1,   518400, 0x24c12382
 0,         19,         19,        1,   518400, 0x24c12382
-0,         20,         20,        1,   518400, 0x24c12382
+0,         20,         20,        1,   518400, 0x9aa39fe8
 0,         21,         21,        1,   518400, 0x9aa39fe8
-0,         22,         22,        1,   518400, 0x9aa39fe8
-0,         23,         23,        1,   518400, 0x5cb6bd19
-0,         24,         24,        1,   518400, 0x704d9300
+0,         22,         22,        1,   518400, 0x5cb6bd19
+0,         23,         23,        1,   518400, 0x704d9300
+0,         24,         24,        1,   518400, 0x590fad49
 0,         25,         25,        1,   518400, 0x590fad49
 0,         26,         26,        1,   518400, 0x590fad49
-0,         27,         27,        1,   518400, 0x590fad49
+0,         27,         27,        1,   518400, 0x46bea10b
 0,         28,         28,        1,   518400, 0x46bea10b
 0,         29,         29,        1,   518400, 0x46bea10b
-0,         30,         30,        1,   518400, 0x46bea10b
diff --git a/tests/ref/fate/vc1_sa10143 b/tests/ref/fate/vc1_sa10143
index db89cc9e41..cf59ab9b12 100644
--- a/tests/ref/fate/vc1_sa10143
+++ b/tests/ref/fate/vc1_sa10143
@@ -4,32 +4,32 @@ 
 #dimensions 0: 720x480
 #sar 0: 1/1
 0,          0,          0,        1,   518400, 0x34fa7f55
-0,          2,          2,        1,   518400, 0x60466bc1
-0,          3,          3,        1,   518400, 0xe68dff1e
-0,          4,          4,        1,   518400, 0x790ac06a
-0,          5,          5,        1,   518400, 0xb3b26b27
-0,          6,          6,        1,   518400, 0x8840096c
-0,          7,          7,        1,   518400, 0xf75c3d61
-0,          8,          8,        1,   518400, 0xca071781
-0,          9,          9,        1,   518400, 0xa8e6edf9
-0,         10,         10,        1,   518400, 0xabb61984
-0,         11,         11,        1,   518400, 0x0b31dedd
-0,         12,         12,        1,   518400, 0xf44378ef
-0,         13,         13,        1,   518400, 0xf7268996
-0,         14,         14,        1,   518400, 0x8c5b1ff4
-0,         15,         15,        1,   518400, 0xda356fd2
-0,         16,         16,        1,   518400, 0x0e091c57
-0,         17,         17,        1,   518400, 0x17645e68
-0,         18,         18,        1,   518400, 0xf47a71ef
-0,         19,         19,        1,   518400, 0x6c440498
-0,         20,         20,        1,   518400, 0xd705bd32
-0,         21,         21,        1,   518400, 0x0800edd0
-0,         22,         22,        1,   518400, 0x902be119
-0,         23,         23,        1,   518400, 0x0f7d7bc4
-0,         24,         24,        1,   518400, 0x9f4dc421
-0,         25,         25,        1,   518400, 0x3b8c8d5a
-0,         26,         26,        1,   518400, 0xbcdfb2b9
-0,         27,         27,        1,   518400, 0xa02a46c3
-0,         28,         28,        1,   518400, 0x8ecde915
-0,         29,         29,        1,   518400, 0x20576bfd
-0,         30,         30,        1,   518400, 0xac40bc36
+0,          1,          1,        1,   518400, 0x60466bc1
+0,          2,          2,        1,   518400, 0xe68dff1e
+0,          3,          3,        1,   518400, 0x790ac06a
+0,          4,          4,        1,   518400, 0xb3b26b27
+0,          5,          5,        1,   518400, 0x8840096c
+0,          6,          6,        1,   518400, 0xf75c3d61
+0,          7,          7,        1,   518400, 0xca071781
+0,          8,          8,        1,   518400, 0xa8e6edf9
+0,          9,          9,        1,   518400, 0xabb61984
+0,         10,         10,        1,   518400, 0x0b31dedd
+0,         11,         11,        1,   518400, 0xf44378ef
+0,         12,         12,        1,   518400, 0xf7268996
+0,         13,         13,        1,   518400, 0x8c5b1ff4
+0,         14,         14,        1,   518400, 0xda356fd2
+0,         15,         15,        1,   518400, 0x0e091c57
+0,         16,         16,        1,   518400, 0x17645e68
+0,         17,         17,        1,   518400, 0xf47a71ef
+0,         18,         18,        1,   518400, 0x6c440498
+0,         19,         19,        1,   518400, 0xd705bd32
+0,         20,         20,        1,   518400, 0x0800edd0
+0,         21,         21,        1,   518400, 0x902be119
+0,         22,         22,        1,   518400, 0x0f7d7bc4
+0,         23,         23,        1,   518400, 0x9f4dc421
+0,         24,         24,        1,   518400, 0x3b8c8d5a
+0,         25,         25,        1,   518400, 0xbcdfb2b9
+0,         26,         26,        1,   518400, 0xa02a46c3
+0,         27,         27,        1,   518400, 0x8ecde915
+0,         28,         28,        1,   518400, 0x20576bfd
+0,         29,         29,        1,   518400, 0xac40bc36
diff --git a/tests/ref/fate/vc1_sa20021 b/tests/ref/fate/vc1_sa20021
index 450504f83c..11b7ed71ca 100644
--- a/tests/ref/fate/vc1_sa20021
+++ b/tests/ref/fate/vc1_sa20021
@@ -4,62 +4,62 @@ 
 #dimensions 0: 704x480
 #sar 0: 1/1
 0,          0,          0,        1,   506880, 0x884bc093
-0,          2,          2,        1,   506880, 0x4b09548f
-0,          3,          3,        1,   506880, 0x195cbee1
-0,          4,          4,        1,   506880, 0xc8141e28
-0,          5,          5,        1,   506880, 0xb170c49b
+0,          1,          1,        1,   506880, 0x4b09548f
+0,          2,          2,        1,   506880, 0x195cbee1
+0,          3,          3,        1,   506880, 0xc8141e28
+0,          4,          4,        1,   506880, 0xb170c49b
+0,          5,          5,        1,   506880, 0x2782268a
 0,          6,          6,        1,   506880, 0x2782268a
 0,          7,          7,        1,   506880, 0x2782268a
 0,          8,          8,        1,   506880, 0x2782268a
-0,          9,          9,        1,   506880, 0x2782268a
+0,          9,          9,        1,   506880, 0xe6803b32
 0,         10,         10,        1,   506880, 0xe6803b32
-0,         11,         11,        1,   506880, 0xe6803b32
+0,         11,         11,        1,   506880, 0xa5ef9baf
 0,         12,         12,        1,   506880, 0xa5ef9baf
-0,         13,         13,        1,   506880, 0xa5ef9baf
-0,         14,         14,        1,   506880, 0x46e8cbcb
-0,         15,         15,        1,   506880, 0x28a2239b
+0,         13,         13,        1,   506880, 0x46e8cbcb
+0,         14,         14,        1,   506880, 0x28a2239b
+0,         15,         15,        1,   506880, 0x7667af2f
 0,         16,         16,        1,   506880, 0x7667af2f
-0,         17,         17,        1,   506880, 0x7667af2f
-0,         18,         18,        1,   506880, 0x8011bcaf
+0,         17,         17,        1,   506880, 0x8011bcaf
+0,         18,         18,        1,   506880, 0xd422115b
 0,         19,         19,        1,   506880, 0xd422115b
 0,         20,         20,        1,   506880, 0xd422115b
-0,         21,         21,        1,   506880, 0xd422115b
-0,         22,         22,        1,   506880, 0xbcee0b5b
-0,         23,         23,        1,   506880, 0x08fe9ec8
+0,         21,         21,        1,   506880, 0xbcee0b5b
+0,         22,         22,        1,   506880, 0x08fe9ec8
+0,         23,         23,        1,   506880, 0xc8fb8b37
 0,         24,         24,        1,   506880, 0xc8fb8b37
-0,         25,         25,        1,   506880, 0xc8fb8b37
+0,         25,         25,        1,   506880, 0x2c698b52
 0,         26,         26,        1,   506880, 0x2c698b52
 0,         27,         27,        1,   506880, 0x2c698b52
-0,         28,         28,        1,   506880, 0x2c698b52
+0,         28,         28,        1,   506880, 0x2b4ad9bc
 0,         29,         29,        1,   506880, 0x2b4ad9bc
 0,         30,         30,        1,   506880, 0x2b4ad9bc
 0,         31,         31,        1,   506880, 0x2b4ad9bc
-0,         32,         32,        1,   506880, 0x2b4ad9bc
+0,         32,         32,        1,   506880, 0x92e84ebb
 0,         33,         33,        1,   506880, 0x92e84ebb
-0,         34,         34,        1,   506880, 0x92e84ebb
+0,         34,         34,        1,   506880, 0xdb877da3
 0,         35,         35,        1,   506880, 0xdb877da3
 0,         36,         36,        1,   506880, 0xdb877da3
-0,         37,         37,        1,   506880, 0xdb877da3
+0,         37,         37,        1,   506880, 0x44610654
 0,         38,         38,        1,   506880, 0x44610654
-0,         39,         39,        1,   506880, 0x44610654
-0,         40,         40,        1,   506880, 0xe254ce67
-0,         41,         41,        1,   506880, 0xa6085385
+0,         39,         39,        1,   506880, 0xe254ce67
+0,         40,         40,        1,   506880, 0xa6085385
+0,         41,         41,        1,   506880, 0x2d45d744
 0,         42,         42,        1,   506880, 0x2d45d744
-0,         43,         43,        1,   506880, 0x2d45d744
-0,         44,         44,        1,   506880, 0x6e684f51
-0,         45,         45,        1,   506880, 0xe96186cf
+0,         43,         43,        1,   506880, 0x6e684f51
+0,         44,         44,        1,   506880, 0xe96186cf
+0,         45,         45,        1,   506880, 0xb535d369
 0,         46,         46,        1,   506880, 0xb535d369
 0,         47,         47,        1,   506880, 0xb535d369
-0,         48,         48,        1,   506880, 0xb535d369
+0,         48,         48,        1,   506880, 0xeed0b7e0
 0,         49,         49,        1,   506880, 0xeed0b7e0
 0,         50,         50,        1,   506880, 0xeed0b7e0
 0,         51,         51,        1,   506880, 0xeed0b7e0
-0,         52,         52,        1,   506880, 0xeed0b7e0
-0,         53,         53,        1,   506880, 0x8789b20b
-0,         54,         54,        1,   506880, 0x0a0f42fb
+0,         52,         52,        1,   506880, 0x8789b20b
+0,         53,         53,        1,   506880, 0x0a0f42fb
+0,         54,         54,        1,   506880, 0x09bbac2d
 0,         55,         55,        1,   506880, 0x09bbac2d
 0,         56,         56,        1,   506880, 0x09bbac2d
 0,         57,         57,        1,   506880, 0x09bbac2d
 0,         58,         58,        1,   506880, 0x09bbac2d
-0,         59,         59,        1,   506880, 0x09bbac2d
-0,         60,         60,        1,   506880, 0xda77f0df
+0,         59,         59,        1,   506880, 0xda77f0df
diff --git a/tests/ref/fate/xvid-custom-matrix b/tests/ref/fate/xvid-custom-matrix
index 32f629f32d..3590086d39 100644
--- a/tests/ref/fate/xvid-custom-matrix
+++ b/tests/ref/fate/xvid-custom-matrix
@@ -26,4 +26,4 @@ 
 0,         16,         16,        1,   622080, a7ce423456a59bdb4d5921aff1a27691
 0,         17,         17,        1,   622080, 881c9561c9ab66a7659145173f8e8cda
 0,         18,         18,        1,   622080, 7413961f9accd1d32e116592a6448e9b
-0,         21,         21,        1,   622080, c66409494fd1714e6236596f476cece6
+0,         19,         19,        1,   622080, c66409494fd1714e6236596f476cece6
diff --git a/tests/ref/fate/xvid-idct b/tests/ref/fate/xvid-idct
index cdbba2fa27..100296c9be 100644
--- a/tests/ref/fate/xvid-idct
+++ b/tests/ref/fate/xvid-idct
@@ -26,4 +26,4 @@ 
 0,         16,         16,        1,   622080, 0a1453df21e4547447ec8f27a0d4d5ec
 0,         17,         17,        1,   622080, d3495686e769df299b1732326fa3f17e
 0,         18,         18,        1,   622080, 602e9020397b1e82b58b1ff6b9733d21
-0,         21,         21,        1,   622080, 759bd3f739a3b99309efa5c1a697e34d
+0,         19,         19,        1,   622080, 759bd3f739a3b99309efa5c1a697e34d