Updated scripts to support new version of HandBrake
[videoscripts/.git] / organize_videos.conf
1 # Force Emacs Perl Mode
2 # Local Variables: 
3 # mode: perl 
4 # End:
5
6 ################################################################################
7 # This is a perl module included by the perl scripts for this application.
8 # You must modify these values to match your system configuration.
9 # Create a new file called "organize_videos.conf.local" in the same dir as "organize_videos.conf"
10 # and only put in it the variables you wish to override.
11 # This will prevent your localized settings from being overwritten by future code updates.
12 ################################################################################
13
14 # Path to look for videos to move from
15 $srcpathname = "/naspool/dropbox/New Memories";
16
17 # Path to move the videos to
18 $dstpathname = "/naspool/videos/HomeVideos";
19
20 # Path to move the originals to
21 $origpathname = "/naspool/dropbox/Originals";
22 $originals_file_ext = qr/(mov|mp4)/i;
23 $originals_no_copy_brands = qr/mp42avc1/i; # Don't copy videos from camcorder to Originals because we keep these videos on those cards
24 $save_originals = 1;
25
26 # Path to a dir (or dirs separated by semis) to watch for videos to move to $srcpathname to be organized
27 $watchpathname = "/naspool/cloud/alan/files/InstantUpload/Camera;/naspool/cloud/mary/files/InstantUpload/Camera;";
28
29 # Path to merge_videos_by_day script
30 $merge_videos_by_day = "/naspool/videos/bin/merge_videos_by_day";
31
32 # Flag to merge videos by modification date instead of the date parsed from the filename
33 $merge_by_modification_date = 0;
34
35 # Path to the make_mkv script
36 $make_mkv = "/naspool/videos/bin/make_mkv";
37
38 # mkvmerge path/command name
39 $mkvmerge = '/usr/bin/mkvmerge';
40
41 # ffmpeg path/command name
42 $ffmpeg = '/usr/bin/ffmpeg';
43 $ffprobe = '/usr/bin/ffprobe';
44 $avconv = '/usr/bin/avconv';
45
46 # handbrake path/command name
47 $handbrake = '/usr/bin/HandBrakeCLI';
48
49 # The pid file to use to indicate organize_videos is running
50 $pid_file = "/tmp/organize_videos.pid";
51
52 # The owner of the files after they are moved
53 $owner = "ajp";
54
55 # The group of the files after they are moved
56 $group = "pip";
57
58 # The mode to set on each file after they are moved
59 $mode = "664";
60
61 # The mode to set on each directory after they are created
62 $dirmode = "2775";
63
64 # The extension to use when creating playlist files
65 $playlist_extension = "pls";
66
67 # What number to start with when adding an incrementing suffix to the end of the final video clip to avoid name collisions
68 $video_suffix = "000";
69
70 # Which movie file extensions should be considered for merging
71 # NOTE: Script does not support merging multiple mkv files into a single mkv file
72 $movie_file_ext = "-iregex \".*\.mov\" -o -iregex \".*\.3gp\" -o -iregex \".*\.avi\" -o -iregex \".*\.mp4\" -o -iregex \".*\.mpg\" -o -iregex \".*\.mts\" -o -iregex \".*\.m4v\"";
73
74 # Which movie file extensions should not be recompressed for merging
75 $no_recompress_file_ext = qr/\.(mp4)$/i;
76
77 # Video file creation dates must not have changed in the last X minutes to process any of the video files
78 # This is done to ensure that all videos from a given upload from a camera have completed prior to looking for videos to merge
79 $minage = "+30";
80
81 # What command should be used to find files that have changed (are at least $minage old) 
82 $find_changed_cmd = "find  \"$srcpathname/\" -not -cmin $minage -a \\( $movie_file_ext \\)";
83
84 # What command should be used to find all movie files
85 $find_cmd = "find \"$srcpathname/\" $movie_file_ext";
86 $find_cmd_with_mkv = "find \"$srcpathname/\" $movie_file_ext -o -iregex \".*\.mkv\"";
87 $find_mkv = "find \"$srcpathname/\" -iregex \".*\.mkv\"";
88
89 # Set the tmpfile to use, but remove the 0 byte file it creates, we'll create it if we need it
90 $tmpfile = `tempfile`; chomp($tmpfile); unlink "$tmpfile";
91
92 # Set the timezone to use
93 $timezone = `cat /etc/timezone`; chomp($timezone);
94
95 # handbrake options used when re-encoding the videos
96 $handbrake_requantize_options='--auto-anamorphic --crop 0:0:0:0 -E ac3';
97 $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"';
98
99 # handbrake input file options
100 $input_file_options = "-S";
101
102 # handbrake output file options
103 $output_file_options = "--compression -1:none";
104
105 # handbrake quantization levels
106 $interlaced_requantize_quality=0.85;
107 $progressive_requantize_quality=0.75;
108
109 # Remote compute host to farm handbrake encode job off to (I need this since this script is run from a virtual machine)
110 $compute_host = "pippin.pippins.net";
111
112 # 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.
113 $use_compute_host = 0;
114
115 # This will dramatically decrease the size of the video with minimal compute processing requirements.
116 $requantize_input_video=0; 
117 $recompress_input_video=1;
118
119 # What text to put on the front of the title for the merged video being created
120 $video_title_prefix = "HomeVideos:";
121
122 ####################################################################################################