Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- CRF="${CRF:-23}"
- BITRATE="${BITRATE:-96k}"
- SUB_CHARSET="${SUB_CHARSET:-cp1251}"
- SUB_LANG="${SUB_LANG:-rus}"
- SUB_FORMAT="${SUB_FORMAT:-mov_text}"
- VID_FORMAT="${VID_FORMAT:-mp4}"
- PARAMS="$PARAMS"
- TELEGRAM() {
- [ -z "${TG_TOKEN:+x}" ] && echo "$1" && return 0
- curl -sL -G --data-urlencode "token=$TG_TOKEN" --data-urlencode "text=$1" https://ewh.mcmodder.ru/send.php 2>&1 >/dev/null
- }
- CONVERT_SUBS() {
- ffmpeg -i "$1" -sub_charenc "$SUB_CHARSET" -i "${1%.*}.srt" -metadata:s:1 "language=$SUB_LANG" -map 0:v -map 0:a -map 0:s\? -map 1:s\? -c:v libx265 -crf $CRF -c:a libopus -b:a $BITRATE -c:s "$SUB_FORMAT" -ac 2 $PARAMS "out/${1%.*}.$VID_FORMAT"
- }
- CONVERT() {
- ffmpeg -i "$1" -map 0:v -map 0:a -map 0:s\? -c:v libx265 -crf $CRF -c:a libopus -b:a $BITRATE -c:s copy -ac 2 $PARAMS "out/${1%.*}.$VID_FORMAT"
- }
- GETSIZE() {
- du -h "$1" | cut -f1
- }
- TELEGRAM "Started"
- mkdir out
- for videofile in "$@"; do
- if [ -f "${videofile%.*}.srt" ]; then
- CONVERT_SUBS "$videofile"
- else
- CONVERT "$videofile"
- fi
- TELEGRAM "Converted \`$videofile\` from *$(GETSIZE "$videofile")* to *$(GETSIZE "out/${videofile%.*}.$VID_FORMAT")*"
- done
- TELEGRAM "All done!"
RAW Paste Data