summaryrefslogtreecommitdiff
path: root/localvideowebencode
diff options
context:
space:
mode:
authorJonas Smedegaard <dr@jones.dk>2014-10-04 11:42:06 +0200
committerJonas Smedegaard <dr@jones.dk>2014-10-04 11:42:06 +0200
commit5db1ba68a253326ccae271b32e45cfa128b80d4c (patch)
tree36c4a10263b67206c875db291e9a83604bfeeb94 /localvideowebencode
parent39687f48e9ad51bf4d3fa203e6be3f7260f00de5 (diff)
Fix resolve downmixing.
Diffstat (limited to 'localvideowebencode')
-rwxr-xr-xlocalvideowebencode22
1 files changed, 19 insertions, 3 deletions
diff --git a/localvideowebencode b/localvideowebencode
index 59e88b7..3d6f952 100755
--- a/localvideowebencode
+++ b/localvideowebencode
@@ -387,9 +387,25 @@ if [ -n "$stereo$mono$silence" ]; then
| perl -ne 's/channels=// and print $_' || echo -1)
fi
# adapt channel count and flags to reflect actual downmix/silence need
-[ -z "$stereo" ] || [ $channels -le 2 ] || { stereo= && channels=2; }
-[ -z "$mono" ] || [ $channels -le 1 ] || { mono= && channels=1; }
-[ -z "$silence" ] || [ $channels -le 0 ] || { silence= && channels=0; }
+if [ -n "$stereo" ]; then
+ if [ $channels -gt 2 ]; then
+ channels=2
+ else
+ stereo=
+ fi
+elif [ -n "$mono" ]; then
+ if [ $channels -gt 1 ]; then
+ channels=1
+ else
+ mono=
+ fi
+elif [ -n "$silence" ]; then
+ if [ $channels -gt 0 ]; then
+ channels=0
+ else
+ silence=
+ fi
+fi
[ -z "$channels" ] || [ $channels -gt 0 ] || channels=
if [ -n "$stereo$mono$silence" ]; then
# melt cannot downmix with (stereo?) filters applied (bug#763911)