d20.sh 585 B

123456789101112131415161718192021222324252627
  1. #!/bin/bash
  2. set -e
  3. DST="${1}"
  4. SRC="${2}"
  5. SUBS="${3}"
  6. OFFSET="${4}"
  7. # Sanity
  8. if [ ! -r "${SRC}" ] || [ ! -r "${SUBS}" ]; then
  9. echo "Invalid source or subtitles: ${SRC} | ${SUBS}" 1>&2
  10. exit 1
  11. fi
  12. if [ -e "${DST}" ]; then
  13. echo "Invalid destination: ${DST}" 1>&2
  14. exit 1
  15. fi
  16. if [ -z "${OFFSET}" ]; then
  17. OFFSET=0
  18. fi
  19. SUBS_SRT="`mktemp -t 'd20subs'`"
  20. dos2unix.pl "${SUBS}" | vtt_srt.pl | srt_shift.pl "${OFFSET}" - > "${SUBS_SRT}"
  21. mkvmerge -o "${DST}" "${SRC}" "${SUBS_SRT}"
  22. rm -f "${SUBS_SRT}"
  23. mkvpropedit "${DST}" --edit track:s1 --set language=eng --edit track:a1 --set language=eng