X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=actions%2Ftranscode.sh;h=35ff8f4482d09e488ae2861ddc66e91d1bb36464;hb=c99ab651783572b0a4e6dc76e93f60418cdf683b;hp=fa1de34dc0150a205663152abe96263e808af5fa;hpb=7090517b28c8814ca9338b5289c213f3ba07b50b;p=serve0 diff --git a/actions/transcode.sh b/actions/transcode.sh old mode 100644 new mode 100755 index fa1de34..35ff8f4 --- a/actions/transcode.sh +++ b/actions/transcode.sh @@ -1,7 +1,23 @@ #!/bin/zsh +# Copyright 2015 - 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 . -info="$_GET[\"i\"]" -target="$_GET[\"t\"]" +info="${_GET[i]}" +target="${_GET[t]}" video="${_DATA}/videos/$info" meta="${_DATA}/meta/$info.meta" trans="${_DATA}/transcoded/${info}.${target}p.webm" @@ -10,7 +26,9 @@ head -n1 "$meta" |read length width height name twidth=$(($width * $target / $height)) -[ -f "$trans" ] || nohup avconv -i "$video" -s "${twidth}x${target}" -threads auto "$trans" & +if ! [ -f "$trans" ]; then + [ "$target" -le 240 ] && nohup avconv -i "$video" -s "${twidth}x${target}" -b:a 80k -threads auto "$trans" & + [ "$target" -gt 240 ] && nohup avconv -i "$video" -s "${twidth}x${target}" -threads auto "$trans" & +fi -echo "Location: /transcoded/${info}.${target}p.webm" -echo +redirect "/transcoded/${info}.${target}p.webm"