These instructions shall work on Mac OS X and Linux.
Installation via Homebrew:
brew install mkvtoolnix
mkvmerge -i myFile.mkv
File 'myFile.mkv': container: Matroska
Track ID 1: video (V_MPEG4/ISO/AVC)
Track ID 2: audio (A_DTS)
Track ID 3: subtitles (S_TEXT/UTF8)
Track ID 4: subtitles (S_TEXT/UTF8)
Chapters: 22 entries
Track ID 3 and 4 are subtitles.
mkvextract tracks myFile.mkv 3:myFile1.srt 4:myFile2.srt
Enjoy!
In case you need this in batch for all files in a directory (works only if all files have the same subtitle Track IDs).
Make sure you use correct file extension (*.mkv
) and track-ids (3
)
Example:
for file in *.mkv; do
sub=$(echo $file | sed 's/\.mkv$/.srt/');
mkvextract tracks "${file}" 3:"${sub}";
done