]> git.plutz.net Git - serve0/blobdiff - helpers/genmeta.sh
thumbnail and meta generation
[serve0] / helpers / genmeta.sh
index c41c49155895a3f42550033084288594af6e1b0b..ca0fe7f8c1a54f1e0b7ee18d3821e80a1879ffa5 100755 (executable)
@@ -1,4 +1,20 @@
 #!/bin/zsh
+# Copyright 2014 - 2016 Paul Hänsch
+#
+# This file is part of Serve0
+#
+# Serve0 is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# Serve0 is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with Serve0  If not, see <http://www.gnu.org/licenses/>.
 
 video="$1"
 meta="$2"
@@ -8,12 +24,13 @@ if [ -r "$meta" ]; then
   description="$(sed -n '3,$p' "$meta")"
 fi
 
-mplayer -really-quiet -identify -frames 0 -nosound -vo null "$video" \
-| sed -rn 's:ID_VIDEO_WIDTH=(.*):\1:p;
+printf '' |mplayer -input nodefault-bindings -nosound -vo null -identify -frames 0 "$video" \
+| sort \
+| sed -rn 's:ID_LENGTH=(.*)(\..*)$:\1:p;
            s:ID_VIDEO_HEIGHT=(.*):\1:p;
-           s:ID_LENGTH=(.*)(\..*)$:\1:p;' \
+           s:ID_VIDEO_WIDTH=(.*):\1:p;' \
 | tr '\n' ' ' \
-| read width height length
+| read length height width 2>/dev/null
 
 cat <<EOF >"$meta"
 ${length:-0}   ${width:-0}     ${height:-0}    ${video##*/}