On Sun, 25 Oct 2015, Nicolas George wrote:

[...]

--- a/tests/fate-run.sh
+++ b/tests/fate-run.sh
@@ -249,6 +249,20 @@ gapless(){
     do_md5sum $decfile3
 }

+concat(){

+    template=$(target_path $1)

Should it really be target_path? The template is in the source.

You are right, target path is unneeded here.

+    sample=$(target_path $2)
+
+    concatfile="${outdir}/${test}.ffconcat"
+    packetfile="${outdir}/${test}.ffprobe"
+    cleanfiles="$concatfile $packetfile"
+
+    awk "{gsub(/%SRCFILE%/, \"$sample\"); print}" $template > $concatfile
+    run ffprobe${PROGSUF} -show_streams -show_packets -v 0 -fflags keepside -f 
concat $concatfile > $packetfile
+

+    do_md5sum $packetfile

Since the output files are text, I would prefer it being the reference as
is, without a hash. With a hash, you need two extra steps to know what you
just broke.

I used the md5 hash because the packet files are quite big - around 3000-10000 lines each. It seemed like a waste of space in the repository for relatively little benefit.


+}
+
 mkdir -p "$outdir"

 # Disable globbing: command arguments may contain globbing characters and
diff --git a/tests/fate/concatdec.mak b/tests/fate/concatdec.mak
new file mode 100644
index 0000000..89d5409
--- /dev/null
+++ b/tests/fate/concatdec.mak
@@ -0,0 +1,12 @@
+FATE_CONCAT_TEMPLATE=tests/test_template.ffconcat
+
+FATE_CONCAT_DEMUXER_LAVF-$(call ENCDEC2, MPEG2VIDEO, MP2, MPEGTS)    += ts
+FATE_CONCAT_DEMUXER_LAVF-$(call ENCDEC2, MPEG2VIDEO, PCM_S16LE, MXF) += mxf
+FATE_CONCAT_DEMUXER_LAVF-$(call ENCDEC2, MPEG2VIDEO, PCM_S16LE, MXF) += mxf_d10
+
+$(foreach D,$(FATE_CONCAT_DEMUXER_LAVF-yes),$(eval 
fate-concat-demuxer-lavf-$(D): ffprobe$(PROGSSUF)$(EXESUF) fate-lavf-$(D)))
+$(foreach D,$(FATE_CONCAT_DEMUXER_LAVF-yes),$(eval 
fate-concat-demuxer-lavf-$(D): CMD = concat $(FATE_CONCAT_TEMPLATE) 
tests/data/lavf/lavf.$(D)))
+
+FATE_CONCAT_DEMUXER-$(CONFIG_CONCAT_DEMUXER) += 
$(FATE_CONCAT_DEMUXER_LAVF-yes:%=fate-concat-demuxer-lavf-%)
+
+FATE-$(CONFIG_FFPROBE) += $(FATE_CONCAT_DEMUXER-yes)

I am not fluent enough in make, I will trust you on this.

I am not very fluent either, I only hope I've made it right...

[...]

diff --git a/tests/test_template.ffconcat b/tests/test_template.ffconcat
new file mode 100644
index 0000000..e9b685d
--- /dev/null
+++ b/tests/test_template.ffconcat
@@ -0,0 +1,112 @@

+#ffconcat version 1.0
+# ^ header is commented out to avoid probing therefore enable unsafe paths

Probably better to pass "-safe 0" explicitly.

OK.

+
+file      %SRCFILE%
+
+file      %SRCFILE%
+file_packet_metadata dummy=1
+duration  1
+

+file      %SRCFILE%
+inpoint   00:00.00
+outpoint  00:00.04
+
+file      %SRCFILE%
+inpoint   00:00.04
+outpoint  00:00.08
<snip>

Does it need that many in/outpoints?

I used this many (25 1-frame segment) because this is also a seek test for open gop mxf. I can reduce it but in that case I will have to maintain my own out of tree tests for it which is counter-productive IMHO.

Let me know what you think, I can change any point you still find unjustified.

Thanks,
Marton
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to