Updated scripts to support new version of HandBrake
[videoscripts/.git] / merge_videos_by_day
index ec00da97e7fe64f3ea8fe1a20240b5689a397ce8..0737ee128484420b439dd46474701685923ce639 100755 (executable)
@@ -41,6 +41,7 @@ $SIG{'INT'} = sub {die "-E- Killed by CTRL-C\n"};
 if((defined $opt_q || defined $opt_z) && !$use_compute_host && ! -x "$handbrake") { die "-E- Unable to find required program: handbrake\n"; }
 if(! -d $srcpathname) { &usage; print "-E- Can't find srcpath: $srcpathname\n"; exit 1; }
 if(defined $opt_h) { $compute_host = $opt_h; }
+if(! -x $ffmpeg) { die "-E- Missing required executable for ffmpeg: $ffmpeg\n"; }
 
 my %monthname2month = (
                       "Jan" => "01",
@@ -175,7 +176,9 @@ foreach $dstfile (sort keys %videos) {
        print "$cmd\n";
        if(!defined $opt_k) { 
            foreach $video (@{$videos{$dstfile}}) {
-               if(($save_originals) && ($video =~ /\.$originals_file_ext/)) {
+               if($opt_v) { print "   $ffmpeg -i \"$video\" 2>&1 | grep \"compatible_brands\" | tail -n 1\n"; }
+               my $brands=`$ffmpeg -i "$video" 2>&1 | grep "compatible_brands" | tail -n 1`; chomp($brands);
+               if(($save_originals) && ($video =~ /\.$originals_file_ext/) && (!$brands || $brands !~ /$originals_no_copy_brands/)) {
                    print "-> Saving the original video $video\n";
                    if(index($video, basename(dirname($video))) == -1) { 
                        print("mv $video \"$origpathname/".basename(dirname($video))."_".basename($video)."\n");
@@ -204,7 +207,9 @@ foreach $dstfile (sort keys %videos) {
        # Remove the individual video files
        if(!defined $opt_k) { 
            foreach $srcvideo (@{$videos{$dstfile}}) {
-               if(($save_originals) && ($srcvideo =~ /\.$originals_file_ext/)) {
+               if($opt_v) { print "   $ffmpeg -i \"$srcvideo\" 2>&1 | grep \"compatible_brands\" | tail -n 1\n"; }
+               my $brands=`$ffmpeg -i "$srcvideo" 2>&1 | grep "compatible_brands" | tail -n 1`; chomp($brands);
+               if(($save_originals) && ($srcvideo =~ /\.$originals_file_ext/) && (!$brands || $brands !~ /$originals_no_copy_brands/)) {               
                    print "-> Saving the original video $srcvideo to $origpathname\n";
                    if(index($srcvideo, basename(dirname($srcvideo))) == -1) { 
                        system("mv $srcvideo \"$origpathname/".basename(dirname($srcvideo))."_".basename($srcvideo));