Convert *.VOB
File(s) to *.mkv
# concatenate the VOB files... make sure you keep the order, and omit menus and
# other titles.
cat VTS_01_*.VOB > VTS_01_n.VOB
# inspect the big VOB
# using -analyzeduration and -probesize can help to detect streams that start
# later in the file, such as subtitles
ffprobe -analyzeduration 100M -probesize 100M -i VTS_01_n.VOB
# remux VOB to MKV
# '-fflags' will generate new timestamps, as many DVDs will throw a "Can't write
# packet with unknown timestamp" error. the '-map 0:*' arguments will include
# all video, audio and subtitle streams. '-c copy' will prevent any encoding,
# and simply remux the media
ffmpeg \
-fflags +genpts+igndts \
-analyzeduration 100M -probesize 100M \
-i VTS_01_n.VOB \
-map 0:v -map 0:a -map 0:s \
-c copy \
VTS_01_n.mkv