summaryrefslogtreecommitdiff
path: root/localvideowebencode
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2014-09-24 22:07:03 +0200
committerJonas Smedegaard <dr@jones.dk>2014-09-24 22:07:03 +0200
commitce43d1f9a3d12c260cc3f95b8cde4476333ad0de (patch)
treed4dd9406b06f17cff5f4b199f0e01780cc436eef /localvideowebencode
parent4d60a4e3325946cc76aeb514e7de5adce9972333 (diff)
Encode all targets in parallel.
Diffstat (limited to 'localvideowebencode')
-rwxr-xr-xlocalvideowebencode30
1 files changed, 15 insertions, 15 deletions
diff --git a/localvideowebencode b/localvideowebencode
index 7e795ac..20fe19a 100755
--- a/localvideowebencode
+++ b/localvideowebencode
@@ -354,23 +354,23 @@ if [ -n "$loudness" ] && [ -z "$_melt_loudness" ]; then
_melt_loudness="$(perl -ne 'm!<property name="results">([^<]+)</property>! and print $1' $stem.xml)"
fi
-if [ -n "$ogg" ]; then
- $melt -group $_melt_in $infiles -group ${channels:+$audioprefilters${_melt_loudness:+ -filter loudness results="$_melt_loudness"}} $filters${channels:+ $_melt_postfilters_audio} -consumer avformat:"$stem.ogv" $_melt_ogg $_melt_vorbis $_melt_out
+if [ -n "$mp4" ] && [ -n "$bitrate_fixed" ]; then
+ $melt -group $_melt_in $infiles -group $filters \
+ -consumer avformat:/dev/null pass=1 fastfirstpass=1 an=1 audio_off=1 $_melt_h264 $_melt_out
fi
-if [ -n "$mp4" ]; then
- [ -z "$bitrate_fixed" ] || $melt -group $_melt_in $infiles -group $filters -consumer avformat:/dev/null pass=1 fastfirstpass=1 an=1 audio_off=1 $_melt_h264 $_melt_out
- $melt -group $_melt_in $infiles -group ${channels:+$audioprefilters${_melt_loudness:+ -filter loudness results="$_melt_loudness"}} $filters${channels:+ $_melt_postfilters_audio} -consumer avformat:"$stem.mp4" ${bitrate_fixed:+pass=2} $_melt_h264 $_melt_aac $_melt_out
- if [ -z "$melt_recent" ]; then
- mv "$stem.mp4" "$stem.mp4"~
- qt-faststart "$stem.mp4"~ "$stem.mp4"
- [ -f "$stem.mp4" ] && rm "$stem.mp4"~ || mv -f "$stem.mp4"~ "$stem.mp4"
- fi
-fi
-
-if [ -n "$webm" ]; then
- # TODO: use two-pass when supported by melt
- $melt -group $_melt_in $infiles -group ${channels:+$audioprefilters${_melt_loudness:+ -filter loudness results="$_melt_loudness"}} $filters${channels:+ $_melt_postfilters_audio} -consumer avformat:"$stem.webm" $_melt_webm $_melt_vorbis $_melt_out
+# TODO: always use two-pass for webm when supported by melt
+$melt -group $_melt_in $infiles \
+ -group ${channels:+$audioprefilters${_melt_loudness:+ -filter loudness results="$_melt_loudness"}} \
+ $filters${channels:+ $_melt_postfilters_audio} \
+ ${ogg:+-consumer avformat:$stem.ogv $_melt_ogg $_melt_vorbis $_melt_out} \
+ ${mp4:+-consumer avformat:$stem.mp4 ${bitrate_fixed:+pass=2} $_melt_h264 $_melt_aac $_melt_out} \
+ ${webm:+-consumer avformat:$stem.webm $_melt_webm $_melt_vorbis $_melt_out}
+
+if [ -n "$mp4" ] && [ -z "$melt_recent" ]; then
+ mv "$stem.mp4" "$stem.mp4"~
+ qt-faststart "$stem.mp4"~ "$stem.mp4"
+ [ -f "$stem.mp4" ] && rm "$stem.mp4"~ || mv -f "$stem.mp4"~ "$stem.mp4"
fi
# cleanup audio normalize hinting