#!/usr/bin/perl
# Author: Alan J. Pippin
# Description: Extract the given chapter(s) from an mkv file into separate video files
+# Requires: Newer version of ffmpeg to be installed that supports MKV chapters
# MOV:
# major_brand : qt
}
}
+ # Quicktime/MOV
if($h264 && $pcm_s16le) { return "mov"; }
- if($h264_high && $ac3) { return "mts"; }
+ # MTS
+ if($h264_high && $ac3) { return "mp4"; }
+ # 3GP/MP4
if($h264 && $aac) { return "mp4"; }
return "UNKNOWN";
if($line =~ /Chapter #\d+\.(\d+): start (\S+), end (\S+)/) {
$chapter = $1;
$start = $2;
+ if($start > 0) { $start += 1; } # Add some margin to prevent taking a piece of the previous clip
$end = $3;
$duration = $end - $start;
if($duration < 0) { die "-E- Unexpected negative duration detected for chapter $chapter\n"; }
print "$cmd\n";
} else {
print "\n";
+ print "$cmd\n";
$errno = system("$cmd");
$errno = $errno >> 8;
if($errno > 0) { die "-E- ffmpeg encountered some errors with exit code $errno\n"; }