From 0518d124a58cd9a7fd80e6cf97e614ca0d44f91d Mon Sep 17 00:00:00 2001
From: Tobias Rapp <t.rapp@noa-archive.com>
Date: Tue, 25 Oct 2016 10:06:15 +0200
Subject: [PATCH 3/3] fate: Add MXF D10/DNXHD/DV25 probe tests

Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
---
 tests/fate/mxf.mak             |  23 +++++-
 tests/ref/fate/mxf-probe-d10   | 108 ++++++++++++++++++++++++
 tests/ref/fate/mxf-probe-dnxhd | 182 +++++++++++++++++++++++++++++++++++++++++
 tests/ref/fate/mxf-probe-dv25  | 149 +++++++++++++++++++++++++++++++++
 4 files changed, 461 insertions(+), 1 deletion(-)
 create mode 100644 tests/ref/fate/mxf-probe-d10
 create mode 100644 tests/ref/fate/mxf-probe-dnxhd
 create mode 100644 tests/ref/fate/mxf-probe-dv25

diff --git a/tests/fate/mxf.mak b/tests/fate/mxf.mak
index 124c250..201cb93 100644
--- a/tests/fate/mxf.mak
+++ b/tests/fate/mxf.mak
@@ -14,7 +14,28 @@ fate-mxf-metadata-source-ref1: CMD = fmtstdout ffmetadata -i $(TARGET_SAMPLES)/m
 FATE_MXF += fate-mxf-metadata-source-ref2
 fate-mxf-metadata-source-ref2: CMD = fmtstdout ffmetadata -i $(TARGET_SAMPLES)/mxf/track_02_a01.mxf -fflags +bitexact -flags +bitexact -map 0:0 -map 0:1 -map 0:3  -map_metadata:g -1
 
+#
+# Tests probing MXF format and stream properties
+#
+PROBE_FORMAT_STREAMS_COMMAND = \
+    ffprobe$(PROGSSUF)$(EXESUF) -show_entries format=format_name,duration,bit_rate:format_tags:streams:stream_tags \
+    -print_format default -bitexact -v 0
+
+FATE_MXF_PROBE-$(call ENCDEC2, MPEG2VIDEO, PCM_S16LE, MXF) += fate-mxf-probe-d10
+fate-mxf-probe-d10: SRC = $(TARGET_SAMPLES)/mxf/Sony-00001.mxf
+fate-mxf-probe-d10: CMD = run $(PROBE_FORMAT_STREAMS_COMMAND) -i "$(SRC)"
+
+FATE_MXF_PROBE-$(call ENCDEC, DNXHD, MXF) += fate-mxf-probe-dnxhd
+fate-mxf-probe-dnxhd: SRC = $(TARGET_SAMPLES)/mxf/multiple_components.mxf
+fate-mxf-probe-dnxhd: CMD = run $(PROBE_FORMAT_STREAMS_COMMAND) -i "$(SRC)"
+
+FATE_MXF_PROBE-$(call ENCDEC2, DVVIDEO, PCM_S16LE, MXF) += fate-mxf-probe-dv25
+fate-mxf-probe-dv25: SRC = $(TARGET_SAMPLES)/mxf/Avid-00005.mxf
+fate-mxf-probe-dv25: CMD = run $(PROBE_FORMAT_STREAMS_COMMAND) -i "$(SRC)"
+
 FATE_MXF-$(CONFIG_MXF_DEMUXER) += $(FATE_MXF)
 
 FATE_SAMPLES_AVCONV += $(FATE_MXF-yes)
-fate-mxf: $(FATE_MXF-yes)
+FATE_SAMPLES_FFPROBE += $(FATE_MXF_PROBE-yes)
+
+fate-mxf: $(FATE_MXF-yes) $(FATE_MXF_PROBE-yes)
diff --git a/tests/ref/fate/mxf-probe-d10 b/tests/ref/fate/mxf-probe-d10
new file mode 100644
index 0000000..30ceaaf
--- /dev/null
+++ b/tests/ref/fate/mxf-probe-d10
@@ -0,0 +1,108 @@
+[STREAM]
+index=0
+codec_name=mpeg2video
+profile=0
+codec_type=video
+codec_time_base=1/25
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+width=720
+height=608
+coded_width=0
+coded_height=0
+has_b_frames=0
+sample_aspect_ratio=152:135
+display_aspect_ratio=4:3
+pix_fmt=yuv422p
+level=5
+color_range=tv
+color_space=unknown
+color_transfer=unknown
+color_primaries=unknown
+chroma_location=topleft
+field_order=tt
+timecode=N/A
+refs=1
+id=N/A
+r_frame_rate=25/1
+avg_frame_rate=25/1
+time_base=1/25
+start_pts=0
+start_time=0.000000
+duration_ts=4
+duration=0.160000
+bit_rate=50000000
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010501010D1313000000AE86B200913105800000080046A54011
+[/STREAM]
+[STREAM]
+index=1
+codec_name=pcm_s16le
+profile=unknown
+codec_type=audio
+codec_time_base=1/48000
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+sample_fmt=s16
+sample_rate=48000
+channels=8
+channel_layout=unknown
+bits_per_sample=16
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/48000
+start_pts=0
+start_time=0.000000
+duration_ts=8562
+duration=0.178375
+bit_rate=6144000
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010501010D1313000000AE86B200913105800000080046A54011
+[/STREAM]
+[FORMAT]
+format_name=mxf
+duration=0.178375
+bit_rate=56419744
+TAG:uid=0086b200-9131-0580-0000-080046a54011
+TAG:generation_uid=b486b200-9131-0580-0000-080046a54011
+TAG:company_name=SONY
+TAG:product_name=eVTR
+TAG:product_version=1.00
+TAG:product_uid=060e2b34-0401-0106-0e06-012001010100
+TAG:modification_date=2004-07-05T21:39:00.000000Z
+TAG:material_package_umid=0x060A2B340101010501010D1313000000A886B200913105800000080046A54011
+TAG:timecode=07:12:10:00
+[/FORMAT]
diff --git a/tests/ref/fate/mxf-probe-dnxhd b/tests/ref/fate/mxf-probe-dnxhd
new file mode 100644
index 0000000..6c7f4ad
--- /dev/null
+++ b/tests/ref/fate/mxf-probe-dnxhd
@@ -0,0 +1,182 @@
+[STREAM]
+index=0
+codec_name=unknown
+profile=unknown
+codec_type=data
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/90000
+start_pts=0
+start_time=0.000000
+duration_ts=22523
+duration=0.250256
+bit_rate=N/A
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010101010F001300000057DEEA25B7D80C94060E2B347F7F2A80
+TAG:data_type=audio
+[/STREAM]
+[STREAM]
+index=1
+codec_name=unknown
+profile=unknown
+codec_type=data
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/90000
+start_pts=0
+start_time=0.000000
+duration_ts=22523
+duration=0.250256
+bit_rate=N/A
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010101010F001300000057DEEA25B7F40C94060E2B347F7F2A80
+TAG:data_type=audio
+[/STREAM]
+[STREAM]
+index=2
+codec_name=unknown
+profile=unknown
+codec_type=data
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/90000
+start_pts=0
+start_time=0.000000
+duration_ts=22523
+duration=0.250256
+bit_rate=N/A
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010101010F001300000057DEEA25B8050C94060E2B347F7F2A80
+TAG:data_type=video
+[/STREAM]
+[STREAM]
+index=3
+codec_name=dnxhd
+profile=1
+codec_type=video
+codec_time_base=0/1
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+width=640
+height=480
+coded_width=640
+coded_height=480
+has_b_frames=0
+sample_aspect_ratio=1:1
+display_aspect_ratio=4:3
+pix_fmt=yuv422p
+level=-99
+color_range=N/A
+color_space=bt709
+color_transfer=unknown
+color_primaries=unknown
+chroma_location=unspecified
+field_order=progressive
+timecode=N/A
+refs=1
+id=N/A
+r_frame_rate=24000/1001
+avg_frame_rate=0/0
+time_base=1001/24000
+start_pts=0
+start_time=0.000000
+duration_ts=6
+duration=0.250250
+bit_rate=N/A
+max_bit_rate=N/A
+bits_per_raw_sample=8
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010101010F001300000057DEEA25B84D0C94060E2B347F7F2A80
+TAG:file_package_name=dnxhr_export.aaf
+TAG:reel_umid=0x060A2B340101010101010F001300000057DEEA1570895313060E2B347F7F2A80
+TAG:reel_name=sample_footage
+TAG:timecode=01:00:00:00
+[/STREAM]
+[FORMAT]
+format_name=mxf
+duration=0.250250
+bit_rate=25340195
+TAG:project_name=UHD
+TAG:uid=784c8132-ae36-ed4d-b0ff-2edf1f3f2d92
+TAG:generation_uid=b6bcfcab-70ff-7331-c47c-478869de11d2
+TAG:application_platform=AAFSDK (MacOS X)
+TAG:modification_date=2016-09-18T19:25:25.000000Z
+TAG:product_uid=acfbf03a-4f42-a231-d0b7-c06ecd3d4ad7
+TAG:product_version=Unknown version
+TAG:product_name=Avid Media Composer 8.6.3.43955
+TAG:company_name=Avid Technology, Inc.
+TAG:material_package_umid=0x060A2B340101010101010F001300000057DEEA1570665313060E2B347F7F2A80
+TAG:material_package_name=sample_footage
+TAG:comment_UNC Path=/Users/mark/Dev/pyaaf/example/work/dnxhr_export.aaf
+[/FORMAT]
diff --git a/tests/ref/fate/mxf-probe-dv25 b/tests/ref/fate/mxf-probe-dv25
new file mode 100644
index 0000000..0360691
--- /dev/null
+++ b/tests/ref/fate/mxf-probe-dv25
@@ -0,0 +1,149 @@
+[STREAM]
+index=0
+codec_name=dvvideo
+profile=unknown
+codec_type=video
+codec_time_base=1/25
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+width=720
+height=576
+coded_width=720
+coded_height=576
+has_b_frames=0
+sample_aspect_ratio=16:15
+display_aspect_ratio=4:3
+pix_fmt=yuv420p
+level=-99
+color_range=N/A
+color_space=unknown
+color_transfer=unknown
+color_primaries=unknown
+chroma_location=topleft
+field_order=bb
+timecode=N/A
+refs=1
+id=N/A
+r_frame_rate=25/1
+avg_frame_rate=25/1
+time_base=1/25
+start_pts=0
+start_time=0.000000
+duration_ts=25
+duration=1.000000
+bit_rate=N/A
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010501010D4313000000F2E2FCE98722F14F947F08DE1EF7A8DA
+[/STREAM]
+[STREAM]
+index=1
+codec_name=pcm_s16le
+profile=unknown
+codec_type=audio
+codec_time_base=1/48000
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+sample_fmt=s16
+sample_rate=48000
+channels=1
+channel_layout=unknown
+bits_per_sample=16
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/48000
+start_pts=0
+start_time=0.000000
+duration_ts=48000
+duration=1.000000
+bit_rate=768000
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010501010D4313000000F2E2FCE98722F14F947F08DE1EF7A8DA
+[/STREAM]
+[STREAM]
+index=2
+codec_name=pcm_s16le
+profile=unknown
+codec_type=audio
+codec_time_base=1/48000
+codec_tag_string=[0][0][0][0]
+codec_tag=0x0000
+sample_fmt=s16
+sample_rate=48000
+channels=1
+channel_layout=unknown
+bits_per_sample=16
+id=N/A
+r_frame_rate=0/0
+avg_frame_rate=0/0
+time_base=1/48000
+start_pts=0
+start_time=0.000000
+duration_ts=48000
+duration=1.000000
+bit_rate=768000
+max_bit_rate=N/A
+bits_per_raw_sample=N/A
+nb_frames=N/A
+nb_read_frames=N/A
+nb_read_packets=N/A
+DISPOSITION:default=0
+DISPOSITION:dub=0
+DISPOSITION:original=0
+DISPOSITION:comment=0
+DISPOSITION:lyrics=0
+DISPOSITION:karaoke=0
+DISPOSITION:forced=0
+DISPOSITION:hearing_impaired=0
+DISPOSITION:visual_impaired=0
+DISPOSITION:clean_effects=0
+DISPOSITION:attached_pic=0
+DISPOSITION:timed_thumbnails=0
+TAG:file_package_umid=0x060A2B340101010501010D4313000000F2E2FCE98722F14F947F08DE1EF7A8DA
+[/STREAM]
+[FORMAT]
+format_name=mxf
+duration=1.000000
+bit_rate=30679040
+TAG:uid=a741d0c7-244a-bc4a-bd36-3323d04f8954
+TAG:generation_uid=c1d7a0ee-89d6-754d-bd52-cdf42b53de9f
+TAG:company_name=AVID
+TAG:product_name=TRMG
+TAG:product_version=2.97
+TAG:product_uid=00000000-0000-0000-0000-000000000000
+TAG:modification_date=2006-06-22T16:37:36.000000Z
+TAG:material_package_umid=0x060A2B340101010501010D431300000008DC3900972905800000080046B1E89C
+TAG:timecode=01:00:00:00
+[/FORMAT]
-- 
1.9.1

