Tool to analyze multimedia files and create directories and symlinks for the
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 9 Oct 2010 19:52:06 +0000 (19:52 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 9 Oct 2010 19:52:06 +0000 (19:52 +0000)
container type and codecs in each file that point back to the file.

Originally committed as revision 25428 to svn://svn.ffmpeg.org/ffmpeg/trunk

tools/jauche_sortierer.sh [new file with mode: 0755]

diff --git a/tools/jauche_sortierer.sh b/tools/jauche_sortierer.sh
new file mode 100755 (executable)
index 0000000..1f84f1a
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+#GPL
+#TODO
+#add pixelformat/sampleformat into the path of the codecs
+
+FFP=../ffprobe
+TMP=$(mktemp) || exit 1
+TARGET=$1
+shift
+
+for v do
+    BASE=$(basename $v)
+    echo $v | egrep -i '(public|private)' >/dev/null && echo Warning $v may be private
+    $FFP $v 2> $TMP
+    FORM=$((grep 'Input #0, ' -m1 $TMP || echo 'Input #0, unknown') | sed 's/Input #0, \([a-zA-Z0-9_]*\).*/\1/' )
+    mkdir -p $TARGET/container/$FORM
+    ln -s $v $TARGET/container/$FORM/$BASE
+    eval $(grep 'Stream #0\.[^:]*: [a-zA-Z0-9][^:]*: [a-zA-Z0-9]' $TMP | sed 's#[^:]*: \([a-zA-Z0-9]*\)[^:]*: \([a-zA-Z0-9]*\).*#mkdir -p '$TARGET'/\1/\2 ; ln -s '$v' '$TARGET'/\1/\2/'$BASE' ; #')
+done
+
+rm $TMP