File xvidenc.spec of Package xvidenc (Revision 29)

Currently displaying revision 29 , Show latest

501
 
1
# norootforbuild
2
3
Name:       xvidenc
4
Version:    8.4.7
5
Release:    1
6
7
License:    GPL-2.0+
8
Group:      Productivity/Multimedia/Video/Editors and Convertors
9
Summary:    An advanced CLI shell script for MEncoder
10
URL:        http://xvidenc.sourceforge.net/
11
12
Source0:        %{name}-%{version}.tar.gz
13
14
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
15
BuildArch:  noarch
16
17
Requires:       coreutils, findutils, gpac, bc, gawk, lsdvd, nano, ogmtools, aften, vorbis-tools, mailx, MPlayer,mkvtoolnix
18
19
20
%description
21
xvidenc is an advanced and powerful interactive menu-driven shell script
22
written for the GNU/Linux operating system which can help you to encode
23
a DVD, a (S)VCD or a regular video file to the MPEG-4 SP/ASP format using
24
the MEncoder encoder from the MPlayer project and the Xvid library. It supports
25
muxing the final encode from AVI to Matroska, from AVI to OGM and from
26
AVI to the MP4 container.
27
28
29
%prep
30
%setup -q -n %{name}-%{version}
31
32
%build
33
34
%install
35
# binary
36
%__install -D -m 755 %{name} %{buildroot}/%{_bindir}/%{name}
37
38
# man
39
gzip -9 man/%{name}.1
40
%__install -D -m 644 man/%{name}.1.gz %{buildroot}/%{_mandir}/man1/%{name}.1.gz
41
42
# docs
43
%__mkdir -p %{buildroot}/%{_docdir}/%{name}/matrices/Jawor{1,2}CD
44
%__install -m 644 doc/* %{buildroot}/%{_docdir}/%{name}
45
%__install -m 644 matrices/Jawor1CD/* %{buildroot}/%{_docdir}/%{name}/matrices/Jawor1CD
46
%__install -m 644 matrices/Jawor2CD/* %{buildroot}/%{_docdir}/%{name}/matrices/Jawor2CD
47
48
49
%clean
50
rm -rf "%{buildroot}"
51
52
53
%files
54
%defattr(-,root,root)
55
%{_bindir}/%{name}
56
%{_docdir}/%{name}
57
%{_mandir}/man1/%{name}.1.gz
58
59
60
%changelog
61
* Tue May 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 8.4.7
62
    * Use aften for AC3 audio encoding as MEncoder is currently broken. This updates the config
63
      file version to 18
64
      
65
* Wed May 22 2013 Grozdan Nikolov <neutrino8@gmail.com> 8.4.6
66
    * Bugfix: add missing 384 kbps option for AC3 audio
67
    * Notify the user when we first create the config file
68
    * SAR is Sample Aspect Ratio, not Storage Aspect Ratio. Corrected this mistake
69
    
70
* Thu Apr 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 8.4.5
71
    * Use ffmpeg's MPEG12 decoder instead of the libmpeg12 one
72
    * Updated the man page
73
    
74
* Thu Sep 27 2012 Grozdan Nikolov <neutrino8@gmail.com> 8.4.4
75
    * Don't append '- chapter [id]' to output filename when user encodes only specific DVD chapters
76
    * Change bad default bitrate value in DTS audio encoding to 384kbps.
77
    
78
* Mon Jan 02 2012 Grozdan Nikolov <neutrino8@gmail.com> 8.4.3
79
    * Added support for setting the default video bitrate/quantizer and default audio codec
80
      in the config file, which introduces three new variables; DEFAULT_VID_BITRATE,
81
      DEFAULT_VID_QTZR and DEFAULT_AUD_CODEC. This bumps the config file version to 17
82
    * Renamed variables DEFOUTPUT, DEFPATH and DEFBATCHDIR to DEFAULT_OUTPUT, DEFAULT_PATH
83
      and DEFAULT_BATCHDIR
84
    * Replaced some if conditionals in the -sc option by using 'test' directly
85
    * Added an option to pass additional parameters to MEncoder. Useful if user wants to pass options
86
      such as -mc 0 -noskip
87
    * Added support for encoding to DTS audio through the dcaenc encoder which can be found
88
      at: http://aepatrakov.narod.ru/dcaenc/
89
    * Minor changes to the video_delogo_func() function. Use $sourcetype, $device, $vid and
90
      $MPLAYEROPTS variables. Also use -nosound in MPlayer
91
    * Improved the mkvtags file. Escape special characters like &, <, > and " in the Title field
92
    * Use -vo dummy in MPlayer in the audio code. Seems to work better for some files
93
    
94
* Tue Mar 29 2011 Grozdan Nikolov <neutrino8@gmail.com> 8.4.2
95
    * Added support for setting the crop rounding value
96
    
97
* Mon Mar 07 2011 Grozdan Nikolov <neutrino8@gmail.com> 8.4.1
98
    * Fixed a bug in directory batch mode were wrong conditional was used to check
99
      for the DEFOUTPUT variable
100
    * Display which file is currently being processed in batch mode
101
    * Check only for files while in batch mode
102
    * Fixed the video_deblock_func() function. Wrong vars used
103
    
104
* Mon Jan 31 2011 Grozdan Nikolov <neutrino8@gmail.com> 8.4.0
105
    * Use -demuxer lavf when trying to get the video length for bitrate calculation
106
      for a target file size. Should be more reliable on M2TS/TS files
107
    * Added support for the delogo filter and bumped config file version to 16
108
    * Updated copyright dates
109
    
110
* Fri Nov 26 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.9
111
    * Remove double $HOME variable in the -scan option
112
    
113
* Fri Oct 29 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.8
114
    * Added support for setting subtitle codepage during hardcoding of external subs
115
    * Added support for the audio equalizer filter. This updates the config file version
116
      to 15
117
    * Removed 'time' requirement
118
    
119
* Wed Sep 22 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.7
120
    * Workaround mencoder stupidity. With recent versions of mencoder that have subs
121
      enabled by default (who came up with that great idea?), in case the user selects
122
      to dump a sub for importing into mkv/mp4, during multipass encoding the first sub
123
      will always get hardcoded due to missing -nosub option in the 2nd and 3rd pass code.
124
      This is only valid for multipass encodes so people using one pass modes (-1p or -fq)
125
      are safe.
126
    * Small update to the -scan option. Just check if input file is there, regardless if
127
      user provides the full path or not
128
      
129
* Sat Aug 07 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.6
130
    * Add -nosub to prevent auto-loading of subs
131
    
132
* Sat May 15 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.5
133
    * Small bugfix in the get_devices_func() function; script exits when user hits enter
134
      to accept default device
135
    * Updated the man page
136
    
137
* Wed May 05 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.4
138
    * Reworked a bit the audio channels decode/output function. This function also got
139
      renamed from audio_channels_func() to audio_channels_decode_func()
140
    * Added support for the audio channels filter which can be used to add/remove/route channels
141
      This updates the config file to version 14 and adds variable ALLOW_AUD_CHANNELS
142
    * Some various small improvements
143
    
144
* Fri Mar 12 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.3
145
    * Small bugfix: the $interlacing variable wasn't passed on to mencoder
146
    * Space escaped some previously missed variables
147
    
148
* Sat Feb 27 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.2
149
    * Small bugfix: wrong variable used when exporting from the send_email_func() function
150
      to the batchfile
151
    * Added new variable DEFOUTPUT to the config where user can set a default output directory.
152
      This updates the config version to 13
153
    * Updated the set_output_filename_func() function to support the above change
154
    * Use one variable in the presets (xvidparams) for all MEncoder Xvid encoding options.
155
      Reduces some code and simplifies things a bit
156
    * Updated the preset.cfg file to support the "one variable for all Xvid encoder opts"
157
      Note: those using custom preset files for encoding should read the preset.cfg file
158
      in the doc dir and adapt their existing preset files to be compatible with the
159
      changes. Previous older custom presets written by users will not work with this and
160
      future versions of xvidenc!
161
      
162
* Tue Feb 02 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.1
163
    * Reduced duplication in the audio encode exporting code by moving it inside functions
164
    * Reduced duplication in the MKV/MP4/OGM exporting code by moving it inside functions
165
    * Reduced duplication in the code that prints some information before encoding starts
166
    * Various minor code improvements
167
    
168
* Thu Jan 21 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.3.0
169
    * Renamed the rmconf() function to rmtemp() 
170
    * Moved creation of temp dir, the interrupt_func() and rmtemp() functions at the beginning
171
      of the script
172
    * Fixed a bug in the DVD part of the -scan option where lsdvd doesn't get a valid device
173
      passed. Bug was introduced due to changes in the new get_devices_func() function
174
    * Removed some duplication in the mencoder_opts() function
175
    * Various small code improvements
176
    * Updated the README.xvidenc file
177
    
178
* Tue Jan 19 2010 Grozdan Nikolov <neutrino8@gmail.com> 8.2.9
179
    * Fixed a bug where the interlacing variable doesn't get passed when skipping the
180
      pre/postprocessors. This is needed for correct condition check for IVTC/FPS conversion.
181
      Reported by Peter Lutz
182
    * Fixed a bug in the -scan option where vcd was not recognized as valid option
183
    * Added two new variables, DVD_DEVICE and CDROM_DEVICE, to the config file where user can
184
      set his preferred dvd/cd block device. This updates the config file to version 12
185
    * Removed the -a52drc option for AC3 encoding
186
    * Merged the get_dvd_devices_func() and get_vcd_devices_func() functions into a new one
187
      called get_devices_func()
188
      
189
* Mon Dec 28 2009 Grozdan Nikolov <neutrino8@gmail.com>
190
    * Changed all video ALLOW_* variables in the config file to ALLOW_VID_*
191
    * When using dd to dump a DVD to an ISO, use options noerror,sync and a bs size of 2048
192
    * Added support for sending mails. This requires the 'mailx' program and a valid .mailrc
193
      file in the home directory. Mail notification can be enabled in the config file of
194
      xvidenc which also offers an example of a gmail setting for .mailrc
195
    * Added support for loading custom preset files. Have a look at the preset.cfg file in
196
      the doc directory on how to write such files
197
    * Added support for setting a custom temp dir in the config file
198
    * Small update to the mkvtags_func() function
199
    * Bumped config file version to 11
200
    * Updated copyright dates
201
    * Updated the man page
202
    
203
* Tue Nov 17 2009 Grozdan Nikolov <neutrino8@gmail.com>
204
    * Implemented a simple telecine detector for NTSC DVDs. Currently it's a dumb solution
205
      which can't distinguish between hard telecine and interlacing but it's enough to
206
      detect soft telecine and mixed progressive/telecine content which is more common
207
    * Simplified the FPS detection code
208
    * Sed a comma at the end of resolution detection in case we're dealing with TS files. The
209
      default TS demuxer in MPlayer has a comma at the end of the resolution info which results
210
      in errorneous behavior in the bc calculation
211
    * Simplified the resolution detection code
212
    * Small general code improvements and cosmetics
213
    
214
* Sat Oct 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
215
    * Added new function video_subtitles_align_func() for subtitle alignment control
216
    * Simplified a bit the audio exporting code for the first track
217
    * Force stereo audio for Nero HE-AACv2 as it doesn't support anything else, thus
218
      it results in failure if user tries to encode with more than two channels. This
219
      updates the audio_channels_func() function and also adds a small new independent
220
      one called neroaac_hev2_func() which only sets the channels to two if the channels
221
      array variables are empty, as is the case when the user did not set the channels
222
    * Small improvements to the ABR/VBR default audio bitrates for the neroAacEnc encoder.
223
      Base the default bitrates on the chosen AAC profile, i.e. if user chooses HE-AACv1,
224
      default bitrate will be 55 kbps or in case of quality-based VBR encoding a value of
225
      0.22. For LC-AAC and HE-AACv2, default bitrates and quality values will be 96 kbps
226
      or 0.35 and 25 kbps or 0.11, respectively. Note that this assumes the input audio is
227
      stereo so if it's anything else than that, it's up to the user to decide on bitrates
228
      or quality values
229
    * Set default to a capital letter in questions where one needs to answer with y or n
230
    
231
* Tue Sep 29 2009 Grozdan Nikolov <neutrino8@gmail.com>
232
    * Insert the ilpack filter before the scaler to correctly align chroma when
233
      preserving interlacing
234
    * Added AUDIO_CODEC_TRACK[1|2|3], AUDIO_LANGUAGE_TRACK[1|2|3], MKVMERGE_VERSION
235
      and XVIDENC_PARAMETERS entries to the mkvtags_func() function
236
    * Improved checking the availability of block devices
237
    * Add detection of VFR content (1000 fps as reported by MPlayer)
238
    
239
* Sat Sep 19 2009 Grozdan Nikolov <neutrino8@gmail.com>
240
    * Added VIDEO_FILTERS, AUDIO_FILTERS_TRACK[1|2|3], ENCODER and XVID_PARAMETERS
241
      entries to the mkvtags_func() function
242
    * MP3 (MPEG1 Layer 3) only supports sample frequencies of 32, 44.1 and 48 kHz
243
      so restrict to those only in the audio_resample_func() function
244
    * Set default for the pp7 deblocker to 3
245
    * Fixed example typo in the DVD chapters code
246
    
247
* Wed Sep 16 2009 Grozdan Nikolov <neutrino8@gmail.com>
248
    * Small improvement to how the MKV XML tagging file gets exported. Also improved
249
      the XML formatting and added COMMENT string with text "Tagged by xvidenc $version"
250
      and added SOURCE entry
251
    * Added comment tag for MP4 and OGM with the same text as above
252
    * Small update to the video_deinterlace_func() function's menu
253
    * Add comment header with dates to batch files
254
    * Use only lowercase words in all case statements that deal with the input source
255
    * Placed the -passlogfile option inside the PASSLOG variable
256
    * Added support for 2-pass Nero AAC audio encoding. Note that 2-pass is only
257
      supported by ABR/CBR encoding and ensures that the output quality is constant
258
      (like VBR) while also ensuring that a specified output bitrate is achieved
259
      (like CBR)
260
    * Small bugfix: the counter in set_output_filename_func() didn't increase itself
261
    * Replaced variable $source with $type and $vtype with $source
262
    
263
* Sat Sep 05 2009 Grozdan Nikolov <neutrino8@gmail.com>
264
    * Added support for the noise video filter. This change updates the config file to
265
      version 10. Also, encoding priority now defaults to a nice value of 10 in the
266
      config file
267
    * Moved out the code which checks and backups/renames a file if it has the same
268
      name as the output provided by the user to a separate function called
269
      backup_file_func() and also improved it so that if there's already an existing
270
      backup file, the new one will increase its count number by one thus there's no
271
      more overwriting being done anymore. The same thing applies to existing chapter
272
      files and DVD subs
273
    * Small improvements to how chapters information is added to the output file name
274
    * Improved detection of DVD audio language codes. We now specifically grep for the
275
      language word and then print the 2nd positional which gives us the language code.
276
      It works more reliably if the DVD does not report its language code for the audio track(s)
277
      so if this is the case, we fall back to undefined language. The previous code fails in
278
      such cases due to the printing of the 8th positional which will print the "aid:" part when
279
      there's no language code after the "language:" word, resulting in MKV/MP4 muxing failures.
280
    * Turn soft-clipping on in the volume audio filter
281
    * Simplified the audio_channels_func() function a bit
282
    * Moved the MP4 code that deals with DVD subs/cover files/metadata info/chapters and external
283
      subs before its audio code
284
    * Fixed chapters import for the OGM container. Missing '@' before the chapters input file
285
      results in the file not being imported
286
    * Added support for audio language metadata info for the OGM container
287
    * Added support for Year and Genre metadata tagging for the MKV/MP4/OGM containers.
288
      For MKV, the genre and year is set globally using an automatically generated XML
289
      file. MP4 uses the iTunes tagging and OGM the comment space
290
    * Updated the man page
291
    
292
* Thu Aug 13 2009 Grozdan Nikolov <neutrino8@gmail.com>
293
    * Removed pointless for loop and if conditional in the audio_filters_var_func() function
294
    * Simplified the audio_filters_func() function
295
    * Added support for the audio panning filter. This change updates the config file to version 9
296
    * Moved the audio filters functions after the audio codecs ones
297
    * Reduced the number of if conditional iterations for setting the scaler interlace variable
298
    * Replaced variable CONFIGDIR with TEMPDIR
299
    * Fixed some spacings issues by moving around some echo's
300
    * Print full path of the output file(s) at the end of encoding
301
    * Simplified the sample encoding code. Reduced some code duplication
302
    * Removed duplicate videofilters variable. This removes the check for the tfields filter
303
      as now deinterlacing will always be done after cropping (which also speeds up things a bit)
304
      so the crop filter will never complain about crop area being outside of the original if
305
      tfields is used. It also reduces filters maintenance a bit
306
      
307
* Tue Aug 04 2009 Grozdan Nikolov <neutrino8@gmail.com>
308
    * Add example on how to encode only specific DVD chapters
309
    * Call the track_echo_func() function inside the select_audio_codec_func() one. Removes
310
      pointless duplication
311
    * Don't call mplayer twice in the 2nd/3rd audio track code just to get the audio codec.
312
      Also removed a pointless case statement
313
      
314
* Fri Jul 24 2009 Grozdan Nikolov <neutrino8@gmail.com>
315
    * Minor improvments to the set_output_filename_func() function
316
    * Added support for the new gradfun debanding video filter. Although mostly recommended for playback
317
      due to the fact that encoding tends to bring back banding, it can be useful to deband input
318
      sources which show pretty bad and very noticable banding effects before passing the content
319
      to the encoder. The gradfun filter is only available in MPlayer SVN. This also adds a new
320
      variable ALLOW_DEBAND to the config file where one can enable or disable this filter
321
    * Added a small while loop to the video_crop_func() function which will keep asking the user for
322
      new crop values until he's satisfied with them. Patch by elektronaut from Doom9.org
323
    * Added a new variable PRIORITY to the config file which can be used to set a global priority
324
      nice value for the encoding process. The values one can use are between (and including)
325
      -20 and 19. However, if the script detects that this variable has a negative nice value
326
      set and the script is being executed with regular user privileges, it will print a notice
327
      and exit. This change updates the config file to version 8
328
    * Fixed a bug in the audio functions calling code of the iPod preset
329
    
330
* Wed Jul 08 2009 Grozdan Nikolov <neutrino8@gmail.com>
331
    * Added detection for E-AC3 audio for stream copy and updated the MKV muxing code to support it
332
    * Added new option -spr which calculates the Storage and Pixel Aspect Ratios (SAR/PAR) for various
333
      resolutions
334
    * Display the amount of chapters each DVD title has when scanning for titles
335
    * Display total pixels, SAR and PAR when scanning a file/vcd with the -scan option
336
    * Added --no-chapters mkvmerge option for audio files encoded by neroAacEnc so that chapters
337
      won't be copied over to the MKVs from these files
338
    * Small update to the install script
339
    * Updated the man page. Fix some small cosmetic issues, patch by Alessio Treglia
340
    
341
* Fri Jul 03 2009 Grozdan Nikolov <neutrino8@gmail.com>
342
    * Fallback to undefined audio language in the AUDLANG[$i] variables if we detect unknown language
343
      from MPlayer's output
344
    * Added support for bitrate-based ABR Vorbis encoding in addition to quality-based VBR. ABR mode
345
      in Vorbis resembles quality-based VBR except the encoder averages a given nominal bitrate
346
    * Updated the Vorbis part of the video bitrate calculation code
347
    * Added new function ratio_and_pixels_func() which calculates and displays the Storage Aspect Ratio (SAR),
348
      Pixel Aspect Ratio (PAR) and total pixels from resolution
349
    * Bugfix for track 1 in the internal audio encoding code. If using aacplusenc to encode audio, the case
350
      statement had a wrong selection value (aac instead of aac+) resulting in displaying a failed message
351
      and forcing an exit even though the encoding may have succeeded
352
    * Simplifications to the internal audio encoding code which reduce code duplication
353
    
354
* Tue Jun 30 2009 Grozdan Nikolov <neutrino8@gmail.com>
355
    * Bugfix: array variable TRACKID[1] was missing for single file encodes. This results in
356
      erratic behavior of the audio code
357
    * Bugfix: second/third audio tracks were ignored by the OGM muxing code if audio codec is MP3
358
    
359
* Mon Jun 29 2009 Grozdan Nikolov <neutrino8@gmail.com>
360
    * Converted most of the variables in the video_subtitles_func() function to arrays.
361
      Moderately reduces some code duplication
362
    * Use array variables ${SUBFILE[2]} and ${SUBFILE[3]} instead of ${OUTPUT%.*}_sub2 and
363
      ${OUTPUT%.*}_sub3 when dumping the second/third DVD subtitle
364
    * Simplified the MKV cover art importing code
365
    * Major audio code restructuring and partial rewrite. Converted virtually all audio
366
      variables to array variables. This reduces a lot of code duplication and makes the
367
      audio code much easier and extensible
368
    * Added support for a third DVD audio track
369
    * Added support for per track audio codec for DVD encodings
370
    * Use external flac encoder to encode to FLAC audio as doing it through mencoder is terribly
371
      broken. This updates the config file to version 7 and adds the 'flac' encoder as dependency
372
    * Use only one named pipe when encoding audio tracks to neroAAC/AAC+/Vorbis/FLAC
373
    * Updated and optimized the containers muxing code to support the above audio changes
374
    * Updated the bitrate calculation code for target size to support the above audio changes
375
    * Disallow autocropping, if enabled in the config file, for directory batch encodings
376
    * Disallow automatic detection of audio sample rate for directory batch encodings
377
    * Added support for MP4 hinting for RTP/RTSP sessions
378
    * Updated the man page
379
    
380
* Thu Jun 19 2009 Grozdan Nikolov <neutrino8@gmail.com>
381
    * Simplifications to the MKV tagging code which reduces some code duplication
382
    * Bugfix: FAAC acodec2 variable has wrong mpeg value. Must be mpeg=4 instead of mpeg4.
383
      This results in failure in encoding of the second audio track when one selects
384
      FAAC as encoder
385
    * Bugfix: FLAC audio was ignored for the second track due to missing value in the selection
386
      of the case statement
387
    * Added support for tagging of MKV files when doing a directory batch encoding
388
    * Replaced the IMPSUB1, IMPSUB2 and IMPSUB3 variables, used to import subs when input type
389
      is file/directory/vcd, by array variables EXTSUB[1], EXTSUB[2] and EXTSUB[3]. This allows
390
      for less code duplication as these array variables are shared by all input types (including DVD)
391
      and thus we only need to do a small loop and add their values if not empty to the
392
      MKVSUBS, MP4SUBS and OGMSUBS variables
393
    * Use as temp directory $HOME/.xvidenc/job<PID>
394
    * Added new function audio_stream_copy_func() which will print a warning that audio stream copy
395
      in directory batch encoding mode is not recommended unless the user is certain that the files
396
      have a supported audio codec by the MKV/MP4/OGM containers
397
    * Group audio filters under a submenu similar to how the video filters are grouped
398
    * Some small cleanups
399
    
400
* Thu Jun 18 2009 Grozdan Nikolov <neutrino8@gmail.com>
401
    * Added support for per track audio bitrate for DVD encodings
402
    * Added support for per track audio normalization and volume adjustments for DVD encodings.
403
      Updated functions audio_volnorm_func() and audio_volume_func()
404
    * Added support for per track audio resampling for DVD encodings. Updated functions
405
      audio_resample_filters_func() and audio_resample_func()
406
    * Updated the video bitrate calculation code to support the above audio changes
407
    * Added support for per track AAC profile settings (LC/HE/HEv2) when using the
408
      neroAacEnc audio encoder
409
    * Small modifications to the MKV/MP4 tagging and muxing code to support the
410
      per track neroAacEnc AAC profiles. This also includes optimizations to the way
411
      the tagging code handles different AAC profiles. If LC profile is chosen, audio will
412
      be tagged as LC-AAC (along with channels info). For HE and HEv2, audio will be tagged
413
      as HE-AACv1 and HE-AACv2 (along with channels info) respectively
414
    * Moved the MKV tagging code inside the MKV muxing code
415
    * Converted the EXTSUB1, EXTSUB2 and EXTSUB3 variables, used to import external DVD subs,
416
      to arrays so we can easily check different files for their file extensions
417
    * Only allow SRT subs as import into OGM. If another subs format is provided, the
418
      subs will be skipped. For MP4, do not allow ASS/SSA subs since it's not supported yet
419
      by MP4Box. For MKV, do not allow SUP and TTXT subs
420
      
421
* Mon Jun 15 2009 Grozdan Nikolov <neutrino8@gmail.com>
422
    * Update to the video_subtitles_func() function: for DVD encodings, added support
423
      for importing up to three external subtitles into MKV/MP4/OGM. Also added
424
      support for hardcoding an external subtitle into the movie
425
    * Updated the MKV/MP4/OGM muxing code to support imports of external subtitles
426
    * If dumping of the second and/or third DVD subtitle fails and user has selected to
427
      import the subs into MKV/MP4, force an exit since container conversion will fail as
428
      the muxing programs will complain about the missing subs. If no container conversion
429
      is chosen or user has chosen not to import the subs and dumping of subs fails, just
430
      continue since there's nothing critical in this case
431
    * Use mplayer -really-quiet option instead of redirection to /dev/null when dumping
432
      audio to a named pipe for neroAAC/Vorbis/AAC+ encoding
433
    * Some small updates to the man page
434
    
435
* Fri Jun 12 2009 Grozdan Nikolov <neutrino8@gmail.com>
436
    * Replaced the --noaudio mkvmerge option with -A due to recent options changes
437
      in mkvmerge version 2.9.5. -A also works for older versions so nothing breaks here
438
    * Removed the check_outfile_func() function as its code has been added to the
439
      set_output_filename_func() function, which also has been improved
440
    * Added support for FLAC audio in MKV
441
    * Removed some code duplication in the MKV metadata tagging code
442
    
443
* Tue Jun 09 2009 Grozdan Nikolov <neutrino8@gmail.com>
444
    * Added support for adding jpeg/png cover art files to MKV/MP4
445
    * Added audio language meta-info for MP4 files
446
    * Added iTunes video title name for MP4 files
447
    * Improved audio language meta-info for MKV files. This also adds metadata
448
      info for the second audio track
449
    * Fixed a small bug: the --aac-is-sbr mkvmerge parameter should be set to 0:1
450
      for the second audio track when using aacplusenc as encoder
451
      
452
* Sat May 30 2009 Grozdan Nikolov <neutrino8@gmail.com>
453
    * Use the same name for the log file as the output file name
454
    * Force using the libmpeg2 decoder when encoding DVDs/VCDs (works slightly better in specific
455
      cases compared to ffmpeg2)
456
    * Added support for IVTC 59.940 -> 23.976 fps
457
    
458
* Tue May 12 2009 Grozdan Nikolov <neutrino8@gmail.com>
459
    * Added deinterlace combinations of Yadif + linear blend, linear interpolation, cubic
460
      interpolation, median deint, ffmpeg deint and lowpass 5
461
    * Cosmetics to the help menu
462
    * Added global audio function audio_filters_func() for calling the resample, volume
463
      normalizing and volume filters
464
    * Added 15 new variables to the config file for enabling/disabling of specific audio/video
465
      filters and containers: ALLOW_FPS_CONVERSION, ALLOW_SCALER_TUNING, ALLOW_DSIZE,
466
      ALLOW_EXPAND, ALLOW_COLORSPACE, ALLOW_ASPECT, ALLOW_AUD_RESAMPLE, ALLOW_AUD_NORMALIZE,
467
      ALLOW_AUD_VOLUME, ALLOW_MKV_MUXING, ALLOW_MP4_MUXING, ALLOW_OGM_MUXING, ALLOW_SAMPLE_ENCODING,
468
      ALLOW_SCAN_MULTIPLE_VIDSTREAMS and ALLOW_SCAN_MULTIPLE_AUDSTREAMS, the last two are only effective
469
      on file encodings
470
    * Updated the man page
471
472
* Thu May 7 2009 Grozdan Nikolov <neutrino8@gmail.com>
473
    * Automatically add the shebang line to batch files and make them executable
474
    * Added Apple iPod preset (request from Rogério Brito from the LAME team)
475
    * Added MP3 presets and updated target file size code to support them (requested by Rogério Brito)
476
    * Updated the audio code and aac/neroaac functions to support the iPod audio restrictions
477
    * Added -ipod parameter to MP4Box when using the iPod preset
478
    * Added new variable ALLOW_AUTOCROP to the config file which allows the user to enable or
479
      disable automatic cropping
480
    * Updated the man page
481
482
* Wed Apr 29 2009 Grozdan Nikolov <neutrino8@gmail.com>
483
  - Optimize some variables by replacing piping to sed with VARIABLE1="${VARIABLE2%.*}.ext"
484
  - Add -loop 1 mplayer option to the config file's MPLAYEROPTS variable
485
  - Add support for enabling/disabling specific pre/postprocessing filters in the config file.
486
    This adds 7 new variables to the config file where the user can either enable to ask
487
    questions about a specific filter or disable a specific variable, thus skipping
488
    questions about the filter
489
  - Moved the video filters code to a new function called video_filters_func(). This also
490
    reduces a bit of code duplication
491
  - Add a new option -e which allows the user to edit the config file directly from within the
492
    terminal. This adds a new variable EDITOR to the config file where the user can set his
493
    preferred text editor (defaults to nano)
494
  - Add video title meta-data for MKV and OGM when doing directory batch encodings
495
  - Silence possible dvdxchap warnings
496
  - Updated the man page
497
  
498
* Thu Apr 26 2009 Grozdan Nikolov <neutrino8@gmail.com>
499
  * Bugfix: missing 's' in the sed expression of the MP4OUT variable. This results in
500
    missing output file and will fail when one tries to remux to mp4
501