Changes of Revision 342

h264enc.spec Deleted
x
 
1
@@ -1,1289 +0,0 @@
2
-# norootforbuild
3
-
4
-Name:      h264enc
5
-Version:   10.1.9
6
-Release:   1
7
-
8
-License:   GPL-2.0+
9
-Group:     Productivity/Multimedia/Video/Editors and Convertors
10
-Summary:   An advanced CLI shell script for MEncoder
11
-URL:       http://h264enc.sourceforge.net/
12
-
13
-Source0:        %{name}-%{version}.tar.gz
14
-
15
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
16
-BuildArch: noarch
17
-
18
-Requires:       findutils gpac bc gawk lsdvd nano ogmtools vorbis-tools opus-tools flac aften dcaenc mailx faac MPlayer mkvtoolnix pv
19
-
20
-
21
-%description
22
-h264enc is an advanced and powerful interactive menu-driven shell script written
23
-for the GNU/Linux operating system which can help you to encode a DVD, a video file,
24
-a directory with video files or a (S)VCD to the H.264/MPEG-4 Part 10/AVC video format
25
-using the MEncoder encoder from the MPlayer project and the libx264 library. It supports
26
-muxing the final encode from AVI to MKV, from AVI to OGM, from AVI to TS and from
27
-AVI to the MP4 container.
28
-
29
-
30
-%prep
31
-%setup -q -n %{name}-%{version}
32
-
33
-%build
34
-
35
-%install
36
-%__mkdir -p %{buildroot}/%{_docdir}/%{name}/matrices
37
-
38
-# binary
39
-%__install -D -m 755 %{name} %{buildroot}/%{_bindir}/%{name}
40
-
41
-# man
42
-gzip -9 man/%{name}.1
43
-%__install -D -m 644 man/%{name}.1.gz %{buildroot}/%{_mandir}/man1/%{name}.1.gz
44
-
45
-# doc
46
-%__install -m 644 doc/* %{buildroot}/%{_docdir}/%{name}
47
-%__install -m 644 matrices/* %{buildroot}/%{_docdir}/%{name}/matrices
48
-
49
-
50
-%clean
51
-rm -rf "%{buildroot}"
52
-
53
-
54
-%files
55
-%defattr(-,root,root)
56
-%{_bindir}/%{name}
57
-%{_mandir}/man1/%{name}.1.gz
58
-%{_docdir}/%{name}
59
-
60
-
61
-%changelog
62
-* Wed Jul 02 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.9
63
-   * Add -noskip to where -mc 0 is used
64
-   * Document the exit values used by the exit_func() function
65
-   * Made the sed syntax consistent
66
-   * Currently, we calculate the ratio and pixels in two places. One for
67
-     when we don't scale and one for when we scale. Merge the code into
68
-     the ratio_and_pixels_func() function to reduce some duplication
69
-   * When printing info on files/bd, increase the -channels to 8
70
-   * Tune the higher quality presets and the anime ones by tweaking
71
-     the adaptive quants, psy and inloop deblocker for better quality
72
-   * Bugfix: in case we skip the audio channels filter when the
73
-     provided channels is higher than 6, the array var audchannels
74
-     was not reset
75
-     
76
-* Tue Jul 01 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.8
77
-   * Fix syntax error in the ratio_and_pixels_func() function
78
-   
79
-* Mon Jun 30 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.7
80
-   * Renamed the variable priority_level to nicelevel
81
-   * Be more clear about the language code the user may use by mentioning
82
-     that it's used for tagging
83
-   * Be more clear on the channels filter by stating it is very basic and
84
-     it will create empty channels in case the output channels are higher
85
-     than the input ones
86
-   * Add a 0 to the counter_func() function
87
-   * mkvmerge version 7.0.0 and higher automatically adds statistics tags
88
-     to the created file. Offer an option in the config file to disable
89
-     this. Updates the config file version to 31
90
-   * Add a note to the skeleton presets.cfg file that one must start the
91
-     params with a : (colon)
92
-     
93
-* Sun Jun 29 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.6
94
-   * Add -mc 0, after some testing, for when encoding to E-AC-3 audio
95
-   * A lot of the supported audio codecs do not support more than 6
96
-     channels so limit the channels to a maximum of 6
97
-   * If aften is missing and user has selected it as encoder to use, fall
98
-     back to the lavc encoder instead of exiting
99
-     
100
-* Wed Jun 25 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.5
101
-   * Updated the info on audio codecs supported by containers
102
-   * Updated the set_audio_codec_func() function
103
-   * Set the default IVTC filter to filmdint
104
-   * Accept floating point values for CRF/QP ratecontrol in the config file
105
-   
106
-* Tue Jun 24 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.4
107
-   * Removed -mc 0 when encoding to E-AC-3 audio. It is not needed after
108
-     some tests and A/V sync will be better in some cases
109
-   * Use a case statement instead of an if conditional when checking if audio
110
-     encoder is fkdaac or dcaenc in order to insert the format filter
111
-   * Encode to AAC through MEncoder instead of using faac directly
112
-   * Renamed the aac_audio_func() function to faac_audio_func(). Also
113
-     renamed the $MENCIN var to $MENCINPUT
114
-     
115
-* Mon Jun 23 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.3
116
-   * Set the DRC profile for Aften to none
117
-   * Allow the volume filter to be used even if the volnorm one is used
118
-   * Added support for setting the DRC when using lavc for AC-3
119
-   * Added support for encoding to E-AC-3 audio through lavc
120
-   
121
-* Fri Jun 20 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.2
122
-   * Fix a possible problem when detecting audio tracks when input is file
123
-     or blu-ray. We only grep for the generic word 'audio' which could result
124
-     in also printing lines that are not audio tracks but somehow carry the
125
-     'audio' word in their tags. Fix it by using 'awk' before 'grep' to
126
-     only print the fourth column where lavf reports what type of track it is
127
-   * Set default DTS bitrate to 755 kbps. Also check if we don't exceed the
128
-     highest legal bitrate of 1509 kbps
129
-   * Due to a bug in the dcaenc encoder, floating-point WAV files get
130
-     wrongly interpreted as 32-bit integer ones. Work around this by adding
131
-     the format=s16le filter
132
-   * The 1536 kbps bitrate reported by MPlayer on some DTS files is technically
133
-     1509 kbps, if we have to be accurate. Account for this by substracting
134
-     27 kbps from the reported bitrate. Do the same for the reported 768 kbps
135
-     bitrate which is actually 755 kbps
136
-   * Report the kHz in addition to the Hz when displaying audio info for
137
-     found tracks
138
-   * When remuxing to MKV/MP4/OGM, instead of checking if a file is created
139
-     to make a decision if it was successful or not, use return codes from
140
-     the remuxing applications. Should be more reliable in telling the user
141
-     if it really succeeded or not. Unfortunately tsMuxeR doesn't return
142
-     anything so there's no other way than checking if there's an 
143
-     output file.
144
-   * Lowered the scale factor in the calcbits() function from 3 to 2.
145
-     Also use | instead of @ as delimiter
146
-   * Tune a bit the subq values of the ani & anihq presets. Also turn on
147
-     trellis on all decisions (trellis=2) for the anihq preset
148
-     
149
-* Thu Jun 19 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.1
150
-   * Added support for the internal lavc AC-3 audio encoder. Now one
151
-     can choose between the lavc encoder (default) and the aften encoder.
152
-     The lavc encoder is set to default as aften has seen very little
153
-     development in the past years and is not as good as the lavc one
154
-     which is actively developed by the ffmpeg devs
155
-   * Fine-tune the volume filter by setting it to 4 after some tests
156
-   * Delete the file stored in the $AUDINFO variable
157
-   * When storing the MKV global tags while operating in batch mode,
158
-     test the variable $DIRTAGS for not being empty
159
-   * Cosmetics: add a few echo's at specific places to separate the
160
-     cmd lines in the batch file for better readability. Also add
161
-     a comment block for the start of the MKV, MP4, TS and/or OGM muxing
162
-   * Bugfix in the MKV/MP4 tags: do not add channel info when using MP3.
163
-     If we add channel info, it could result in "MP3 5.1" being added
164
-     to the audio tags, which is obviously wrong as MP3 only supports
165
-     stereo and mono channels
166
-   * Opus supports sampling rates from 8 kHz to 48 kHz. Support this
167
-     in the resampling code
168
-     
169
-* Wed Jun 18 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.1.0
170
-   * When scanning for audio tracks when input is file or blu-ray,
171
-     rename DCA (as reported by lavf) to DTS to not confuse the user.
172
-     Also rename AC3 to AC-3 for consistency
173
-   * In case audio encoder is fdkaac, add to the MKV tags the audio
174
-     format used (eg, Signed 16-bit little endian)
175
-   * When dumping chapters from files, use the file extension .chaps
176
-     for MKV. Also test to see if there's already a chapters file with
177
-     the same name and rename it to <filename>.chaps.old
178
-   * aac-enc name in the MKV tags is not very descriptive, so add
179
-     (fdkaac) to it
180
-   * Cosmetics
181
-   
182
-* Tue Jun 17 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.9
183
-   * Bugfix: only call audio filters on subsequent tracks when running MPlayer
184
-     to decode since for the first track we already pass these filters to
185
-     MEncoder, thus if we also use them when running MPlayer we'll get a
186
-     double effect
187
-   * Add a ^ (caret) at the beginning of grep when trying to get the [lavf]
188
-     text to make sure we only grep the correct instances
189
-   * Set default CRF/QP value to 19 and for bitrate based encodes to 2000 kbps
190
-   * For the volume audio filter, set the default value to 3 as 5 is a bit high
191
-   
192
-* Mon Jun 16 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.8
193
-   * New method to detect and display audio info when input is file or blu-ray.
194
-     In comparison to the previous basic method, the new one will display
195
-     for each found audio track the codec, channels, language, bitrate and
196
-     sample rate info. It does take slightly longer to detect in case there
197
-     are many audio tracks, but it is more descriptive and accurate
198
-     
199
-* Sun Jun 15 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.7
200
-   * Use an if instead of a case when dumping chapters from files
201
-   * Also export chapter extraction commands to the batch file
202
-   * Display mkvextract availability when using the sanity check option (-sc)
203
-   * Add the path and name to the comment block of the batch file. Makes
204
-     it easy to focus on the comment block to know for which file the
205
-     commands are instead of needing to inspect the code itself to find
206
-     out
207
-     
208
-* Wed Jun 11 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.6
209
-   * Added support for dumping chapters info from MKV/MP4 input files
210
-     This updates the config file version to 30 as mkvextract is needed
211
-   * Made the audiofmt variable an array variable
212
-   * Moved asking for sample encoding before asking to inspect or save the
213
-     options to a file
214
-     
215
-* Sat May 24 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.5
216
-   * Fixed the detect_fps_func() function for detecting the NTSC type
217
-   * Lowered the spugauss (variance param for gauss subtitle scaling)
218
-     from 0.7 to 0.4 as 0.7 does too much blurring in my opinion
219
-     
220
-* Thu May 22 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.4
221
-   * Bugfix: $demuxer var was missing in the AUDCH array var which resulted
222
-     in incorrect channel info being added to the tags when copying audio.
223
-     DVD input was not affected by this bug, but file/dir/bd input was as
224
-     they all use the $demuxer var
225
-     
226
-* Sat Apr 26 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.3
227
-   * Removed unused $AUDFIFO variable
228
-   * Small bugfix: audio language for metadata tagging wasn't added to the global
229
-     tags for MKV when input is Blu-ray due to missing 'bd' param in the case
230
-     statement
231
-     
232
-* Wed Apr 23 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.2
233
-   * Bugfix: in case user chooses audio copy, the metadata info for tagging
234
-     always defaulted to "Stereo". Fix this by running MPlayer to detect
235
-     the proper amount of channels
236
-     
237
-* Tue Apr 22 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.1
238
-   * Bugfix: wrong var used, $chanuse instead of $chandec, for setting
239
-     the decode channels
240
-   * Only call the video_subtitles_scale_func() function if the user
241
-     actually provides an external sub for hardcoding
242
-     
243
-* Thu Apr 17 2014 Grozdan Nikolov <neutrino8@gmail.com> 10.0.0
244
-   * Allow the video_subtitles_align_func() function for mks matroska
245
-     subtitles
246
-   * Display the warning message in red for when something goes wrong
247
-     when importing/hardcoding subs. Do the same for when checking
248
-     support for a sub format for MKV/MP4/OGM
249
-   * Added support for subtitles for Blu-ray encodings. Note that only
250
-     hardcoding of external sub or importing of external subs into the
251
-     MKV/MP4/OGM containers is supported
252
-   * Removed some duplication by placing the code for hardcoding an
253
-     external sub or importing external subs into its own
254
-     video_subtitles_option_func() function
255
-   * Increased the rc_lookahead value for the ehq, uhq and ihq presets
256
-     to 80, 90 and 100, respectively
257
-   * When copying audio and using some of the portable device presets,
258
-     also add the -mc 0 -msglevel demuxer=-1 options to MEncoder
259
-   * More code optimizations and minor fixes
260
-   
261
-* Wed Apr 16 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.8
262
-   * Use proper extensions when copying the audio as MP4Box has a
263
-     problem with recognizing the .raw extension
264
-   * Renamed the named pipe from audio.wav to audio.pipe. Also
265
-     placed it in a variable to reduce some minor duplication
266
-   * Added support for subtitle scaling for when hardcoding an
267
-     external sub or hardcoding an embedded one. Requested by
268
-     lib3rty1 from the the Doom9.org forum
269
-   * Added --no-chapters option to mkvmerge for when encoding
270
-     with neroAacEnc in order not to auto-copy chapters info
271
-     from the container
272
-   * Instead of defaulting to 0 kbps if we can't detect the audio
273
-     bitrate when copying audio and needing to calculate the video
274
-     bitrate for a target file size , ask the user to provide it
275
-     in case he knows it or can figure it out
276
-   * Set the default exponent strategy value for AC-3 to 16
277
-   * Placed frequently used MPlayer options into a single variable,
278
-     $MPOPTS, in order not to write them over and over again when
279
-     we need them. These options are not used everywhere as
280
-     sometimes we need other specific ones when detecting something
281
-   * Improved priority level checks for regular users if the PRIORITY
282
-     variable is set in the config file
283
-   * Bugfix: audio resampling was not possible for Blu-rays due to
284
-     missing bd param in the case statement
285
-   * Merge the Blu-ray output code with that of the file/vcd as it's
286
-     identical
287
-   * Some minor code optimizations
288
-   
289
-* Tue Apr 15 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.7
290
-   * Allow the channels filter for the portable device presets
291
-   * Reorder the audio filters positions
292
-   * Placed the $MENCOPTS variable in front in MEncoder in order
293
-     for it to not overwrite the options already set
294
-   * For AC-3 audio, default to 384 kbps instead of 192 kbps and
295
-     default to "Film Standard" as DRC profile
296
-   * For MP3 audio, default to 192 kbps instead of 128 kbps when
297
-     doing CBR encodes and to "standard" when using a preset
298
-   * For NEROAAC and FDKAAC, default to 128 kbps instead of 96 kbps
299
-     when using LC-AAC mode
300
-   * Better wording in what the Output option does in the
301
-     audio_channels_decode_func() function
302
-   * Modification to the audio_codec_exit_func() function. Use this
303
-     function also to exit in case of an unsupported audio codec.
304
-     By using this function, some repeatability is removed
305
-   * Fixed a bug in the PCM audio code for the calculation of video
306
-     bitrate for a target file size. Variable $AUDIO_BITRATE
307
-     should be an array variable instead of a normal one
308
-   * Added support for Blu-ray angle encoding
309
-   * Reduced some duplication by placing the message into a single
310
-     variable when we exit in case an audio encoder is missing
311
-   * MEncoder currently has issues with copying audio. Work it
312
-     around by using -mc 0 -msglevel demuxer=-1 options which disable
313
-     its automatic A/V sync. With this, MEncoder may report 0 or some
314
-     large random number on some files for the audio but one can safely
315
-     ignore it. Audio is still being copied
316
-   * If the user chooses audio copy and selects to remux the encode
317
-     to MKV, the global tags did not contain the audio encoder string.
318
-     Fix this by adding "Unknown (Stream Copy)" since we don't know
319
-     which program was used to encode the audio
320
-   * In case we try to copy AAC audio from the input, we need to pass
321
-     the correct format to MEncoder or it will error out. Thus, use
322
-     -fafmttag 0x706d if we detect AAC
323
-   * Fixed a bug where copying AAC audio as as subsequent track
324
-     did not result in that track being added when remuxing to MP4
325
-     due to a missing ffaac param in the case statement
326
-   * When doing video bitrate calculations for a target file size and
327
-     copying the audio, try to better detect the audio bitrate. If we
328
-     can't detect it or it's reported as 0 kbps, default to 0 kbps
329
-   * Small improvements and cleanups here and there
330
-   
331
-* Sun Apr 13 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.6
332
-   * Rewrote the audio_channels_decode_func() function. It is now
333
-     possible to output channels different that the decoded
334
-     channels amount. Note that this filter is very basic which
335
-     means it will output silent channels if the decoded channels
336
-     are less than the output channels
337
-   * Added chanfilter variable to the aac_hev2_func() function
338
-   * Support all supported channels in the PCM bitrate code for
339
-     target file size calculation
340
-   * Removed channels variable for MEncoder when copying audio
341
-     for subsequent tracks as it has no effect
342
-   * Display an informative message if the user has set a default
343
-     audio codec in the config file. Also check if we support it
344
-     or print an error message and exit
345
-   * Updated the channels metadata info code due to changes in the
346
-     audio_channels_decode_func() function
347
-   * Modifications to the audio_filters_func() and audio_filters_var_func()
348
-     functions
349
-   * Some small code cleanups
350
-   
351
-* Sat Apr 12 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.5
352
-   * Improved resolution detection for Blu-rays
353
-   * Improved the nlq preset
354
-   * Don't call the audio_channels_decode_func when copying the audio as
355
-     audio is copied 1:1 thus we don't need to set any channels
356
-   * Insert the channels filter in case the user wishes to have 4 or 5
357
-     audio channels when decoding higher or lower amount of channels
358
-   * Various small code improvements
359
-   
360
-* Sat Apr 12 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.4
361
-   * Cosmetics: add an echo between the total found titles for Blu-ray and
362
-     the info about each title
363
-   * Cosmetics: remove double-quotes in empty echo's
364
-   * Display full seconds value for each found Blu-ray title
365
-   * Small code optimization to Blu-ray chapters info. Use a single variable
366
-     that holds the title we need to scan for chapters
367
-   * Warn and fallback to 8 channels in case user provides more than 8 channels
368
-   * Added support for PCM audio for subsequent audio tracks
369
-   
370
-* Thu Apr 10 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.3
371
-   * Display the length in seconds and minutes for every found Blu-ray title
372
-   * Implemented basic chapters encoding support for Blu-rays
373
-   * Rewrote the code for subtitles imports for MKV/MP4/OGM
374
-   * For DVDs/BDs, set default channels value to 6 when using other than copy
375
-     for audio
376
-     
377
-* Wed Apr 09 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.2
378
-   * Allow importing of mks (Matroska stream) subtitles into MKV. Such files
379
-     are usually created when dumping subs with the GUI version of mkvmerge
380
-   * Add -nosub when importing external subtitles into MKV/MP4/OGM to prevent
381
-     auto-loading of any embedded subs in the input file
382
-   * Use case statements to check the values of the $MAX_AMOUNT_AUD_TRACKS and
383
-     $MAX_AMOUNT_SUBS variables
384
-   * Auto-cropping was not possible when input is Blu-ray due to missing bd
385
-     param in the case statement
386
-   * Set default audio channels decode option to 6 when input is Blu-ray
387
-   
388
-* Tue Apr 08 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.1
389
-   * Fixed not being able to calculate video bitrate for target file size
390
-     when input is Blu-ray, due to missing $demuxer variable when calling
391
-     MPlayer
392
-   * Fixed DVD scanning in the -scan option
393
-   * Support Blu-ray scanning in the -scan option
394
-   * Display in the -sc option if MEncoder has Blu-ray support
395
-   * Warn and exit if user chooses Blu-ray as input but MEncoder doesn't support it
396
-   * Placed the $device and $vid variables after the $MPLAYEROPTS one in order for
397
-     the custom MPlayer options not to possibly overwrite these variables
398
-   * Modified the get_devices_func() function to allow files/folders as input
399
-     so that a user can scan a DVD ISO or VIDEO_TS directory, not just discs
400
-   * Fixed the colorprim code. $device and $vid variables were missing when
401
-     calling MPlayer to get the resolution height
402
-     
403
-* Mon Apr 07 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.9.0
404
-   * Initial, basic support for encoding from Blu-ray discs/ISOs/directories.
405
-     Requires MPlayer to be compiled with libbluray. As libbluray doesn't
406
-     support encrypted Blu-rays, it is not possible to encode such Blu-rays.
407
-     Encryption must first be stripped before encoding with h264enc
408
-   * Reduced some duplication in the audio code for the first track for MKV
409
-   * Adjusted the vbv_maxrate and vbv_bufsize for the bd40 and bdhq40 presets
410
-     to comply with the level limits
411
-     
412
-* Sat Mar 29 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.7
413
-   * Merged the neroaac/fdkaac part of the MP4Box code as they're identical
414
-   * Use a case statement to decide between --bluray and --avchd for tsMuxeR
415
-   * A few more function renaming to carry the _func at the end
416
-   
417
-* Fri Mar 28 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.6
418
-   * Fix a syntax error
419
-   
420
-* Fri Mar 28 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.5
421
-   * Use a single variable for keyint for the Blu-ray/AVCHD presets. Reduces a bit of duplication
422
-   * Reduced some duplication in the check_audio_codec_func() function by moving some of
423
-     the error messages into a new audio_codec_exit_func() function
424
-   * Allow muxing to TS when using neroAacEnc and/or FDKAAC in LC-AAC mode
425
-   * Merged the NEROAAC/FDKAAC parts in the mkvmerge code as they're identical, thus we
426
-     reduce a bit of duplication
427
-   * Updated the man page
428
-   
429
-* Mon Mar 24 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.4
430
-   * Add audio encoder info to the MKV global tags
431
-   * Renamed the mencoder_opts() function to mencoder_opts_func() for consistency reasons
432
-   * Fixed subtitles metadata info in the MKV global tags
433
-   
434
-* Sun Mar 23 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.3
435
-   * Bugfix: If using nosound and dumping subsequent subs, the audio option
436
-     for MEncoder was set to -ao null which is not recognized by MEncoder.
437
-     Change it to -nosound instead
438
-     
439
-* Sat Mar 22 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.2
440
-   * Bugfix: for subsequent audio tracks, when using neroAacEnc as encoder,
441
-     the value of --aac-is-sbr used for HE-AAC by mkvmerge was set to 1:1. It
442
-     should be 0:1
443
-   * Use the AACTYPE variable instead of the aacprof variable to check which
444
-     type of AAC the user wants in the neroaac_audio_func() function
445
-   * In VBR mode for audio encoders that support it, indicate which values
446
-     result in better quality, ie based on the encoder a lower value results
447
-     in higher quality or the reverse
448
-     
449
-* Fri Mar 21 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.1
450
-   * Set the default crop rounding value to 4 for more accurate cropping
451
-   * Initial support for the FDK AAC audio encoder. Requires latest git from
452
-     https://github.com/mstorsjo/fdk-aac/commits/read-streamed-wav
453
-     
454
-* Thu Feb 13 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.0
455
-   * Bugfix: dumping subs did not work when input is a VIDEO_TS DVD folder.
456
-     Patch by Harry Gunnarsson
457
-     
458
-* Sun Feb 02 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.9
459
-   * Added support for hardcoding embedded subtitles in files
460
-   * Use -nosub for hadrcoding an external subtitle to prevent
461
-     auto-loading of any embedded subtitles in the input
462
-   * Use -ao null instead of -nosound
463
-   
464
-* Sat Jan 18 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.8
465
-   * New variable in the config file, DELETE_AVI_AFTER_REMUX, to automatically delete
466
-     the AVI file after remuxing. This updates the config file version to 27
467
-   * Renamed the 480 and 576 params of the colorprim_func() function to ntsc and pal
468
-   
469
-* Fri Jan 03 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.7
470
-   * Allow relative paths when storing options to the batchfile
471
-   * Updated copyright dates
472
-   
473
-* Fri Nov 15 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.6
474
-   * Allow importing of PGS subtitles into the MKV container
475
-   * Improved chapters file handling for MKV/MP4/OGM when input is file
476
-   
477
-* Fri Nov 08 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.5
478
-   * Added support for importing a chapters file for MKV/MP4/OGM when input is file
479
-   * Added support for setting the audio language code for MKV/MP4/OGM/TS when input is file
480
-   * Added support for setting the subtitle language code when importing subs into MKV/MP4/OGM
481
-   
482
-* Sat Nov 02 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.4
483
-   * Fixed copying of E-AC-3 audio
484
-   * Set default value for 3D frame packing to 3 (side by side)
485
-   * Moved some audio selection code into the new set_audio_codec_func() function.
486
-     Reduces some code duplication and removes the default_audio_codec_func() function
487
-     
488
-* Fri Nov 01 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.3
489
-   * Merged the file and dvd audio detection/selection code
490
-   * Merged the audio code for the first and subsequent tracks
491
-   * Set a default audio ID based on input (ie, 0 for file and 128 for DVD)
492
-   * Use -demuxer lavf for file and dir input
493
-   * Small improvements to the subtitles code
494
-   * Renamed the -help switch to -h
495
-   * Improved the way audio tracks information is presented to the user
496
-   * Make destination dir if it doesn't exist for saving to the batchfile
497
-   * Updated the man page
498
-   
499
-* Thu Oct 31 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.2
500
-   * Fixed exporting of the NERORMAUD variable to the batch file
501
-   * Implemented support for virtually an infinite amount of subtitles. This introduces a new
502
-     variable, MAX_AMOUNT_SUBS, to the config file where the user can set the amount of subtitles
503
-     he/she wants h264enc to support
504
-   * Added output name to the message of the mail notification feature
505
-   * Fixed the nosound audio option
506
-   * Renamed the rmtemp() function to exit_func()
507
-   * Return proper exit codes. 0 on success, 1 on error and 2 on user interrupt
508
-   
509
-* Wed Oct 30 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.1
510
-   * Enabled multi-channel support for Opus audio
511
-   * Moved the MKV audio filters metadata after the audio codec/language metadata
512
-   * Fixed copy and pcm audio encoding
513
-   * If user chooses PCM for subsequent audio tracks, don't error out but just skip the track
514
-   * Some minor clean-ups
515
-   
516
-* Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.0
517
-   * Fix copying of subsequent audio tracks
518
-   
519
-* Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.9
520
-   * Various bugfixes for multi-track audio support
521
-   
522
-* Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.8
523
-   * Added -demuxer lavf for more reliable detection of audio streams in file input mode
524
-   * Implemented virtually infinite support for the amount of audio tracks. This introduces
525
-     a new variable in the config file, MAX_AMOUNT_AUD_TRACKS, where the user can specify
526
-     how many audio tracks he/she wants h264enc to support.
527
-     
528
-* Mon Oct 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.7
529
-   * Implemented support for 2nd and 3rd audio track when using "file" as input
530
-   * Bugfix: when using Opus audio, calculating target file size was not possible
531
-   * Added support for setting the AC-3 Exponent strategy search size
532
-   * Allow applying an LFE filter to the AC-3 audio
533
-   * Improved aften and opusenc options passing
534
-   
535
-* Mon Oct 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.6
536
-   * Added support for the Opus audio codec. Requires opusenc and a recent version of
537
-     mkvtoolnix with support for Opus
538
-   * Updated the man page
539
-   
540
-* Sun Oct 27 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.5
541
-   * Bugfix: codec detection for 2nd and 3rd audio track from DVDs did not work correctly
542
-   
543
-* Sat Oct 26 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.4
544
-   * Restrict the AVCHD presets to AC-3 and COPY audio
545
-   * Update the audio selection for the Blu-ray presets. DTS audio was supported but it
546
-     wasn't displayed in the selection
547
-   * Renamed function track_echo_func() to audio_track_echo_func() for consistency
548
-   
549
-* Wed Oct 23 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.3
550
-   * Added support for setting the Dynamic Range Compression (DRC) profile for AC-3 audio
551
-   * Renamed aften $AC3 variable to $AC3ENC
552
-   * Use AC-3 instead of AC3 naming in metadata info
553
-   
554
-* Tue Oct 22 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.2
555
-   * Added -readtoeof 1 option to the aften AC3 encoder. This ignores WAV header signaling
556
-     and fixes encoding from a named pipe
557
-     
558
-* Sun Oct 20 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.1
559
-   * Added support for encoding to 640 kbps AC3 audio
560
-   
561
-* Tue Jul 02 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.0
562
-   * Fix audio TID for MKV when using neroAacEnc as encoder
563
-   
564
-* Tue Jun 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.9
565
-   * Set correct color prims, transfers and matrix coeffs for Blu-ray/AVCHD SD resolutions
566
-   * Removed space between two questions
567
-   * Removed the sd* and hd* presets. They are useless
568
-   * Updated the man page
569
-   
570
-* Tue Jun 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.8
571
-   * Set VBV maxrate to 18k and VBV bufsize to 17k for the AVCHD presets
572
-   * Added support for frame packing for 3D video
573
-   * Add fake_interlaced to the AVCHD presets
574
-   
575
-* Mon Jun 10 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.7
576
-   * Add fake_interlaced flag to 25fps/29.970fps content when using the Blu-ray presets. It allows
577
-     to encode progressive 25p and 30p content but flags it as interlaced for Blu-ray compliance
578
-     
579
-* Sun Jun 09 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.6
580
-   * Add rc_lookahead to the Blu-ray/AVCHD presets
581
-   * When input is file, detect and display info about audio codec, channels, sample rate and bitrate
582
-   
583
-* Sat Jun 08 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.5
584
-   * Enable weightp for the Blu-ray/AVCHD HQ presets. In order to have a broader compatibility
585
-     with older Blu-ray players (mostly ones with buggy MediaTek chips), weightp is set to 1 and not 2
586
-   * Set VBV maxrate to 40000 and VBV buffer to 30000 for the Blu-ray presets
587
-   * Set color primaries, transfer characteristics and matrix coeffs to bt709 for the Blu-ray/AVCHD presets
588
-   * Set default position of the expand filter to after the scale filter
589
-   
590
-* Fri Jun 07 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.4
591
-   * Improved the expand filter code
592
-   * Optimized the Blu-ray/AVCHD HQ presets for better quality
593
-   
594
-* Wed May 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.3
595
-   * Removed workarounds for older MP4Box versions. As of this release, only gpac 0.5.0 and higher
596
-     is supported. SVN version is highly recommended, though
597
-   * Improved AC3 and MP3 audio handling
598
-   * Removed turbo option. It is no longer needed
599
-   * When using AC3 audio, language TID for MKV was set to 1. It should be 0
600
-   
601
-* Tue May 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.2
602
-   * Fix OGM muxing with AC3 audio
603
-   
604
-* Tue May 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.1
605
-   * Use aften for AC3 audio encoding as MEncoder is currently broken. This bumps up the config
606
-     file version to 22
607
-     
608
-* Tue May 21 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.0
609
-   * Bugfix: add missing 384 kbps option for AC3 audio
610
-   * Notify the user when we first create the config file
611
-   * SAR is Sample Aspect Ratio, not Storage Aspect Ratio. Corrected this mistake
612
-   
613
-* Thu Apr 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.4.9
614
-   * Use ffmpeg's MPEG12 decoder instead of the libmpeg12 one
615
-   
616
-* Mon Oct 01 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.8
617
-   * Added bluray_compat=1 parameter to the Blu-ray and AVCHD presets
618
-   * Use 'true' instead of 'false' where appropriate
619
-   * Updated the man page
620
-   
621
-* Wed Sep 26 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.7
622
-   * Change bad default bitrate value in DTS audio encoding to 384kbps.
623
-   
624
-* Mon Apr 16 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.6
625
-   * Bugfix: FAAC encoding was using wrong language TID in mkvmerge. Should be 0 instead of 1 as
626
-     we no longer encapsulate AAC in MP4
627
-   * Removed --no-chapters mkvmerge option for FAAC encoding. It's no longer needed as we no longer
628
-     store the AAC audio in MP4 container
629
-     
630
-* Sat Apr 07 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.5
631
-   * Don't require FAAC to be compiled with MP4 container support (the -w option). Some distro's
632
-     do not compile FAAC with MP4 support so play it safe and assume FAAC isn't compiled with
633
-     MP4 support
634
-     
635
-* Tue Feb 21 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.4
636
-   * Only 'sed' mbtree for multi-pass mode
637
-   * Don't append "- chapter [id]" to output file when encoding only specific chapters
638
-   
639
-* Tue Jan 03 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.3
640
-   * Use -vc dummy in MPlayer in the audio code. Seems to work better on some files
641
-   
642
-* Sun Jan 01 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.2
643
-   * Use a separate variable in config file for setting the default CRF or QP value (DEFAULT_VID_CRFQP).
644
-     This bumps the config file version to 21
645
-   * Renamed the DEFOUTPUT, DEFPATH and DEFBATCHDIR variables to DEFAULT_OUTPUT, DEFAULT_PATH and
646
-     DEFAULT_BATCHDIR
647
-   * Be slightly more portable by using #!/usr/bin/env bash instead of #!/bin/bash shebang
648
-   * Replaced some if conditionals in the -sc option by using 'test' directly
649
-   * Added an option for passing additional MEncoder parameters. Useful for when the user wants to
650
-     use something like -mc 0 -noskip, for example
651
-   * Added support for encoding to DTS audio through the dcaenc encoder which can be found at
652
-     http://aepatrakov.narod.ru/dcaenc/
653
-   * Minor changes to the video_delogo_func() function. Use $sourcetype, $device, $vid and
654
-     $MPLAYEROPTS variables. Also use -nosound in MPlayer
655
-   * Improved the mkvtags file. Escape special characters like &, <, > and " in the Title field
656
-   
657
-* Mon Oct 10 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.4.1
658
-   * Introduced two new variables in the config file, DEFAULT_VID_BITRATE and DEFAULT_AUD_CODEC.
659
-     The first one sets the default video bitrate or CRF/QP value while the second one can
660
-     be used to set a default audio codec. This change updates the config file to version 20
661
-   * Fixed a typo in man page
662
-   
663
-* Sun Aug 20 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.4.0
664
-   * Disable mbtree in multipass mode to prevent segfaulting MEncoder due to differences in
665
-     frames amount in the passlog file. Disabling mbtree reduces quality but saves us a crash
666
-     in MEncoder
667
-   * Notify the user that the script does not support AAC in AVI anymore. Also exit if user
668
-     has not selected any of the other supported containers
669
-     
670
-* Mon Aug 08 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.9
671
-   * Bugfix: selecting the x264 internal denoiser does nothing due to missing $nr variable
672
-     in the MEncoder options
673
-     
674
-* Sat Jul 23 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.8
675
-   * Update the mq, nq, hq, vhq, ehq, uhq and ihq presets. Increase subme by 1. For the ihq
676
-     preset, this means that it uses subme 11 now which requires latest x264 from git
677
-     
678
-* Sun May 15 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.7
679
-   * Removed the ssim and psnr options from the presets. Should only be used for benchmarking
680
-   
681
-* Sun Apr 04 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.6
682
-   * Fixed the subtitles function which got broken when the get_selection_func()
683
-     function got introduced
684
-     
685
-* Tue Mar 29 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.5
686
-   * Added support for setting the crop rounding value
687
-   
688
-* Wed Mar 09 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.4
689
-   * Fix option 4 and 5 of the video_deblock_func() function. Wrong vars used
690
-   
691
-* Mon Feb 21 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.3
692
-   * Fixed a bug in directory batch mode were wrong conditional was used to check
693
-     for the DEFOUTPUT variable
694
-   * Display which file is currently being processed in batch mode
695
-   * Check only for files while in batch mode
696
-   * Do not exit if user types an incorrect answer to y/n questions. Instead, ask
697
-     the question again. Patch by Jan-Hendrik Peters and friends
698
-     
699
-* Sat Jan 08 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.2
700
-   * Use -demuxer lavf when trying to get the video length for bitrate calculation
701
-     for a target file size. Should be more reliable on M2TS/TS files
702
-   * Add support for the delogo filter. Patch by Haiko Michelfeit <haiko AT zsyndikat DOT org>
703
-     Config file version is bumped to 19
704
-   * Updated copyright dates
705
-   
706
-* Sun Dec 05 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.3.1
707
-   * Fix for the custom preset (cp) option
708
-   
709
-* Fri Nov 26 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.3.0
710
-   * Remove double $HOME variable in the -scan option
711
-   
712
-* Fri Oct 29 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.9
713
-   * Fix typo in the backup_file_func(): exisiting -> existing
714
-   * Workaround multichan FAAC encoding. FAAC somehow does not like multichan PCM from
715
-     MPlayer but it does if one treats it as raw using -P in FAAC. Nero/FLAC/Vorbis have
716
-     no issues, though. Go figure
717
-   * Added support for setting subtitle codepage during hardcoding of external subs
718
-   * Added support for the audio equalizer filter. This updates the config file version
719
-     to 18
720
-   * Removed 'time' requirement
721
-   
722
-* Thu Sep 16 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.8
723
-   * Workaround mencoder stupidity. With recent versions of mencoder that have subs
724
-     enabled by default (who came up with that great idea?), in case the user selects
725
-     to dump a sub for importing into mkv/mp4, during multipass encoding the first sub
726
-     will always get hardcoded due to missing -nosub option in the 2nd and 3rd pass code.
727
-     This is only valid for multipass encodes so people using one pass modes (-1p, -qp or -crf)
728
-     are safe.
729
-     
730
-* Wed Sep 15 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.7
731
-   * Small update to the -scan option. Just check if input file is there, regardless if
732
-     user provides the full path or not
733
-   * Enable trellis in some presets that use CAVLC
734
-   
735
-* Mon Aug 23 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.6
736
-   * Fixed a syntax error in the iphq preset
737
-   
738
-* Sun Aug 22 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.5
739
-   * Update QuickTime & iPhone presets. Patch by gongloo
740
-   
741
-* Wed Jul 21 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.4
742
-   * Typo fix in the display_quality_preset_func(); verslow -> veryslow. As this is an
743
-     informative function, it does not affect the encoding configuration
744
-   * Force -nosub option in case subtitles are skipped. This is to prevent auto-loading
745
-     of subs
746
-     
747
-* Fri Jun 25 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.3
748
-   * Added support for x264's preset, tune and profile options. This adds two additional
749
-     optional args [-t (for tune) and -pf (for profile)] which can only be used with an
750
-     x264 preset, not with the built-in script presets. If used with those, these args
751
-     will be ignored.
752
-     Examples on how to use x264 presets (which is also explained in the -help option)
753
-     h264enc -crf -p slow
754
-     h264enc -crf -p slow -t film
755
-     h264enc -crf -p slow -pf main
756
-     h264enc -crf -p slow -t film -pf high
757
-     One can also switch the -t and -pf options, eg: h264enc -crf -p slow -pf high -t film
758
-   * Updated the man page
759
-   
760
-* Sat May 15 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.2
761
-   * Small bugfix in the get_devices_func() function; script exits when user hits enter
762
-     to accept default device
763
-   * Remove AVI menu entry as supported container when using FAAC for audio encoding
764
-   
765
-* Thu Apr 29 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.1
766
-   * Reworked a bit the audio channels decode/output function. This function also got
767
-     renamed from audio_channels_func() to audio_channels_decode_func()
768
-   * Added support for the audio channels filter which can be used to add/remove/route channels
769
-     This updates the config file to version 17 and adds variable ALLOW_AUD_CHANNELS
770
-   * Bugfix: audio filters were not inserted when doing 1-pass encodes
771
-   
772
-* Sat Apr 24 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.0
773
-   * Switch to using external FAAC encoder to work around an issue in mkvmerge where
774
-     it flags AAC audio taken from an AVI as being Main profile regardless if LC profile
775
-     is used for encoding or not. Problem noticed & reported by benpro. This updates the
776
-     config file to version 16 and requires FAAC to be installed.
777
-   * Same small cleanups
778
-   * Updated the man page
779
-   
780
-* Sun Mar 28 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.9
781
-   * Replaced sed with awk for checking available disk space. Should work better on
782
-     FreeBSD systems. Patch by ennob from doom9
783
-   * Updated interlace options and presets to support the latest x264 from git. Note
784
-     that due to these changes, h264enc's presets are incompatible with older x264
785
-     versions so please upgrade to latest x264 from git!
786
-   * Small update to the preset.cfg file
787
-   
788
-* Thu Mar 18 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.8
789
-   * Small bugfix: keyint and keyint_min weren't passed on to MEncoder when using some
790
-     presets
791
-
792
-* Tue Mar 16 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.7
793
-   * Space escaped some previously missed variables
794
-   * Use one variable in the presets (x264params) for all MEncoder x264 encoding options.
795
-     Reduces some code and simplifies things a bit
796
-   * Updated the preset.cfg file to support the "one variable for all x264 encoder opts"
797
-     Note: those using custom preset files for encoding should read the preset.cfg file
798
-     in the doc dir and adapt their existing preset files to be compatible with the
799
-     changes. Previous older custom presets written by users will not work with this and
800
-     future versions of h264enc!
801
-     
802
-* Thu Feb 18 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.6
803
-   * Added new veriable 'DEFOUTPUT' to the config file which can be used to set a default
804
-     output directory. This updates the config to version 15
805
-   * Modified the set_output_filename_func() function to support the above variable.
806
-       - If the DEFOUTPUT variable is empty, user can either provide just the output
807
-         name for the encode (in this case the script assumes $HOME as output dir), or
808
-         the full path and output name, which in this case the script will create the
809
-         output dir if it's not present or will do a write test when the dir is present
810
-         to see if it's writable by the user. If creation of output dir or the write test
811
-         fails, the script exits with a notice.
812
-       - If the DEFOUTPUT variable contains a custom output dir, the script will test for
813
-         it and create it if it's not present. If creation fails, the script exits with a
814
-         notice. If the dir is present, the script will do a write test to see if the
815
-         custom dir is writable. If not, the script exits with a notice.
816
-       - The DEFOUTPUT variable can be overwritten on the command line. This means that if
817
-         user has set a custom output dir in the DEFOUTPUT variable but provides a path when
818
-         asked on the command line, that path will be used instead of the one in the DEFOUTPUT
819
-         variable. The script then will either check and create the provided output dir on
820
-         the command line (if that dir is not present) or will do a write test if the dir
821
-         is present. Upon failure of creation or write test, the script exits with a notice.
822
-         If no path is provided on the command line but only the output name for the encode,
823
-         the script will use the one set in the DEFOUTPUT variable.
824
-   
825
-* Sat Jan 30 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.5
826
-   * Reduced duplication in the audio encode exporting code by moving it inside functions
827
-   * Reduced duplication in the MKV/MP4/TS/OGM exporting code by moving it inside functions
828
-   * Reduced duplication in the code that prints some information before encoding starts
829
-   * Various minor code improvements
830
-   
831
-* Thu Jan 21 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.4
832
-   * Set default H.264 level to 'auto' and also accept integer numbers as levels in addition
833
-     to accepting fixed point ones, ie both 41 and 4.1 are now accepted as valid levels
834
-   * Renamed the rmconf() function to rmtemp() 
835
-   * Moved creation of temp dir, the interrupt_func() and rmtemp() functions at the beginning
836
-     of the script
837
-   * Fixed a bug in the DVD part of the -scan option where lsdvd doesn't get a valid device
838
-     passed. Bug was introduced due to changes in the new get_devices_func() function
839
-   * Reduced duplication in the mencoder_opts() function
840
-   * Various small code improvements
841
-   
842
-* Tue Jan 19 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.3
843
-   * Made the TEMPDIR variable escape spaces in directory names
844
-   * Small update to the mkvtags_func() function
845
-   * Removed the -a52drc option for AC3 encoding
846
-   * Added new x264 intra_refresh option to the script and the preset.cfg file
847
-   * Added two new variables, DVD_DEVICE and CDROM_DEVICE, to the config file where user
848
-     can set a default block device to encode from. This updates the config file to version 14
849
-   * Merged the get_dvd_devices_func() and get_vcd_devices_func() functions into a new one
850
-     called get_devices_func()
851
-     
852
-* Wed Dec 23 2009 Grozdan Nikolov <neutrino8@gmail.com>
853
-   * Fixed a severe bug that can cause in some cases severe data loss when using a 
854
-     custom temp directory. It manifests itself when using a 'top' directory as custom
855
-     temp directory such as a partition mount point or even the user's home directory.
856
-     In such cases, the top directory will be deleted upon script termination or when encoding
857
-     finishes, resulting in possible massive data loss due to rm -rf $TEMPDIR if TEMPDIR was
858
-     set to, for example, /home/username or points to a mount point or another directory that
859
-     may be important to the user.
860
-     From now on, always use a job<pid> directory inside the one set in the TEMPDIR variable
861
-     so it'll only delete the job<pid> directory and not its parent one, minimizing possibility
862
-     of a data loss disaster
863
-   * Set nomixed_refs for the iphq/iphhq presets
864
-   
865
-* Thu Dec 10 2009 Grozdan Nikolov <neutrino8@gmail.com>
866
-   * Disabled weightp for the AppleTV presets
867
-   * Added new option sliced_threads present in latest x264 from git
868
-   * Enabled b_pyramid for some presets that use mbtree as it now works with mbtree
869
-   * Updated the preset.cfg file. Added sliced_threads option
870
-   * Changed all video ALLOW_* variables in the config file to ALLOW_VID_*
871
-   * When using dd to dump a DVD to an ISO, use options noerror,sync and a bs size of 2048
872
-   * Added support for sending mails. This requires the 'mailx' program and a valid .mailrc
873
-     file in the home directory. Mail notification can be enabled in the config file of
874
-     h264enc which also offers an example of a gmail setting for .mailrc
875
-   * Bumped config file version to 13
876
-   * Updated copyright dates
877
-   
878
-* Mon Nov 09 2009 Grozdan Nikolov <neutrino8@gmail.com>
879
-   * Implemented a simple telecine detector for NTSC DVDs. Currently it's a dumb solution
880
-     which can't distinguish between hard telecine and interlacing but it's enough to
881
-     detect soft telecine and mixed progressive/telecine content which is more common
882
-   * Simplified the FPS detection code
883
-   * Update to all presets: added new weightp x264 option. This requires latest x264
884
-     revision from git
885
-   * Updated the preset.cfg file. Added weightp option
886
-   * Small general code improvements and cosmetics
887
-   
888
-* Wed Nov 04 2009 Grozdan Nikolov <neutrino8@gmail.com>
889
-   * Replaced a few if conditionals with case statements in the neroaac_audio_func() function
890
-   * Sed a comma at the end of resolution detection in case we're dealing with TS files. The
891
-     default TS demuxer in MPlayer has a comma at the end of the resolution info which results
892
-     in errorneous behavior in the bc calculation
893
-   * Simplified the resolution detection code
894
-   * Some small cleanups
895
-   
896
-* Mon Oct 19 2009 Grozdan Nikolov <neutrino8@gmail.com>
897
-   * Force stereo audio for Nero HE-AACv2 as it doesn't support anything else, thus
898
-     it results in failure if user tries to encode with more than two channels. This
899
-     updates the audio_channels_func() function and also adds a small new independent
900
-     one called neroaac_hev2_func() which only sets the channels to two if the channels
901
-     array variables are empty, as is the case when the user did not set the channels
902
-   * Small improvements to the ABR/VBR default audio bitrates for the neroAacEnc encoder.
903
-     Base the default bitrates on the chosen AAC profile, i.e. if user chooses HE-AACv1,
904
-     default bitrate will be 55 kbps or in case of quality-based VBR encoding a value of
905
-     0.22. For LC-AAC and HE-AACv2, default bitrates and quality values will be 96 kbps
906
-     or 0.35 and 25 kbps or 0.11, respectively. Note that this assumes the input audio is
907
-     stereo so if it's anything else than that, it's up to the user to decide on bitrates
908
-     or quality values
909
-   * Set default to a capital letter in questions where one needs to answer with y or n
910
-   * Update to all presets: updated the b_pyramid option to use the new args none/strict/normal
911
-     present in latest x264 revision. Note that this requires both latest MPlayer from SVN
912
-     and latest x264 revision from git
913
-   * Small b_pyramid update to the preset.cfg file
914
-   
915
-* Sat Oct 17 2009 Grozdan Nikolov <neutrino8@gmail.com>
916
-   * Added new function video_subtitles_align_func() for subtitle alignment control.
917
-     Requested by blaz on doom9.org forum.
918
-   * Added new x264 option 'constrained_intra' to the preset.cfg file.
919
-   * Added detection of VFR content (1000 fps as reported by MPlayer).
920
-   * Added X264_VERSION and MKVMERGE_VERSION entries to the mkvtags_func() function.
921
-   * Simplified a bit the audio exporting code for the first track.
922
-   
923
-* Thu Sep 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
924
-   * MP3 (MPEG1 Layer 3) only supports sample frequencies of 32, 44.1 and 48 kHz
925
-     so restrict to those only in the audio_resample_func() function
926
-   * Set default for the pp7 deblocker to 3
927
-   * Fixed example typo in the DVD chapters code
928
-   * Insert the ilpack filter before the scaler to correctly align chroma channels
929
-     when preserving interlacing
930
-   * Added AUDIO_CODEC_TRACK[1|2|3], AUDIO_LANGUAGE_TRACK[1|2|3] and H264ENC_PARAMETERS
931
-     entries to the mkvtags_func() function
932
-   * Enabled adaptive transform for the AppleTV HQ preset (atvhq)
933
-   * Improved checking the availability of block devices
934
-   * Added option 'global_header' to the preset.cfg file
935
-   
936
-* Wed Sep 16 2009 Grozdan Nikolov <neutrino8@gmail.com>
937
-   * Small bugfix: setting the H.264 level for the fghq preset wasn't possible
938
-   * Small bugfix: the counter in set_output_filename_func() didn't increase itself
939
-   * Added SOURCE, VIDEO_FILTERS, AUDIO_FILTERS_TRACK[1|2|3], ENCODER and X264_PARAMETERS
940
-     entries to the mkvtags_func() function
941
-     
942
-* Mon Sep 14 2009 Grozdan Nikolov <neutrino8@gmail.com>
943
-   * Use only lowercase words in all case statements that deal with the input source
944
-   * Some small improvements to the exit info in the audio code
945
-   * Placed the -passlogfile option inside the PASSLOG variable
946
-   * Set psy_rd to 0.3 for the Anime presets
947
-   * Allow setting the H.264 level for the PC presets to "auto" so libx264 will
948
-     decide itself which level to use based on options and resolution used
949
-   * Added support for 2-pass Nero AAC audio encoding. Note that 2-pass is only
950
-     supported by ABR/CBR encoding and ensures that the output quality is constant
951
-     (like VBR) while also ensuring that a specified output bitrate is achieved
952
-     (like CBR). Requested by punlo on doom9.org
953
-     
954
-* Sun Sep 06 2009 Grozdan Nikolov <neutrino8@gmail.com>
955
-   * Fixed a typo in the man page, MEnocder -> MEncoder
956
-   * Small improvement to how the MKV XML tagging file gets exported. Also improved
957
-     the XML formatting and added COMMENT string with text "Tagged by h264enc $version"
958
-   * Added comment tag for MP4 and OGM with the same text as above
959
-   * Small update to the video_deinterlace_func() function's menu
960
-   * Add comment header with dates to batch files
961
-   
962
-* Fri Sep 04 2009 Grozdan Nikolov <neutrino8@gmail.com>
963
-   * Added new option sync_lookahead available in latest x264 git and updated the
964
-     preset.cfg file
965
-   * Added support for the noise video filter. This change updates the config file
966
-     to version 12. Also, encoding priority now defaults to a nice value of 10 in
967
-     the config file
968
-   * Moved out the code which checks and backups/renames a file if it has the same
969
-     name as the output provided by the user to a separate function called
970
-     backup_file_func() and also improved it so that if there's already an existing
971
-     backup file, the new one will increase its count number by one thus there's no
972
-     more overwriting being done anymore. The same thing applies to existing chapter
973
-     files and DVD subs
974
-   * Added support for Year and Genre metadata tagging for the MKV/MP4/OGM containers.
975
-     For MKV, the genre and year is set globally using an automatically generated XML
976
-     file. MP4 uses the iTunes tagging and OGM the comment space
977
-   * Updated the man page
978
-   
979
-* Tue Sep 01 2009 Grozdan Nikolov <neutrino8@gmail.com>
980
-   * Simplified the audio_channels_func() function a bit
981
-   * Merged the QP and CRF settings
982
-   * Increased rc_lookahead a bit for the ehq, uhq and ihq presets
983
-   * Improved detection of DVD audio language codes. We now specifically grep for the
984
-     language word and then print the 2nd positional which gives us the language code.
985
-     It works more reliably if the DVD does not report its language code for the audio track(s)
986
-     so if this is the case, we fall back to undefined language. The previous code fails in
987
-     such cases due to the printing of the 8th positional which will print the "aid:" part when
988
-     there's no language code after the "language:" word, resulting in MKV/MP4 muxing failures.
989
-     Reported by WalterK from doom9.org
990
-   * Moved the code that deals with DVD subs/cover files/metadata info/chapters and external
991
-     subs for the MP4 container before its audio code
992
-   * Added slicing to the Blu-ray and AVCHD presets. It increases compliancy with the Blu-ray
993
-     specs. Slicing is only available in the latest x264 from git so please upgrade if you
994
-     intend to use the Blu-ray/AVCHD presets
995
-   * Added new options 'slices', 'slice_max_size' and 'slice_max_mbs' to the preset.cfg file
996
-   * Fixed chapters import for the OGM container. Missing '@' before the chapters input file
997
-     results in the file not being imported
998
-   * Added support for audio language metadata info for the OGM container
999
-   * Small improvements to how chapters information is added to the output file name
1000
-   
1001
-* Sat Aug 15 2009 Grozdan Nikolov <neutrino8@gmail.com>
1002
-   * Renamed presets f9 and f9hq to fl and flhq
1003
-   * Added new preset 'fghq' specifically optimized for preserving film grain
1004
-   * Removed duplicate videofilters variable. This removes the check for the tfields filter
1005
-     as now deinterlacing will always be done after cropping (which also speeds up things a bit)
1006
-     so the crop filter will never complain about crop area being outside of the original if
1007
-     tfields is used. It also reduces filters maintenance a bit
1008
-   * Turn soft-clipping on in the volume audio filter
1009
-   * Use aq_mode=1 for presets that have mbtree enabled as it usually does better on fades than
1010
-     aq_mode=2
1011
-   * Updated the man page
1012
-   
1013
-* Tue Aug 11 2009 Grozdan Nikolov <neutrino8@gmail.com>
1014
-   * Reduced the amount of if conditional iterations for setting the scaler interlace variable
1015
-   * Print full path of the output file(s) at the end of encoding
1016
-   * 10L: forgot to enable MB tree for the anihq preset
1017
-   * Replaced variable CONFIGDIR with TEMPDIR. This change updates the config file to version 11
1018
-   * Fixed some spacings issues by moving around some echo's
1019
-   * Simplified the sample encoding code. Reduced some code duplication
1020
-   * Upped psy_rd from 0.6 to 0.8
1021
-   
1022
-* Fri Aug 07 2009 Grozdan Nikolov <neutrino8@gmail.com>
1023
-   * Added support for the audio panning filter. This change also updates the config file
1024
-     to version 10
1025
-   * Simplifications to the audio_filters_func() and audio_filters_var_func() functions
1026
-   * Moved the audio filters functions after the audio codec ones
1027
-   * Fixed a bug in the audio_channels_func() function for the AAC codec. If user just
1028
-     hits return to accept the default AAC codec, the channels function was not called
1029
-     due to missing "" in the first case statement of that function
1030
-   * Enabled MB tree (macroblock tree ratecontrol) for the high quality presets and disabled
1031
-     b_pyramid for presets that have mbtree enabled as it currently doesn't support it. Note that
1032
-     mbtree produces a large passlog file when ran in 2-pass mode but can increase quality anywhere
1033
-     between 2-70%, depending on the content. mbtree is only available in latest x264 git so
1034
-     please upgrade
1035
-   * Added new options mbtree, rc_lookahead and nopsy to the preset.cfg file
1036
-   
1037
-* Sat Aug 01 2009 Grozdan Nikolov <neutrino8@gmail.com>
1038
-   * Added new option -mfr which calculates the maximum allowed frame references within DPB
1039
-     (Decoded Picture Buffer) limits for different H.264 levels and resolutions
1040
-   * Call the track_echo_func() function inside the select_audio_codec_func() one. Removes
1041
-     pointless duplication
1042
-   * Don't call mplayer twice in the 2nd/3rd audio track code just to get the audio codec.
1043
-     Also removed a pointless case statement
1044
-   * Allow users to set the H.264 level when using the standard PC presets
1045
-   * Fixed a few typos in the preset.cfg file
1046
-   * Updated the man page
1047
-   
1048
-* Thu Jul 30 2009 Grozdan Nikolov <neutrino8@gmail.com>
1049
-   * Increased subq to 10 (QP-RD) for the IHQ preset. Requires latest x264 from git. Also
1050
-     lowered frameref from 16 to 8 and bframes from 10 to 7
1051
-   * Add example on how to encode only specific DVD chapters. Some people keep bugging me
1052
-     about this while it's actually very simple
1053
-     
1054
-* Fri Jul 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
1055
-   * Switched to the new Auto-variance AQ (aq_mode=2) for all presets. This requires latest x264
1056
-     revision from git so please upgrade!
1057
-   * Decreased frame references for all iPod presets to 1 and increased subq to 8 for the HQ iPod
1058
-     presets
1059
-   * Minor improvments to the set_output_filename_func() function
1060
-   * Merged the audio code of the portable device presets. Moderately reduces code duplication in
1061
-     the audio functions calling code
1062
-   * Added two new presets (ag1 and ag1hq) for Android G1 devices. This brings the total presets
1063
-     count to 60
1064
-   * Added support for the new gradfun debanding video filter. Although mostly recommended for playback
1065
-     due to the fact that encoding tends to bring back banding, it can be useful to deband input
1066
-     sources which show pretty bad and very noticable banding effects before passing the content
1067
-     to the encoder. The gradfun filter is only available in MPlayer SVN. This also adds a new
1068
-     variable ALLOW_DEBAND to the config file where one can enable or disable this filter
1069
-   * Added a small while loop to the video_crop_func() function which will keep asking the user for
1070
-     new crop values until he's satisfied with them. Patch by elektronaut from Doom9.org
1071
-   * Added a new variable PRIORITY to the config file which can be used to set a global priority
1072
-     nice value for the encoding process. The values one can use are between (and including)
1073
-     -20 and 19. However, if the script detects that the variable has a negative nice value
1074
-     set and the script is being executed with regular user privileges, it will print a notice
1075
-     and exit. This change updates the config file to version 9
1076
-   * Updated the man page
1077
-   
1078
-* Wed Jul 08 2009 Grozdan Nikolov <neutrino8@gmail.com>
1079
-   * Added detection for E-AC3 audio for stream copy and updated the MKV/TS muxing code to support it
1080
-   * Added new option -spr which calculates the Storage and Pixel Aspect Ratios (SAR/PAR) for various
1081
-     resolutions
1082
-   * Display the amount of chapters each DVD title has when scanning for titles
1083
-   * Display total pixels, SAR and PAR when scanning a file/vcd with the -scan option
1084
-   * Added --no-chapters mkvmerge option for audio files encoded by neroAacEnc so that chapters
1085
-     won't be copied over to the MKVs from these files
1086
-   * Small update to the install script
1087
-   * Updated the man page. Fix some small cosmetic issues, patch by Alessio Treglia
1088
-   
1089
-* Wed Jul 01 2009 Grozdan Nikolov <neutrino8@gmail.com>
1090
-   * Fallback to undefined audio language in the AUDLANG[$i] variables if we detect unknown language
1091
-     from MPlayer's output
1092
-   * Added support for bitrate-based ABR Vorbis encoding in addition to quality-based VBR. ABR mode
1093
-     in Vorbis resembles quality-based VBR except the encoder averages a given nominal bitrate
1094
-   * Updated the Vorbis part of the video bitrate calculation code
1095
-   * Added new function ratio_and_pixels_func() which calculates and displays the Storage Aspect Ratio (SAR),
1096
-     Pixel Aspect Ratio (PAR) and total pixels from resolution
1097
-   * Bugfix for track 1 in the internal audio encoding code. If using aacplusenc to encode audio, the case
1098
-     statement had a wrong selection value (aac++ instead of aac+) resulting in displaying a failed message
1099
-     and forcing an exit even though the encoding may have succeeded
1100
-   * Simplifications to the internal audio encoding code which reduce code duplication
1101
-   * Small fixes to the video bitrate calculation code
1102
-   * Small tuning to the Blu-ray/AVCHD presets
1103
-   * Small cleanups
1104
-   
1105
-* Fri Jun 26 2009 Grozdan Nikolov <neutrino8@gmail.com>
1106
-   * Set default audio codec for the Blu-ray/AVCHD presets to AC3
1107
-   * Bugfix to the OGM muxing code. Second/third track were ignored when one selects AC3 audio
1108
-   * Added keyint, keyint_min, nr and interlaced variables to the custom preset skeleton file 'preset.cfg'
1109
-   * Moved the AACTYPE variable to the neroaac_audio_func() function and updated the specific parts
1110
-     that use it in the MKV/MP4 muxing code
1111
-   * Do not automatically detect audio sample rate in directory batch encoding mode. Only do it
1112
-     for single file/dvd/vcd encodings as in batch mode, detection will only print the sample rate of
1113
-     the first file but not the other files in the directory so this can mislead the user in thinking
1114
-     that all files in the directory have the sample rate reported by the script. It is possible to
1115
-     implement sample rate detection for all files but since we don't know how many files are in
1116
-     the directory, I do not want the user to see a full screen with sample rate info of each file if
1117
-     he deals with a directory with a few hundreds or more files in it
1118
-   * Disallow autocropping, if enabled in the config file, for directory batch encodings
1119
-   * Small reordering to the MP4 muxing code
1120
-   * Small update to the install script
1121
-   * Updated the man page
1122
-   
1123
-* Wed Jun 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
1124
-   * Removed audio filters for the 1st pass in 2-pass encoding and for the 1st & 2nd pass of
1125
-     a 3-pass encoding. They are useless here and it's something I've overlooked for a long
1126
-     time. Thanks to Mat Kanner for noticing and reporting
1127
-   * Some small changes to the way we pass FPS to MP4Box
1128
-   * Added support for MP4 hinting for RTP/RTSP sessions
1129
-   * Simplifications to the external subs importing code. Also fixed a bug in the MP4 subs
1130
-     importing code; missing -add option in the MP4SUBS variable will make MP4Box fail
1131
-   * Merged the MKV tagging code with the muxing one
1132
-   * Added support for detection of WMA audio for stream copy
1133
-   * Added support for per track audio codecs for DVD encodings. The user can now select
1134
-     if he wishes for each track a different audio codec. Mixing audio stream copy with
1135
-     compression codecs is also possible
1136
-   * Updated all relevant audio functions to support per track audio codecs
1137
-   * Updated the bitrate calculation code to support per track audio codecs
1138
-   * Updated the container muxing code to support the above audio changes
1139
-   
1140
-* Mon Jun 22 2009 Grozdan Nikolov <neutrino8@gmail.com>
1141
-   * Small improvement to the MKV/MP4 tagging code: support audio tagging of single file
1142
-     encodes with audio stream copy
1143
-   * Use array variables ${SUBFILE[2] and ${SUBFILE[3] instead of ${OUTPUT%.*}_sub2
1144
-     and ${OUTPUT%.*}_sub3 when dumping the second/third DVD subtitles
1145
-   * Simplified the MKV cover art importing code
1146
-   * Small improvements to video bitrate calculation with audio stream copy
1147
-   * Use only one named pipe for all tracks when encoding to neroAAC/AAC+/Vorbis/FLAC
1148
-   * Major audio code restructuring and partial rewrite. Converted virtually all audio
1149
-     code variables to array variables. This allows for easy extensibility and much less
1150
-     code duplication. It's very easy now to add as much audio tracks as one may want to the
1151
-     code with very little changes/updates needed to the containers code. Also the current
1152
-     changes may allow very easily to support different audio codecs per track in the future
1153
-   * Added support for a third DVD audio track
1154
-   * Updated the video bitrate calculation for target size to support the above audio changes
1155
-   * Converted most of the variables in the video_subtitles_func() function to arrays. This
1156
-     moderately reduces some code duplication
1157
-   * Updated the container muxing/tagging code to support the above audio changes
1158
-   * Use external flac encoder to encode to FLAC audio as doing it through mencoder is terribly
1159
-     broken. This updates the config file to version 8 and adds the 'flac' encoder as dependency
1160
-   * Set the default resampling filter to lavcresample as the other one gives problems when
1161
-     encoding to FLAC audio and resampling
1162
-     
1163
-* Wed Jun 19 2009 Grozdan Nikolov <neutrino8@gmail.com>
1164
-   * Simplifications to the MKV tagging code which reduces some code duplication
1165
-   * Bugfix: FAAC acodec2 variable has wrong mpeg value. Must be mpeg=4 instead of mpeg4.
1166
-     This results in failure in encoding of the second audio track when one selects
1167
-     FAAC as encoder
1168
-   * Bugfix: FLAC audio was ignored for the second track due to missing value in the selection
1169
-     of the case statement
1170
-   * Added support for tagging of MKV files when doing a directory batch encoding
1171
-   * Replaced the IMPSUB1, IMPSUB2 and IMPSUB3 variables, used to import subs when input type
1172
-     is file/directory/vcd, by array variables EXTSUB[1], EXTSUB[2] and EXTSUB[3]. This allows
1173
-     for less code duplication as these array variables are shared by all input types (including DVD)
1174
-     and thus we only need to do a small loop and add their values if not empty to the
1175
-     MKVSUBS, MP4SUBS and OGMSUBS variables
1176
-   * Use as temp directory $HOME/.h264enc/job<PID>
1177
-   * Added new function audio_stream_copy_func() which will print a warning that audio stream copy
1178
-     in directory batch encoding mode is not recommended unless the user is certain that the files
1179
-     have a supported audio codec by the MKV/MP4/OGM/TS containers
1180
-   * Group audio filters under a submenu similar to how the video filters are grouped
1181
-   * Some small cleanups
1182
-   
1183
-* Wed Jun 17 2009 Grozdan Nikolov <neutrino8@gmail.com>
1184
-   * Added support for per track audio bitrate for DVD encodings
1185
-   * Added support for per track audio normalization and volume adjustments for DVD encodings.
1186
-     Updated functions audio_volnorm_func() and audio_volume_func()
1187
-   * Added support for per track audio resampling for DVD encodings. Updated functions
1188
-     audio_resample_filters_func() and audio_resample_func()
1189
-   * Updated the video bitrate calculation code to support the above audio changes
1190
-   * Bugfix for the qt/bd/avchd presets: audio filters were not called for these presets
1191
-   * Added support for per track AAC profile settings (LC/HE/HEv2) when using the
1192
-     neroAacEnc audio encoder
1193
-   * Small modifications to the MKV/MP4 tagging and muxing code to support the
1194
-     per track neroAacEnc AAC profiles. This also includes optimizations to the way
1195
-     the tagging code handles different AAC profiles. If LC profile is chosen, audio will
1196
-     be tagged as LC-AAC (along with channels info). For HE and HEv2, audio will be tagged
1197
-     as HE-AACv1 and HE-AACv2 (along with channels info) respectively
1198
-   * Moved the MKV tagging code inside the MKV muxing code
1199
-   * Converted the EXTSUB1, EXTSUB2 and EXTSUB3 variables, used to import external DVD subs,
1200
-     to arrays so we can easily check different files for their file extensions
1201
-   * Only allow SRT subs as import into OGM. If another subs format is provided, the
1202
-     subs will be skipped. For MP4, do not allow ASS/SSA subs since it's not supported yet
1203
-     by MP4Box. For MKV, do not allow SUP and TTXT subs
1204
-     
1205
-* Mon Jun 15 2009 Grozdan Nikolov <neutrino8@gmail.com>
1206
-   * Update to the video_subtitles_func() function: for DVD encodings, added support
1207
-     for importing up to three external subtitles into MKV/MP4/OGM. Also added
1208
-     support for hardcoding an external subtitle into the movie
1209
-   * Updated the MKV/MP4/OGM muxing code to support imports of external subtitles
1210
-   * Increased Psy RD from 0.5 to 0.6 for some presets
1211
-   * If dumping of the second and/or third DVD subtitle fails and user has selected to
1212
-     import the subs into MKV/MP4, force an exit since container conversion will fail as
1213
-     the muxing programs will complain about the missing subs. If no container conversion
1214
-     is chosen or user has chosen not to import the subs and dumping of subs fails, just
1215
-     continue since there's nothing critical in this case
1216
-   * Use mplayer -really-quiet option instead of redirection to /dev/null when dumping
1217
-     audio to a named pipe for neroAAC/Vorbis/AAC+ encoding
1218
-   * Some small updates to the man page
1219
-   * Updated the AUTHORS file
1220
-   
1221
-* Fri Jun 12 2009 Grozdan Nikolov <neutrino8@gmail.com>
1222
-   * Replaced the --noaudio mkvmerge option with -A due to recent options changes
1223
-     in mkvmerge version 2.9.5. -A also works for older versions so nothing breaks here
1224
-   * Removed the check_outfile_func() function as its code has been added to the
1225
-     set_output_filename_func() function, which also has been improved
1226
-   * Added support for FLAC audio in MKV
1227
-   * Removed some code duplication in the MKV metadata tagging code
1228
-   
1229
-* Tue Jun 09 2009 Grozdan Nikolov <neutrino8@gmail.com>
1230
-   * Added support for adding jpeg/png cover art files to MKV/MP4
1231
-   * Added audio language meta-info for MP4 and TS files
1232
-   * Improved audio language meta-info for MKV files. This also adds metadata
1233
-     info for the second audio track
1234
-   * Fixed a small bug: the --aac-is-sbr mkvmerge parameter should be set to 0:1
1235
-     for the second audio track when using aacplusenc as encoder
1236
-     
1237
-* Mon Jun 08 2009 Grozdan Nikolov <neutrino8@gmail.com>
1238
-   * Add iTunes video title name to MP4 files
1239
-   
1240
-* Sun May 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
1241
-   * Use the same name for the log file as the output file name
1242
-   * Force using the libmpeg2 decoder when encoding DVDs/VCDs (works slightly better in specific
1243
-     cases compared to ffmpeg2)
1244
-   * Added support for IVTC 59.940 -> 23.976 fps
1245
-   * Some small code cosmetics
1246
-
1247
-* Tue May 12 2009 Grozdan Nikolov <neutrino8@gmail.com>
1248
-   * Added deinterlace combinations of Yadif + linear blend, linear interpolation, cubic
1249
-     interpolation, median deint, ffmpeg deint and lowpass 5
1250
-   * Cosmetics to the help menu
1251
-   * Added global audio function audio_filters_func() for calling the resample, volume
1252
-     normalizing and volume filters
1253
-   * Added 16 new variables to the config file for enabling/disabling of specific audio/video
1254
-     filters and containers: ALLOW_FPS_CONVERSION, ALLOW_SCALER_TUNING, ALLOW_DSIZE,
1255
-     ALLOW_EXPAND, ALLOW_COLORSPACE, ALLOW_ASPECT, ALLOW_AUD_RESAMPLE, ALLOW_AUD_NORMALIZE,
1256
-     ALLOW_AUD_VOLUME, ALLOW_MKV_MUXING, ALLOW_MP4_MUXING, ALLOW_TS_MUXING, ALLOW_OGM_MUXING,
1257
-     ALLOW_SAMPLE_ENCODING, ALLOW_SCAN_MULTIPLE_VIDSTREAMS and ALLOW_SCAN_MULTIPLE_AUDSTREAMS,
1258
-     the last two are only effective on file and directory batch encodings
1259
-   * Updated the man page
1260
-
1261
-* Thu May 7 2009 Grozdan Nikolov <neutrino8@gmail.com>
1262
-   * Automatically add the shebang line to batch files and make them executable
1263
-   * Added new variable ALLOW_AUTOCROP to the config file which allows the user to enable or
1264
-     disable automatic cropping
1265
-   * Added MP3 presets and updated target file size code to support them (requested by Rogério Brito)
1266
-   * Some minor adjustments to the hq, vhq, ehq, uhq and ihq presets; decrease b-frames by one
1267
-
1268
-* Wed Apr 29 2009 Grozdan Nikolov <neutrino8@gmail.com>
1269
-  - Small bugfix: video filters variables in the config file were not respected when one
1270
-    chooses to encode VCDs. 
1271
-  - Add video title meta-data for MKV and OGM when doing directory batch encodings
1272
-
1273
-* Tue Apr 28 2009 Grozdan Nikolov <neutrino8@gmail.com>
1274
-   * Optimize some variables by replacing piping to sed with VARIABLE1="${VARIABLE2%.*}.ext"
1275
-   * Move out the built-in -loop 1 mplayer option to the config file's MPLAYEROPTS variable
1276
-   * Add support for enabling/disabling specific pre/postprocessing filters in the config file.
1277
-     This adds 7 new variables to the config file where the user can either enable to ask
1278
-     questions about a specific filter or disable a specific variable, thus skipping
1279
-     questions about the filter
1280
-   * Moved the video filters code to a new function called video_filters_func(). This also
1281
-     reduces a bit of code duplication
1282
-   * Add a new option -e which allows the user to edit the config file directly from within the
1283
-     terminal. This adds a new variable EDITOR to the config file where the user can set his
1284
-     preferred text editor (defaults to nano)
1285
-   * Silence possible dvdxchap warnings
1286
-   * Updated the man page
1287
-
1288
-* Thu Apr 26 2009 Grozdan Nikolov <neutrino8@gmail.com>
1289
-   * Bugfix: missing 's' in the sed expression of the MP4OUT variable. This results in
1290
-     missing output file and will fail when one tries to remux to mp4
1291