diff options
Diffstat (limited to 'roles/prerec/templates')
-rwxr-xr-x | roles/prerec/templates/reencode.sh | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/roles/prerec/templates/reencode.sh b/roles/prerec/templates/reencode.sh index c9c87e1..63be1d0 100755 --- a/roles/prerec/templates/reencode.sh +++ b/roles/prerec/templates/reencode.sh @@ -8,12 +8,7 @@ cpu=4 time_limit="" print_only=false limit_resolution=1080 -limit_fps=29.99 - -with_suffix() { - suffix="$1" - echo "$input" | sed "s/--original\.\([a-z0-9]*\$\)/--$suffix\.\\1/" -} +limit_fps=30 while getopts :q:c:t:s OPT; do case $OPT in @@ -38,26 +33,18 @@ shift `expr $OPTIND - 1` OPTIND=1 input="$1" -input_limited="$(with_suffix "original-limited")" output="$2" command="$(cat<<EOF -# Preliminary pass to limit resolution and fps ffmpeg -y -i "$input" $time_limit \ -vf "scale='-1':'min($limit_resolution,ih)', - select='eq(n,0)+if(gt(t-prev_selected_t,1/$limit_fps),1,0)'" \ - -c:v rawvideo -c:a pcm_s16le -f nut - | ffmpeg -y -f nut -i - -vf "fps=$limit_fps" "$input_limited" - -# Reencode -ffmpeg -y -i "$input_limited" $time_limit \ - -vf "scale='-1':'min($limit_resolution,ih)', - select='eq(n,0)+if(gt(t-prev_selected_t,1/$limit_fps),1,0)'" \ + fps='$limit_fps'" \ -c:v libvpx-vp9 -b:v 0 -crf $q -an \ -row-mt 1 -tile-columns 2 -tile-rows 2 -cpu-used $cpu -g 240 \ -pass 1 -f webm -threads $cpu /dev/null && - ffmpeg -y -i "$input_limited" $time_limit \ + ffmpeg -y -i "$input" $time_limit \ -vf "scale='-1':'min($limit_resolution,ih)', - select='eq(n,0)+if(gt(t-prev_selected_t,1/$limit_fps),1,0)'" \ + fps='$limit_fps'" \ -c:v libvpx-vp9 -b:v 0 -crf $q -c:a libopus \ -row-mt 1 -tile-columns 2 -tile-rows 2 -cpu-used $cpu \ -pass 2 -threads $cpu -- "$output" |