scripts/ripdvd.sh

19 lines
449 B
Bash
Executable File

#!/bin/sh
NAME=${1}
SOURCE=${2:-/dev/cdrom}
if [ -z "${NAME}" ]; then
printf 'usage: %s NAME [SOURCE]\n' "${0##*/}"
exit 2
fi
ntracks=$(lsdvd ${SOURCE} | awk '$1=="Title:"&&$11!="00,"{print}' | wc -l)
i=0
while [ ${i} -lt ${ntracks} ]; do
i=$((i + 1))
filename=$(printf '%st%02d.mkv' "${NAME}" ${i})
mplayer -dumpstream dvd://${i}/${SOURCE} -dumpfile /dev/stdout | \
ffmpeg -i - -c:v libx264 -preset slow -crf 20 -c:a copy ${filename}
done