52 lines
1.7 KiB
Bash
Executable File
52 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
MAX_WIDTH=1920
|
|
MAX_HEIGHT=1080
|
|
|
|
read -p "Which bit-rate in MB? " thismb
|
|
read -p "Want a notify? " notifyval
|
|
|
|
date
|
|
export IFS=$'\n';
|
|
for i in $(find . -maxdepth 1 -type f \( -iname "*.mpg" -o -iname "*.vob" -o -iname "*.m4v" -o -iname "*.mov" -o -iname "*.avi" -o -iname "*.mp4" -o -iname "*.wmv" -o -iname "*.flv" -o -iname "*.rmvb" -o -iname "*.mpeg" -o -iname "*.mkv" -o -iname "*.mov" \) | grep -v mobile | sort -f);
|
|
do
|
|
|
|
filename=`echo ${i:2}`
|
|
ext=`echo ${filename} | awk -F. '{print "."$NF}'`
|
|
fn_noext=`basename "${filename}" $ext`
|
|
if [ $ext == ".mp4" ]; then
|
|
ext=`echo "_mobile.mp4"`
|
|
else
|
|
ext=`echo "_mobile.mp4"`
|
|
fi
|
|
|
|
echo "Will convert to: ${fn_noext}${ext}";
|
|
|
|
done
|
|
echo " "
|
|
echo " "
|
|
|
|
for i in $(find . -maxdepth 1 -type f \( -iname "*.mpg" -o -iname "*.vob" -o -iname "*.m4v" -o -iname "*.mov" -o -iname "*.avi" -o -iname "*.mp4" -o -iname "*.wmv" -o -iname "*.flv" -o -iname "*.rmvb" -o -iname "*.mpeg" -o -iname "*.mkv" -o -iname "*.mov" \) | grep -v mobile | sort -f);
|
|
do
|
|
|
|
filename=`echo ${i:2}`
|
|
ext=`echo ${filename} | awk -F. '{print "."$NF}'`
|
|
fn_noext=`basename "${filename}" $ext`
|
|
if [ $ext == ".mp4" ]; then
|
|
ext=`echo "_mobile.mp4"`
|
|
else
|
|
ext=`echo "_mobile.mp4"`
|
|
fi
|
|
|
|
echo "Resizing: ${i:2} ";\
|
|
ffmpeg -i ${i:2} -pix_fmt yuv420p -c:v libx264 -b:v ${thismb}M \
|
|
-vf scale="iw*sar*min($MAX_WIDTH/(iw*sar)\,$MAX_HEIGHT/ih):ih*min($MAX_WIDTH/(iw*sar)\,$MAX_HEIGHT/ih),pad=$MAX_WIDTH:$MAX_HEIGHT:(ow-iw)/2:(oh-ih)/2,setsar=1/1" \
|
|
-r:v 59/1 -force_fps -movflags +faststart -threads 0 -c:a aac -b:a 10k -f mp4 -g 118 -y ${fn_noext}${ext}
|
|
date
|
|
done
|
|
|
|
|
|
if [[ ( -n ${notifyval} ) ]]; then
|
|
ntfy -b pushover -o user_key useV3kis7G1EsecHhyDprNeywH72or -t 'From laptop.' send "ff job done."
|
|
fi
|
|
|