Fixed the way we handle creation dates in videos missing timezones
[videoscripts/.git] / organize_videos.conf
index 702a75260a6728f1e8964c80c3ebb74de62c7a69..b4e288f945a8e358f7fafa19d097e4ce30704846 100644 (file)
@@ -19,9 +19,26 @@ $dstpathname = "/naspool/videos/HomeVideos";
 
 # Path to move the originals to
 $origpathname = "/naspool/dropbox/Originals";
-$originals_file_ext = qr/mov/i;
+$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
+$originals_no_copy_brands = qr/none/i; # We no longer keep the cards
 $save_originals = 1;
 
+# Brands that store time as local vs UTC
+$local_tz_brands = qr/mp42avc1/i; # the camcorder sets the creation time to the local time with no timezone (so UTC), so treat them as local timestamps, not UTC timestamps
+
+# 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 nextcloud base dir where user dirs start
+$nextcloudbase = "/naspool/cloud/";
+
+# If there are file duplicates in srcpathname, should they be overwritten (assumes all files from phones will be named uniquely)
+$overwrite_dest = 1;
+
+# Path to nextcloud occ cmd script
+$occ = "/naspool/www/pippins.net/nextcloud.custom/occ.cmd";
+
 # Path to merge_videos_by_day script
 $merge_videos_by_day = "/naspool/videos/bin/merge_videos_by_day";
 
@@ -36,6 +53,7 @@ $mkvmerge = '/usr/bin/mkvmerge';
 
 # ffmpeg path/command name
 $ffmpeg = '/usr/bin/ffmpeg';
+$ffprobe = '/usr/bin/ffprobe';
 $avconv = '/usr/bin/avconv';
 
 # handbrake path/command name
@@ -64,11 +82,14 @@ $video_suffix = "000";
 
 # 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 = "+60";
 
 # 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 \\)";
@@ -76,6 +97,7 @@ $find_changed_cmd = "find  \"$srcpathname/\" -not -cmin $minage -a \\( $movie_fi
 # 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, but remove the 0 byte file it creates, we'll create it if we need it
 $tmpfile = `tempfile`; chomp($tmpfile); unlink "$tmpfile";
@@ -84,17 +106,14 @@ $tmpfile = `tempfile`; chomp($tmpfile); unlink "$tmpfile";
 $timezone = `cat /etc/timezone`; chomp($timezone);
 
 # handbrake options used when re-encoding the videos
-$handbrake_requantize_options='--strict-anamorphic --crop 0:0:0:0 -E ac3';
-$handbrake_recompress_options='--strict-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="High Profile"';
-
-# tmp chapter file used by handbrake when creating mkv, but remove the 0 byte file it creates, we'll create it if we need it
-$chapter_file = `tempfile`; chomp($chapter_file); unlink "$chapter_file";
+$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;