+
+ # Re-quantize the input video to reduce the resulting output filesize
+ # This also gives us a chance to deinterlace the video as well
+ # Only do this for .MTS videos
+ if((defined $opt_q) && ($video_ext =~ /mts/i)) {
+
+ # Set our requantize factor accordingly
+ my $requantize_option = "";
+ if(!$progressive) { $requantize_option = "-q $interlaced_requantize_quality"; }
+ else { $requantize_option = "-q $progressive_requantize_quality"; }
+
+ # Set our de-interlace option accordingly
+ my $deinterlace_option = "";
+ if(!$progressive) { $deinterlace_option = "-d"; }
+
+ # Use HandBrake to requantize/deinterlace the input video
+ my $video_mp4 = $video; $video_mp4 =~ s/\.[^.]*$//; $video_mp4 .= ".hb.mp4";
+ print " Re-quantizing input video content: $video_mp4\n";
+ my $handbrake_cmd = "$handbrake $deinterlace_option $requantize_option $handbrake_options -i \"$video\" -o \"$video_mp4\" > /dev/null 2>&1";
+ if(! defined $opt_s) {
+ my $errno = system("$handbrake_cmd");
+ $errno = $errno >> 8;
+ if($errno > 1) {
+ unlink "$video_mp4";
+ die "-E- handbrake encountered some errors with exit code $errno\n";
+ }
+ }
+
+ # Push the name of our intermediate video file onto a list of files to delete on exit
+ push(@video_tmp_files, "$video_mp4");
+ # Update the name of our video file to equal the name of our new intermediate video file name
+ $video = $video_mp4;
+ }
+
+ # Create our input file command line options for this video