Browse Source

Tool to analyze multimedia files and create directories and symlinks for the
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

Michael Niedermayer 14 years ago
parent
commit
bf2d43de3f
1 changed files with 21 additions and 0 deletions
  1. 21 0
      tools/jauche_sortierer.sh

+ 21 - 0
tools/jauche_sortierer.sh

@@ -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