Message ID | AS8P250MB0744314AD7A516CFC71F61BF8FE9A@AS8P250MB0744.EURP250.PROD.OUTLOOK.COM |
---|---|
State | Accepted |
Commit | f32a83c4eb8b65869ef7833e9747bc05e9c8abbd |
Headers | show |
Series | [FFmpeg-devel,01/20] fate/matroska: Add test for remuxing non-rotation displaymatrix | expand |
Andreas Rheinhardt: > This provides coverage for the case in which the displaymatrix > is ignored. > > Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> > --- > In this case, both the x and y axis are rotated in the same way, > yet both axes are scaled by different factors, so that it is not > an orthogonal transformation. Yet one could still argue that > it actually has a well-defined rotation angle. > > tests/fate/matroska.mak | 10 ++++++++++ > .../ref/fate/matroska-non-rotation-displaymatrix | 15 +++++++++++++++ > 2 files changed, 25 insertions(+) > create mode 100644 tests/ref/fate/matroska-non-rotation-displaymatrix > > diff --git a/tests/fate/matroska.mak b/tests/fate/matroska.mak > index d1c316e998..ed6bd58cee 100644 > --- a/tests/fate/matroska.mak > +++ b/tests/fate/matroska.mak > @@ -90,6 +90,16 @@ FATE_MATROSKA-$(call TRANSCODE, PCM_S24BE PCM_S24LE, MATROSKA, WAV_DEMUXER) \ > += fate-matroska-move-cues-to-front > fate-matroska-move-cues-to-front: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav matroska "-map 0 -map 0 -c:a:0 pcm_s24be -c:a:1 copy -cluster_time_limit 5 -cues_to_front yes -metadata_header_padding 7840 -write_crc32 0" "-map 0 -c copy -t 0.1" > > +# This test covers the case in which a displaymatrix is not a rotation > +# and is therefore ignored by the muxer, i.e. the ffprobe output of > +# side data should be empty. > +FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MOV_DEMUXER H264_PARSER H264_DECODER) \ > + += fate-matroska-non-rotation-displaymatrix > +fate-matroska-non-rotation-displaymatrix: CMD = transcode mov $(TARGET_SAMPLES)/mov/displaymatrix.mov matroska \ > + "-c copy -frames:v 5" \ > + "-c copy" \ > + "-show_entries stream_side_data_list" > + > # This tests DOVI (reading from MP4 and Matroska and writing to Matroska) > # as well as writing the Cues at the front (by shifting data) if > # the initially reserved amount of space turns out to be insufficient. > diff --git a/tests/ref/fate/matroska-non-rotation-displaymatrix b/tests/ref/fate/matroska-non-rotation-displaymatrix > new file mode 100644 > index 0000000000..c48a4afa43 > --- /dev/null > +++ b/tests/ref/fate/matroska-non-rotation-displaymatrix > @@ -0,0 +1,15 @@ > +3d9eac5b7551c5d644443a70451c809c *tests/data/fate/matroska-non-rotation-displaymatrix.matroska > +7860 tests/data/fate/matroska-non-rotation-displaymatrix.matroska > +#extradata 0: 34, 0xc1d10b51 > +#tb 0: 1/1000 > +#media_type 0: video > +#codec_id 0: h264 > +#dimensions 0: 160x240 > +#sar 0: 1/2 > +0, -33, 0, 33, 4133, 0xc48cf152 > +0, 0, 60, 33, 1077, 0x15a71a8a, F=0x0 > +0, 27, 27, 33, 355, 0x1ee8b91a, F=0x0 > +0, 60, 127, 33, 1110, 0x4e1a2b12, F=0x0 > +0, 94, 94, 33, 430, 0x8724d62c, F=0x0 > +[STREAM] > +[/STREAM] Will apply this patchset tomorrow unless there are objections. - Andreas
diff --git a/tests/fate/matroska.mak b/tests/fate/matroska.mak index d1c316e998..ed6bd58cee 100644 --- a/tests/fate/matroska.mak +++ b/tests/fate/matroska.mak @@ -90,6 +90,16 @@ FATE_MATROSKA-$(call TRANSCODE, PCM_S24BE PCM_S24LE, MATROSKA, WAV_DEMUXER) \ += fate-matroska-move-cues-to-front fate-matroska-move-cues-to-front: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav matroska "-map 0 -map 0 -c:a:0 pcm_s24be -c:a:1 copy -cluster_time_limit 5 -cues_to_front yes -metadata_header_padding 7840 -write_crc32 0" "-map 0 -c copy -t 0.1" +# This test covers the case in which a displaymatrix is not a rotation +# and is therefore ignored by the muxer, i.e. the ffprobe output of +# side data should be empty. +FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MOV_DEMUXER H264_PARSER H264_DECODER) \ + += fate-matroska-non-rotation-displaymatrix +fate-matroska-non-rotation-displaymatrix: CMD = transcode mov $(TARGET_SAMPLES)/mov/displaymatrix.mov matroska \ + "-c copy -frames:v 5" \ + "-c copy" \ + "-show_entries stream_side_data_list" + # This tests DOVI (reading from MP4 and Matroska and writing to Matroska) # as well as writing the Cues at the front (by shifting data) if # the initially reserved amount of space turns out to be insufficient. diff --git a/tests/ref/fate/matroska-non-rotation-displaymatrix b/tests/ref/fate/matroska-non-rotation-displaymatrix new file mode 100644 index 0000000000..c48a4afa43 --- /dev/null +++ b/tests/ref/fate/matroska-non-rotation-displaymatrix @@ -0,0 +1,15 @@ +3d9eac5b7551c5d644443a70451c809c *tests/data/fate/matroska-non-rotation-displaymatrix.matroska +7860 tests/data/fate/matroska-non-rotation-displaymatrix.matroska +#extradata 0: 34, 0xc1d10b51 +#tb 0: 1/1000 +#media_type 0: video +#codec_id 0: h264 +#dimensions 0: 160x240 +#sar 0: 1/2 +0, -33, 0, 33, 4133, 0xc48cf152 +0, 0, 60, 33, 1077, 0x15a71a8a, F=0x0 +0, 27, 27, 33, 355, 0x1ee8b91a, F=0x0 +0, 60, 127, 33, 1110, 0x4e1a2b12, F=0x0 +0, 94, 94, 33, 430, 0x8724d62c, F=0x0 +[STREAM] +[/STREAM]
This provides coverage for the case in which the displaymatrix is ignored. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com> --- In this case, both the x and y axis are rotated in the same way, yet both axes are scaled by different factors, so that it is not an orthogonal transformation. Yet one could still argue that it actually has a well-defined rotation angle. tests/fate/matroska.mak | 10 ++++++++++ .../ref/fate/matroska-non-rotation-displaymatrix | 15 +++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 tests/ref/fate/matroska-non-rotation-displaymatrix