diff options
author | Erich Eckner <git@eckner.net> | 2016-10-19 21:45:17 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2016-10-19 21:45:17 +0200 |
commit | 7d62f8a0a4c1c21dddcebaf402c2cbc9e19f2078 (patch) | |
tree | 60c85f67b79f946b3c0ff519903691300f31a632 | |
parent | 9bee443650fe961f88055f72bf2d005b06bcbfe0 (diff) | |
download | sound-cutter-7d62f8a0a4c1c21dddcebaf402c2cbc9e19f2078.tar.xz |
bugfix: calculation of endtime for cd
-rw-r--r-- | sound-cutter.in | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/sound-cutter.in b/sound-cutter.in index fef9d72..4b40ee0 100644 --- a/sound-cutter.in +++ b/sound-cutter.in @@ -180,6 +180,10 @@ do if [ ${i} -eq -1 ] then firstline="${teilEins}" + outEndTime=$[ \ + $(timetosample "${outRate}" $(echo "${firstline}" | awk '{print $2}' | tr '=' ' ')) \ + - $(timetosample "${outRate}" $(echo "${firstline}" | awk '{print $1}' )) \ + ] remixcmd="${teilZwei}" if echo "${remixcmd}" | \ grep -q "rate " @@ -303,6 +307,12 @@ do abstime=0 done +for (( i=0; i<=${#inTimes[@]}; i++ )) +do + [ -n "${outTimecorrections[${i}]}" ] && \ + outEndTime=$[${outEndTime}-${outTimecorrections[${i}]}] +done + splicecmd="" abstime=0 for (( i=0; i<=${#inTimes[@]}; i++ )) @@ -324,6 +334,8 @@ then outTimes[${i}]=$(bc <<< "${outTimes[${i}]} + ${diff} - ${nDiff}") diff="${nDiff}" done + diff=$(bc <<< "(${outEndTime} + ${align2}) % (2 * ${align2}) - ${align2}") + outEndTime=$(bc <<< "${outEndTime} - ${diff}") fi trimcmd="" @@ -337,12 +349,7 @@ done if ${cdAusrichten} then output="-b 16 ${output}" - gesZeit=$[ \ - $(timetosample "${outRate}" $(echo "${firstline}" | awk '{print $2}' | tr '=' ' ')) \ - - $(timetosample "${outRate}" $(echo "${firstline}" | awk '{print $1}' )) \ - ] - gesZeit=$(bc <<< "((${gesZeit}-1) / 588 + 1)*588") - remixcmd="${remixcmd} trim 0 =${gesZeit}s" + remixcmd="${remixcmd} trim 0 =${outEndTime}s" extraIn=" -r ${inRate} -c ${#inputs[@]} -n" else extraIn="" |