################################################################################
# Path to look for videos to move from
-$srcpathname = "/naspool/pictures/New Photos";
+$srcpathname = "/naspool/dropbox/New Memories";
# Path to move the videos to
$dstpathname = "/naspool/videos/HomeVideos";
+# Path to move the originals to
+$origpathname = "/naspool/dropbox/Originals";
+$originals_file_ext = qr/(mov|mp4)/i;
+$originals_no_copy_brands = qr/mp42avc1/i; # Don't copy videos from camcorder to Originals because we keep these videos on those cards
+$save_originals = 1;
+
+# Path to a dir (or dirs separated by semis) to watch for videos to move to $srcpathname to be organized
+$watchpathname = "/naspool/cloud/alan/files/InstantUpload/Camera;/naspool/cloud/mary/files/InstantUpload/Camera;";
+
# Path to merge_videos_by_day script
$merge_videos_by_day = "/naspool/videos/bin/merge_videos_by_day";
+# Flag to merge videos by modification date instead of the date parsed from the filename
+$merge_by_modification_date = 1;
+
# Path to the make_mkv script
$make_mkv = "/naspool/videos/bin/make_mkv";
# mkvmerge path/command name
-$mkvmerge = 'mkvmerge';
+$mkvmerge = '/usr/bin/mkvmerge';
# ffmpeg path/command name
-$ffmpeg = 'ffmpeg';
+$ffmpeg = '/usr/bin/ffmpeg';
+$ffprobe = '/usr/bin/ffprobe';
+$avconv = '/usr/bin/avconv';
# handbrake path/command name
-$handbrake = 'HandBrakeCLI';
+$handbrake = '/usr/bin/HandBrakeCLI';
# The pid file to use to indicate organize_videos is running
$pid_file = "/tmp/organize_videos.pid";
# The mode to set on each file after they are moved
$mode = "664";
+# The mode to set on each directory after they are created
+$dirmode = "2775";
+
# The extension to use when creating playlist files
$playlist_extension = "pls";
# Which movie file extensions should be considered for merging
# NOTE: Script does not support merging multiple mkv files into a single mkv file
-$movie_file_ext = "-iregex \".*\.mov\" -o -iregex \".*\.3gp\" -o -iregex \".*\.mp4\" -o -iregex \".*\.mts\" -o -iregex \".*\.m4v\"";
+$movie_file_ext = "-iregex \".*\.mov\" -o -iregex \".*\.3gp\" -o -iregex \".*\.avi\" -o -iregex \".*\.mp4\" -o -iregex \".*\.mpg\" -o -iregex \".*\.mts\" -o -iregex \".*\.m4v\"";
+
+# Which movie file extensions should not be recompressed for merging
+$no_recompress_file_ext = qr/\.(mp4)$/i;
# Video file creation dates must not have changed in the last X minutes to process any of the video files
# This is done to ensure that all videos from a given upload from a camera have completed prior to looking for videos to merge
-$minage = "+30";
+$minage = "+120";
# What command should be used to find files that have changed (are at least $minage old)
$find_changed_cmd = "find \"$srcpathname/\" -not -cmin $minage -a \\( $movie_file_ext \\)";
# What command should be used to find all movie files
$find_cmd = "find \"$srcpathname/\" $movie_file_ext";
$find_cmd_with_mkv = "find \"$srcpathname/\" $movie_file_ext -o -iregex \".*\.mkv\"";
+$find_mkv = "find \"$srcpathname/\" -iregex \".*\.mkv\"";
-# Set the tmpfile to use
-$tmpfile = `tempfile`; chomp($tmpfile);
+# Set the tmpfile to use, but remove the 0 byte file it creates, we'll create it if we need it
+$tmpfile = `tempfile`; chomp($tmpfile); unlink "$tmpfile";
# Set the timezone to use
$timezone = `cat /etc/timezone`; chomp($timezone);
# handbrake options used when re-encoding the videos
-$handbrake_options='--strict-anamorphic --crop 0:0:0:0 -E ac3';
-
-# tmp chapter file used by handbrake when creating mkv
-$chapter_file = $tmpfile;
+$handbrake_requantize_options='--auto-anamorphic --crop 0:0:0:0 -E ac3';
+$handbrake_recompress_options='--auto-anamorphic --crop 0:0:0:0 --denoise="weak" -e x264 -q 18 -x b-adapt=2:rc-lookahead=50 -v 2 -a 1 -6 dpl2 --preset="HQ 1080p30 Surround"';
# handbrake input file options
$input_file_options = "-S";
# handbrake output file options
-$output_file_options = "--chapters $chapter_file --compression -1:none";
+$output_file_options = "--compression -1:none";
# handbrake quantization levels
$interlaced_requantize_quality=0.85;
$compute_host = "pippin.pippins.net";
# Set to 1 to use a remote compute host to run the mkvmerge command. Set to 0 to use the local host to run it.
-$use_compute_host = 1;
+$use_compute_host = 0;
# This will dramatically decrease the size of the video with minimal compute processing requirements.
-$requantize_input_video=1;
+$requantize_input_video=0;
+$recompress_input_video=1;
# What text to put on the front of the title for the merged video being created
$video_title_prefix = "HomeVideos:";