Projects
Multimedia
h264enc
h264enc.spec
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File h264enc.spec of Package h264enc (Revision 188)
Currently displaying revision
188
,
Show latest
# norootforbuild Name: h264enc Version: 9.8.0 Release: 1 License: GPL-2.0+ Group: Productivity/Multimedia/Video/Editors and Convertors Summary: An advanced CLI shell script for MEncoder URL: http://h264enc.sourceforge.net/ Source0: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch Requires: findutils gpac bc gawk lsdvd nano ogmtools vorbis-tools opus-tools flac aften dcaenc mailx faac MPlayer mkvtoolnix pv %description h264enc is an advanced and powerful interactive menu-driven shell script written for the GNU/Linux operating system which can help you to encode a DVD, a video file, a directory with video files or a (S)VCD to the H.264/MPEG-4 Part 10/AVC video format using the MEncoder encoder from the MPlayer project and the libx264 library. It supports muxing the final encode from AVI to MKV, from AVI to OGM, from AVI to TS and from AVI to the MP4 container. %prep %setup -q -n %{name}-%{version} %build %install %__mkdir -p %{buildroot}/%{_docdir}/%{name}/matrices # binary %__install -D -m 755 %{name} %{buildroot}/%{_bindir}/%{name} # man gzip -9 man/%{name}.1 %__install -D -m 644 man/%{name}.1.gz %{buildroot}/%{_mandir}/man1/%{name}.1.gz # doc %__install -m 644 doc/* %{buildroot}/%{_docdir}/%{name} %__install -m 644 matrices/* %{buildroot}/%{_docdir}/%{name}/matrices %clean rm -rf "%{buildroot}" %files %defattr(-,root,root) %{_bindir}/%{name} %{_mandir}/man1/%{name}.1.gz %{_docdir}/%{name} %changelog * Thu Feb 13 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.8.0 * Bugfix: dumping subs did not work when input is a VIDEO_TS DVD folder. Patch by Harry Gunnarsson * Sun Feb 02 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.9 * Added support for hardcoding embedded subtitles in files * Use -nosub for hadrcoding an external subtitle to prevent auto-loading of any embedded subtitles in the input * Use -ao null instead of -nosound * Sat Jan 18 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.8 * New variable in the config file, DELETE_AVI_AFTER_REMUX, to automatically delete the AVI file after remuxing. This updates the config file version to 27 * Renamed the 480 and 576 params of the colorprim_func() function to ntsc and pal * Fri Jan 03 2014 Grozdan Nikolov <neutrino8@gmail.com> 9.7.7 * Allow relative paths when storing options to the batchfile * Updated copyright dates * Fri Nov 15 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.6 * Allow importing of PGS subtitles into the MKV container * Improved chapters file handling for MKV/MP4/OGM when input is file * Fri Nov 08 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.5 * Added support for importing a chapters file for MKV/MP4/OGM when input is file * Added support for setting the audio language code for MKV/MP4/OGM/TS when input is file * Added support for setting the subtitle language code when importing subs into MKV/MP4/OGM * Sat Nov 02 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.4 * Fixed copying of E-AC-3 audio * Set default value for 3D frame packing to 3 (side by side) * Moved some audio selection code into the new set_audio_codec_func() function. Reduces some code duplication and removes the default_audio_codec_func() function * Fri Nov 01 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.3 * Merged the file and dvd audio detection/selection code * Merged the audio code for the first and subsequent tracks * Set a default audio ID based on input (ie, 0 for file and 128 for DVD) * Use -demuxer lavf for file and dir input * Small improvements to the subtitles code * Renamed the -help switch to -h * Improved the way audio tracks information is presented to the user * Make destination dir if it doesn't exist for saving to the batchfile * Updated the man page * Thu Oct 31 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.2 * Fixed exporting of the NERORMAUD variable to the batch file * Implemented support for virtually an infinite amount of subtitles. This introduces a new variable, MAX_AMOUNT_SUBS, to the config file where the user can set the amount of subtitles he/she wants h264enc to support * Added output name to the message of the mail notification feature * Fixed the nosound audio option * Renamed the rmtemp() function to exit_func() * Return proper exit codes. 0 on success, 1 on error and 2 on user interrupt * Wed Oct 30 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.1 * Enabled multi-channel support for Opus audio * Moved the MKV audio filters metadata after the audio codec/language metadata * Fixed copy and pcm audio encoding * If user chooses PCM for subsequent audio tracks, don't error out but just skip the track * Some minor clean-ups * Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.7.0 * Fix copying of subsequent audio tracks * Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.9 * Various bugfixes for multi-track audio support * Tue Oct 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.8 * Added -demuxer lavf for more reliable detection of audio streams in file input mode * Implemented virtually infinite support for the amount of audio tracks. This introduces a new variable in the config file, MAX_AMOUNT_AUD_TRACKS, where the user can specify how many audio tracks he/she wants h264enc to support. * Mon Oct 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.7 * Implemented support for 2nd and 3rd audio track when using "file" as input * Bugfix: when using Opus audio, calculating target file size was not possible * Added support for setting the AC-3 Exponent strategy search size * Allow applying an LFE filter to the AC-3 audio * Improved aften and opusenc options passing * Mon Oct 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.6 * Added support for the Opus audio codec. Requires opusenc and a recent version of mkvtoolnix with support for Opus * Updated the man page * Sun Oct 27 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.5 * Bugfix: codec detection for 2nd and 3rd audio track from DVDs did not work correctly * Sat Oct 26 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.4 * Restrict the AVCHD presets to AC-3 and COPY audio * Update the audio selection for the Blu-ray presets. DTS audio was supported but it wasn't displayed in the selection * Renamed function track_echo_func() to audio_track_echo_func() for consistency * Wed Oct 23 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.3 * Added support for setting the Dynamic Range Compression (DRC) profile for AC-3 audio * Renamed aften $AC3 variable to $AC3ENC * Use AC-3 instead of AC3 naming in metadata info * Tue Oct 22 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.2 * Added -readtoeof 1 option to the aften AC3 encoder. This ignores WAV header signaling and fixes encoding from a named pipe * Sun Oct 20 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.1 * Added support for encoding to 640 kbps AC3 audio * Tue Jul 02 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.6.0 * Fix audio TID for MKV when using neroAacEnc as encoder * Tue Jun 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.9 * Set correct color prims, transfers and matrix coeffs for Blu-ray/AVCHD SD resolutions * Removed space between two questions * Removed the sd* and hd* presets. They are useless * Updated the man page * Tue Jun 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.8 * Set VBV maxrate to 18k and VBV bufsize to 17k for the AVCHD presets * Added support for frame packing for 3D video * Add fake_interlaced to the AVCHD presets * Mon Jun 10 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.7 * Add fake_interlaced flag to 25fps/29.970fps content when using the Blu-ray presets. It allows to encode progressive 25p and 30p content but flags it as interlaced for Blu-ray compliance * Sun Jun 09 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.6 * Add rc_lookahead to the Blu-ray/AVCHD presets * When input is file, detect and display info about audio codec, channels, sample rate and bitrate * Sat Jun 08 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.5 * Enable weightp for the Blu-ray/AVCHD HQ presets. In order to have a broader compatibility with older Blu-ray players (mostly ones with buggy MediaTek chips), weightp is set to 1 and not 2 * Set VBV maxrate to 40000 and VBV buffer to 30000 for the Blu-ray presets * Set color primaries, transfer characteristics and matrix coeffs to bt709 for the Blu-ray/AVCHD presets * Set default position of the expand filter to after the scale filter * Fri Jun 07 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.4 * Improved the expand filter code * Optimized the Blu-ray/AVCHD HQ presets for better quality * Wed May 29 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.3 * Removed workarounds for older MP4Box versions. As of this release, only gpac 0.5.0 and higher is supported. SVN version is highly recommended, though * Improved AC3 and MP3 audio handling * Removed turbo option. It is no longer needed * When using AC3 audio, language TID for MKV was set to 1. It should be 0 * Tue May 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.2 * Fix OGM muxing with AC3 audio * Tue May 28 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.1 * Use aften for AC3 audio encoding as MEncoder is currently broken. This bumps up the config file version to 22 * Tue May 21 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.5.0 * Bugfix: add missing 384 kbps option for AC3 audio * Notify the user when we first create the config file * SAR is Sample Aspect Ratio, not Storage Aspect Ratio. Corrected this mistake * Thu Apr 11 2013 Grozdan Nikolov <neutrino8@gmail.com> 9.4.9 * Use ffmpeg's MPEG12 decoder instead of the libmpeg12 one * Mon Oct 01 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.8 * Added bluray_compat=1 parameter to the Blu-ray and AVCHD presets * Use 'true' instead of 'false' where appropriate * Updated the man page * Wed Sep 26 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.7 * Change bad default bitrate value in DTS audio encoding to 384kbps. * Mon Apr 16 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.6 * Bugfix: FAAC encoding was using wrong language TID in mkvmerge. Should be 0 instead of 1 as we no longer encapsulate AAC in MP4 * Removed --no-chapters mkvmerge option for FAAC encoding. It's no longer needed as we no longer store the AAC audio in MP4 container * Sat Apr 07 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.5 * Don't require FAAC to be compiled with MP4 container support (the -w option). Some distro's do not compile FAAC with MP4 support so play it safe and assume FAAC isn't compiled with MP4 support * Tue Feb 21 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.4 * Only 'sed' mbtree for multi-pass mode * Don't append "- chapter [id]" to output file when encoding only specific chapters * Tue Jan 03 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.3 * Use -vc dummy in MPlayer in the audio code. Seems to work better on some files * Sun Jan 01 2012 Grozdan Nikolov <neutrino8@gmail.com> 9.4.2 * Use a separate variable in config file for setting the default CRF or QP value (DEFAULT_VID_CRFQP). This bumps the config file version to 21 * Renamed the DEFOUTPUT, DEFPATH and DEFBATCHDIR variables to DEFAULT_OUTPUT, DEFAULT_PATH and DEFAULT_BATCHDIR * Be slightly more portable by using #!/usr/bin/env bash instead of #!/bin/bash shebang * Replaced some if conditionals in the -sc option by using 'test' directly * Added an option for passing additional MEncoder parameters. Useful for when the user wants to use something like -mc 0 -noskip, for example * Added support for encoding to DTS audio through the dcaenc encoder which can be found at http://aepatrakov.narod.ru/dcaenc/ * Minor changes to the video_delogo_func() function. Use $sourcetype, $device, $vid and $MPLAYEROPTS variables. Also use -nosound in MPlayer * Improved the mkvtags file. Escape special characters like &, <, > and " in the Title field * Mon Oct 10 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.4.1 * Introduced two new variables in the config file, DEFAULT_VID_BITRATE and DEFAULT_AUD_CODEC. The first one sets the default video bitrate or CRF/QP value while the second one can be used to set a default audio codec. This change updates the config file to version 20 * Fixed a typo in man page * Sun Aug 20 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.4.0 * Disable mbtree in multipass mode to prevent segfaulting MEncoder due to differences in frames amount in the passlog file. Disabling mbtree reduces quality but saves us a crash in MEncoder * Notify the user that the script does not support AAC in AVI anymore. Also exit if user has not selected any of the other supported containers * Mon Aug 08 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.9 * Bugfix: selecting the x264 internal denoiser does nothing due to missing $nr variable in the MEncoder options * Sat Jul 23 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.8 * Update the mq, nq, hq, vhq, ehq, uhq and ihq presets. Increase subme by 1. For the ihq preset, this means that it uses subme 11 now which requires latest x264 from git * Sun May 15 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.7 * Removed the ssim and psnr options from the presets. Should only be used for benchmarking * Sun Apr 04 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.6 * Fixed the subtitles function which got broken when the get_selection_func() function got introduced * Tue Mar 29 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.5 * Added support for setting the crop rounding value * Wed Mar 09 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.4 * Fix option 4 and 5 of the video_deblock_func() function. Wrong vars used * Mon Feb 21 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.3 * Fixed a bug in directory batch mode were wrong conditional was used to check for the DEFOUTPUT variable * Display which file is currently being processed in batch mode * Check only for files while in batch mode * Do not exit if user types an incorrect answer to y/n questions. Instead, ask the question again. Patch by Jan-Hendrik Peters and friends * Sat Jan 08 2011 Grozdan Nikolov <neutrino8@gmail.com> 9.3.2 * Use -demuxer lavf when trying to get the video length for bitrate calculation for a target file size. Should be more reliable on M2TS/TS files * Add support for the delogo filter. Patch by Haiko Michelfeit <haiko AT zsyndikat DOT org> Config file version is bumped to 19 * Updated copyright dates * Sun Dec 05 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.3.1 * Fix for the custom preset (cp) option * Fri Nov 26 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.3.0 * Remove double $HOME variable in the -scan option * Fri Oct 29 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.9 * Fix typo in the backup_file_func(): exisiting -> existing * Workaround multichan FAAC encoding. FAAC somehow does not like multichan PCM from MPlayer but it does if one treats it as raw using -P in FAAC. Nero/FLAC/Vorbis have no issues, though. Go figure * Added support for setting subtitle codepage during hardcoding of external subs * Added support for the audio equalizer filter. This updates the config file version to 18 * Removed 'time' requirement * Thu Sep 16 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.8 * Workaround mencoder stupidity. With recent versions of mencoder that have subs enabled by default (who came up with that great idea?), in case the user selects to dump a sub for importing into mkv/mp4, during multipass encoding the first sub will always get hardcoded due to missing -nosub option in the 2nd and 3rd pass code. This is only valid for multipass encodes so people using one pass modes (-1p, -qp or -crf) are safe. * Wed Sep 15 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.7 * Small update to the -scan option. Just check if input file is there, regardless if user provides the full path or not * Enable trellis in some presets that use CAVLC * Mon Aug 23 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.6 * Fixed a syntax error in the iphq preset * Sun Aug 22 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.5 * Update QuickTime & iPhone presets. Patch by gongloo * Wed Jul 21 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.4 * Typo fix in the display_quality_preset_func(); verslow -> veryslow. As this is an informative function, it does not affect the encoding configuration * Force -nosub option in case subtitles are skipped. This is to prevent auto-loading of subs * Fri Jun 25 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.3 * Added support for x264's preset, tune and profile options. This adds two additional optional args [-t (for tune) and -pf (for profile)] which can only be used with an x264 preset, not with the built-in script presets. If used with those, these args will be ignored. Examples on how to use x264 presets (which is also explained in the -help option) h264enc -crf -p slow h264enc -crf -p slow -t film h264enc -crf -p slow -pf main h264enc -crf -p slow -t film -pf high One can also switch the -t and -pf options, eg: h264enc -crf -p slow -pf high -t film * Updated the man page * Sat May 15 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.2 * Small bugfix in the get_devices_func() function; script exits when user hits enter to accept default device * Remove AVI menu entry as supported container when using FAAC for audio encoding * Thu Apr 29 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.1 * Reworked a bit the audio channels decode/output function. This function also got renamed from audio_channels_func() to audio_channels_decode_func() * Added support for the audio channels filter which can be used to add/remove/route channels This updates the config file to version 17 and adds variable ALLOW_AUD_CHANNELS * Bugfix: audio filters were not inserted when doing 1-pass encodes * Sat Apr 24 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.2.0 * Switch to using external FAAC encoder to work around an issue in mkvmerge where it flags AAC audio taken from an AVI as being Main profile regardless if LC profile is used for encoding or not. Problem noticed & reported by benpro. This updates the config file to version 16 and requires FAAC to be installed. * Same small cleanups * Updated the man page * Sun Mar 28 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.9 * Replaced sed with awk for checking available disk space. Should work better on FreeBSD systems. Patch by ennob from doom9 * Updated interlace options and presets to support the latest x264 from git. Note that due to these changes, h264enc's presets are incompatible with older x264 versions so please upgrade to latest x264 from git! * Small update to the preset.cfg file * Thu Mar 18 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.8 * Small bugfix: keyint and keyint_min weren't passed on to MEncoder when using some presets * Tue Mar 16 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.7 * Space escaped some previously missed variables * Use one variable in the presets (x264params) for all MEncoder x264 encoding options. Reduces some code and simplifies things a bit * Updated the preset.cfg file to support the "one variable for all x264 encoder opts" Note: those using custom preset files for encoding should read the preset.cfg file in the doc dir and adapt their existing preset files to be compatible with the changes. Previous older custom presets written by users will not work with this and future versions of h264enc! * Thu Feb 18 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.6 * Added new veriable 'DEFOUTPUT' to the config file which can be used to set a default output directory. This updates the config to version 15 * Modified the set_output_filename_func() function to support the above variable. - If the DEFOUTPUT variable is empty, user can either provide just the output name for the encode (in this case the script assumes $HOME as output dir), or the full path and output name, which in this case the script will create the output dir if it's not present or will do a write test when the dir is present to see if it's writable by the user. If creation of output dir or the write test fails, the script exits with a notice. - If the DEFOUTPUT variable contains a custom output dir, the script will test for it and create it if it's not present. If creation fails, the script exits with a notice. If the dir is present, the script will do a write test to see if the custom dir is writable. If not, the script exits with a notice. - The DEFOUTPUT variable can be overwritten on the command line. This means that if user has set a custom output dir in the DEFOUTPUT variable but provides a path when asked on the command line, that path will be used instead of the one in the DEFOUTPUT variable. The script then will either check and create the provided output dir on the command line (if that dir is not present) or will do a write test if the dir is present. Upon failure of creation or write test, the script exits with a notice. If no path is provided on the command line but only the output name for the encode, the script will use the one set in the DEFOUTPUT variable. * Sat Jan 30 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.5 * Reduced duplication in the audio encode exporting code by moving it inside functions * Reduced duplication in the MKV/MP4/TS/OGM exporting code by moving it inside functions * Reduced duplication in the code that prints some information before encoding starts * Various minor code improvements * Thu Jan 21 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.4 * Set default H.264 level to 'auto' and also accept integer numbers as levels in addition to accepting fixed point ones, ie both 41 and 4.1 are now accepted as valid levels * Renamed the rmconf() function to rmtemp() * Moved creation of temp dir, the interrupt_func() and rmtemp() functions at the beginning of the script * Fixed a bug in the DVD part of the -scan option where lsdvd doesn't get a valid device passed. Bug was introduced due to changes in the new get_devices_func() function * Reduced duplication in the mencoder_opts() function * Various small code improvements * Tue Jan 19 2010 Grozdan Nikolov <neutrino8@gmail.com> 9.1.3 * Made the TEMPDIR variable escape spaces in directory names * Small update to the mkvtags_func() function * Removed the -a52drc option for AC3 encoding * Added new x264 intra_refresh option to the script and the preset.cfg file * Added two new variables, DVD_DEVICE and CDROM_DEVICE, to the config file where user can set a default block device to encode from. This updates the config file to version 14 * Merged the get_dvd_devices_func() and get_vcd_devices_func() functions into a new one called get_devices_func() * Wed Dec 23 2009 Grozdan Nikolov <neutrino8@gmail.com> * Fixed a severe bug that can cause in some cases severe data loss when using a custom temp directory. It manifests itself when using a 'top' directory as custom temp directory such as a partition mount point or even the user's home directory. In such cases, the top directory will be deleted upon script termination or when encoding finishes, resulting in possible massive data loss due to rm -rf $TEMPDIR if TEMPDIR was set to, for example, /home/username or points to a mount point or another directory that may be important to the user. From now on, always use a job<pid> directory inside the one set in the TEMPDIR variable so it'll only delete the job<pid> directory and not its parent one, minimizing possibility of a data loss disaster * Set nomixed_refs for the iphq/iphhq presets * Thu Dec 10 2009 Grozdan Nikolov <neutrino8@gmail.com> * Disabled weightp for the AppleTV presets * Added new option sliced_threads present in latest x264 from git * Enabled b_pyramid for some presets that use mbtree as it now works with mbtree * Updated the preset.cfg file. Added sliced_threads option * Changed all video ALLOW_* variables in the config file to ALLOW_VID_* * When using dd to dump a DVD to an ISO, use options noerror,sync and a bs size of 2048 * Added support for sending mails. This requires the 'mailx' program and a valid .mailrc file in the home directory. Mail notification can be enabled in the config file of h264enc which also offers an example of a gmail setting for .mailrc * Bumped config file version to 13 * Updated copyright dates * Mon Nov 09 2009 Grozdan Nikolov <neutrino8@gmail.com> * Implemented a simple telecine detector for NTSC DVDs. Currently it's a dumb solution which can't distinguish between hard telecine and interlacing but it's enough to detect soft telecine and mixed progressive/telecine content which is more common * Simplified the FPS detection code * Update to all presets: added new weightp x264 option. This requires latest x264 revision from git * Updated the preset.cfg file. Added weightp option * Small general code improvements and cosmetics * Wed Nov 04 2009 Grozdan Nikolov <neutrino8@gmail.com> * Replaced a few if conditionals with case statements in the neroaac_audio_func() function * Sed a comma at the end of resolution detection in case we're dealing with TS files. The default TS demuxer in MPlayer has a comma at the end of the resolution info which results in errorneous behavior in the bc calculation * Simplified the resolution detection code * Some small cleanups * Mon Oct 19 2009 Grozdan Nikolov <neutrino8@gmail.com> * Force stereo audio for Nero HE-AACv2 as it doesn't support anything else, thus it results in failure if user tries to encode with more than two channels. This updates the audio_channels_func() function and also adds a small new independent one called neroaac_hev2_func() which only sets the channels to two if the channels array variables are empty, as is the case when the user did not set the channels * Small improvements to the ABR/VBR default audio bitrates for the neroAacEnc encoder. Base the default bitrates on the chosen AAC profile, i.e. if user chooses HE-AACv1, default bitrate will be 55 kbps or in case of quality-based VBR encoding a value of 0.22. For LC-AAC and HE-AACv2, default bitrates and quality values will be 96 kbps or 0.35 and 25 kbps or 0.11, respectively. Note that this assumes the input audio is stereo so if it's anything else than that, it's up to the user to decide on bitrates or quality values * Set default to a capital letter in questions where one needs to answer with y or n * Update to all presets: updated the b_pyramid option to use the new args none/strict/normal present in latest x264 revision. Note that this requires both latest MPlayer from SVN and latest x264 revision from git * Small b_pyramid update to the preset.cfg file * Sat Oct 17 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added new function video_subtitles_align_func() for subtitle alignment control. Requested by blaz on doom9.org forum. * Added new x264 option 'constrained_intra' to the preset.cfg file. * Added detection of VFR content (1000 fps as reported by MPlayer). * Added X264_VERSION and MKVMERGE_VERSION entries to the mkvtags_func() function. * Simplified a bit the audio exporting code for the first track. * Thu Sep 24 2009 Grozdan Nikolov <neutrino8@gmail.com> * MP3 (MPEG1 Layer 3) only supports sample frequencies of 32, 44.1 and 48 kHz so restrict to those only in the audio_resample_func() function * Set default for the pp7 deblocker to 3 * Fixed example typo in the DVD chapters code * Insert the ilpack filter before the scaler to correctly align chroma channels when preserving interlacing * Added AUDIO_CODEC_TRACK[1|2|3], AUDIO_LANGUAGE_TRACK[1|2|3] and H264ENC_PARAMETERS entries to the mkvtags_func() function * Enabled adaptive transform for the AppleTV HQ preset (atvhq) * Improved checking the availability of block devices * Added option 'global_header' to the preset.cfg file * Wed Sep 16 2009 Grozdan Nikolov <neutrino8@gmail.com> * Small bugfix: setting the H.264 level for the fghq preset wasn't possible * Small bugfix: the counter in set_output_filename_func() didn't increase itself * Added SOURCE, VIDEO_FILTERS, AUDIO_FILTERS_TRACK[1|2|3], ENCODER and X264_PARAMETERS entries to the mkvtags_func() function * Mon Sep 14 2009 Grozdan Nikolov <neutrino8@gmail.com> * Use only lowercase words in all case statements that deal with the input source * Some small improvements to the exit info in the audio code * Placed the -passlogfile option inside the PASSLOG variable * Set psy_rd to 0.3 for the Anime presets * Allow setting the H.264 level for the PC presets to "auto" so libx264 will decide itself which level to use based on options and resolution used * Added support for 2-pass Nero AAC audio encoding. Note that 2-pass is only supported by ABR/CBR encoding and ensures that the output quality is constant (like VBR) while also ensuring that a specified output bitrate is achieved (like CBR). Requested by punlo on doom9.org * Sun Sep 06 2009 Grozdan Nikolov <neutrino8@gmail.com> * Fixed a typo in the man page, MEnocder -> MEncoder * Small improvement to how the MKV XML tagging file gets exported. Also improved the XML formatting and added COMMENT string with text "Tagged by h264enc $version" * Added comment tag for MP4 and OGM with the same text as above * Small update to the video_deinterlace_func() function's menu * Add comment header with dates to batch files * Fri Sep 04 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added new option sync_lookahead available in latest x264 git and updated the preset.cfg file * Added support for the noise video filter. This change updates the config file to version 12. Also, encoding priority now defaults to a nice value of 10 in the config file * Moved out the code which checks and backups/renames a file if it has the same name as the output provided by the user to a separate function called backup_file_func() and also improved it so that if there's already an existing backup file, the new one will increase its count number by one thus there's no more overwriting being done anymore. The same thing applies to existing chapter files and DVD subs * Added support for Year and Genre metadata tagging for the MKV/MP4/OGM containers. For MKV, the genre and year is set globally using an automatically generated XML file. MP4 uses the iTunes tagging and OGM the comment space * Updated the man page * Tue Sep 01 2009 Grozdan Nikolov <neutrino8@gmail.com> * Simplified the audio_channels_func() function a bit * Merged the QP and CRF settings * Increased rc_lookahead a bit for the ehq, uhq and ihq presets * Improved detection of DVD audio language codes. We now specifically grep for the language word and then print the 2nd positional which gives us the language code. It works more reliably if the DVD does not report its language code for the audio track(s) so if this is the case, we fall back to undefined language. The previous code fails in such cases due to the printing of the 8th positional which will print the "aid:" part when there's no language code after the "language:" word, resulting in MKV/MP4 muxing failures. Reported by WalterK from doom9.org * Moved the code that deals with DVD subs/cover files/metadata info/chapters and external subs for the MP4 container before its audio code * Added slicing to the Blu-ray and AVCHD presets. It increases compliancy with the Blu-ray specs. Slicing is only available in the latest x264 from git so please upgrade if you intend to use the Blu-ray/AVCHD presets * Added new options 'slices', 'slice_max_size' and 'slice_max_mbs' to the preset.cfg file * Fixed chapters import for the OGM container. Missing '@' before the chapters input file results in the file not being imported * Added support for audio language metadata info for the OGM container * Small improvements to how chapters information is added to the output file name * Sat Aug 15 2009 Grozdan Nikolov <neutrino8@gmail.com> * Renamed presets f9 and f9hq to fl and flhq * Added new preset 'fghq' specifically optimized for preserving film grain * Removed duplicate videofilters variable. This removes the check for the tfields filter as now deinterlacing will always be done after cropping (which also speeds up things a bit) so the crop filter will never complain about crop area being outside of the original if tfields is used. It also reduces filters maintenance a bit * Turn soft-clipping on in the volume audio filter * Use aq_mode=1 for presets that have mbtree enabled as it usually does better on fades than aq_mode=2 * Updated the man page * Tue Aug 11 2009 Grozdan Nikolov <neutrino8@gmail.com> * Reduced the amount of if conditional iterations for setting the scaler interlace variable * Print full path of the output file(s) at the end of encoding * 10L: forgot to enable MB tree for the anihq preset * Replaced variable CONFIGDIR with TEMPDIR. This change updates the config file to version 11 * Fixed some spacings issues by moving around some echo's * Simplified the sample encoding code. Reduced some code duplication * Upped psy_rd from 0.6 to 0.8 * Fri Aug 07 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added support for the audio panning filter. This change also updates the config file to version 10 * Simplifications to the audio_filters_func() and audio_filters_var_func() functions * Moved the audio filters functions after the audio codec ones * Fixed a bug in the audio_channels_func() function for the AAC codec. If user just hits return to accept the default AAC codec, the channels function was not called due to missing "" in the first case statement of that function * Enabled MB tree (macroblock tree ratecontrol) for the high quality presets and disabled b_pyramid for presets that have mbtree enabled as it currently doesn't support it. Note that mbtree produces a large passlog file when ran in 2-pass mode but can increase quality anywhere between 2-70%, depending on the content. mbtree is only available in latest x264 git so please upgrade * Added new options mbtree, rc_lookahead and nopsy to the preset.cfg file * Sat Aug 01 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added new option -mfr which calculates the maximum allowed frame references within DPB (Decoded Picture Buffer) limits for different H.264 levels and resolutions * Call the track_echo_func() function inside the select_audio_codec_func() one. Removes pointless duplication * Don't call mplayer twice in the 2nd/3rd audio track code just to get the audio codec. Also removed a pointless case statement * Allow users to set the H.264 level when using the standard PC presets * Fixed a few typos in the preset.cfg file * Updated the man page * Thu Jul 30 2009 Grozdan Nikolov <neutrino8@gmail.com> * Increased subq to 10 (QP-RD) for the IHQ preset. Requires latest x264 from git. Also lowered frameref from 16 to 8 and bframes from 10 to 7 * Add example on how to encode only specific DVD chapters. Some people keep bugging me about this while it's actually very simple * Fri Jul 24 2009 Grozdan Nikolov <neutrino8@gmail.com> * Switched to the new Auto-variance AQ (aq_mode=2) for all presets. This requires latest x264 revision from git so please upgrade! * Decreased frame references for all iPod presets to 1 and increased subq to 8 for the HQ iPod presets * Minor improvments to the set_output_filename_func() function * Merged the audio code of the portable device presets. Moderately reduces code duplication in the audio functions calling code * Added two new presets (ag1 and ag1hq) for Android G1 devices. This brings the total presets count to 60 * Added support for the new gradfun debanding video filter. Although mostly recommended for playback due to the fact that encoding tends to bring back banding, it can be useful to deband input sources which show pretty bad and very noticable banding effects before passing the content to the encoder. The gradfun filter is only available in MPlayer SVN. This also adds a new variable ALLOW_DEBAND to the config file where one can enable or disable this filter * Added a small while loop to the video_crop_func() function which will keep asking the user for new crop values until he's satisfied with them. Patch by elektronaut from Doom9.org * Added a new variable PRIORITY to the config file which can be used to set a global priority nice value for the encoding process. The values one can use are between (and including) -20 and 19. However, if the script detects that the variable has a negative nice value set and the script is being executed with regular user privileges, it will print a notice and exit. This change updates the config file to version 9 * Updated the man page * Wed Jul 08 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added detection for E-AC3 audio for stream copy and updated the MKV/TS muxing code to support it * Added new option -spr which calculates the Storage and Pixel Aspect Ratios (SAR/PAR) for various resolutions * Display the amount of chapters each DVD title has when scanning for titles * Display total pixels, SAR and PAR when scanning a file/vcd with the -scan option * Added --no-chapters mkvmerge option for audio files encoded by neroAacEnc so that chapters won't be copied over to the MKVs from these files * Small update to the install script * Updated the man page. Fix some small cosmetic issues, patch by Alessio Treglia * Wed Jul 01 2009 Grozdan Nikolov <neutrino8@gmail.com> * Fallback to undefined audio language in the AUDLANG[$i] variables if we detect unknown language from MPlayer's output * Added support for bitrate-based ABR Vorbis encoding in addition to quality-based VBR. ABR mode in Vorbis resembles quality-based VBR except the encoder averages a given nominal bitrate * Updated the Vorbis part of the video bitrate calculation code * Added new function ratio_and_pixels_func() which calculates and displays the Storage Aspect Ratio (SAR), Pixel Aspect Ratio (PAR) and total pixels from resolution * Bugfix for track 1 in the internal audio encoding code. If using aacplusenc to encode audio, the case statement had a wrong selection value (aac++ instead of aac+) resulting in displaying a failed message and forcing an exit even though the encoding may have succeeded * Simplifications to the internal audio encoding code which reduce code duplication * Small fixes to the video bitrate calculation code * Small tuning to the Blu-ray/AVCHD presets * Small cleanups * Fri Jun 26 2009 Grozdan Nikolov <neutrino8@gmail.com> * Set default audio codec for the Blu-ray/AVCHD presets to AC3 * Bugfix to the OGM muxing code. Second/third track were ignored when one selects AC3 audio * Added keyint, keyint_min, nr and interlaced variables to the custom preset skeleton file 'preset.cfg' * Moved the AACTYPE variable to the neroaac_audio_func() function and updated the specific parts that use it in the MKV/MP4 muxing code * Do not automatically detect audio sample rate in directory batch encoding mode. Only do it for single file/dvd/vcd encodings as in batch mode, detection will only print the sample rate of the first file but not the other files in the directory so this can mislead the user in thinking that all files in the directory have the sample rate reported by the script. It is possible to implement sample rate detection for all files but since we don't know how many files are in the directory, I do not want the user to see a full screen with sample rate info of each file if he deals with a directory with a few hundreds or more files in it * Disallow autocropping, if enabled in the config file, for directory batch encodings * Small reordering to the MP4 muxing code * Small update to the install script * Updated the man page * Wed Jun 24 2009 Grozdan Nikolov <neutrino8@gmail.com> * Removed audio filters for the 1st pass in 2-pass encoding and for the 1st & 2nd pass of a 3-pass encoding. They are useless here and it's something I've overlooked for a long time. Thanks to Mat Kanner for noticing and reporting * Some small changes to the way we pass FPS to MP4Box * Added support for MP4 hinting for RTP/RTSP sessions * Simplifications to the external subs importing code. Also fixed a bug in the MP4 subs importing code; missing -add option in the MP4SUBS variable will make MP4Box fail * Merged the MKV tagging code with the muxing one * Added support for detection of WMA audio for stream copy * Added support for per track audio codecs for DVD encodings. The user can now select if he wishes for each track a different audio codec. Mixing audio stream copy with compression codecs is also possible * Updated all relevant audio functions to support per track audio codecs * Updated the bitrate calculation code to support per track audio codecs * Updated the container muxing code to support the above audio changes * Mon Jun 22 2009 Grozdan Nikolov <neutrino8@gmail.com> * Small improvement to the MKV/MP4 tagging code: support audio tagging of single file encodes with audio stream copy * Use array variables ${SUBFILE[2] and ${SUBFILE[3] instead of ${OUTPUT%.*}_sub2 and ${OUTPUT%.*}_sub3 when dumping the second/third DVD subtitles * Simplified the MKV cover art importing code * Small improvements to video bitrate calculation with audio stream copy * Use only one named pipe for all tracks when encoding to neroAAC/AAC+/Vorbis/FLAC * Major audio code restructuring and partial rewrite. Converted virtually all audio code variables to array variables. This allows for easy extensibility and much less code duplication. It's very easy now to add as much audio tracks as one may want to the code with very little changes/updates needed to the containers code. Also the current changes may allow very easily to support different audio codecs per track in the future * Added support for a third DVD audio track * Updated the video bitrate calculation for target size to support the above audio changes * Converted most of the variables in the video_subtitles_func() function to arrays. This moderately reduces some code duplication * Updated the container muxing/tagging code to support the above audio changes * Use external flac encoder to encode to FLAC audio as doing it through mencoder is terribly broken. This updates the config file to version 8 and adds the 'flac' encoder as dependency * Set the default resampling filter to lavcresample as the other one gives problems when encoding to FLAC audio and resampling * Wed Jun 19 2009 Grozdan Nikolov <neutrino8@gmail.com> * Simplifications to the MKV tagging code which reduces some code duplication * Bugfix: FAAC acodec2 variable has wrong mpeg value. Must be mpeg=4 instead of mpeg4. This results in failure in encoding of the second audio track when one selects FAAC as encoder * Bugfix: FLAC audio was ignored for the second track due to missing value in the selection of the case statement * Added support for tagging of MKV files when doing a directory batch encoding * Replaced the IMPSUB1, IMPSUB2 and IMPSUB3 variables, used to import subs when input type is file/directory/vcd, by array variables EXTSUB[1], EXTSUB[2] and EXTSUB[3]. This allows for less code duplication as these array variables are shared by all input types (including DVD) and thus we only need to do a small loop and add their values if not empty to the MKVSUBS, MP4SUBS and OGMSUBS variables * Use as temp directory $HOME/.h264enc/job<PID> * Added new function audio_stream_copy_func() which will print a warning that audio stream copy in directory batch encoding mode is not recommended unless the user is certain that the files have a supported audio codec by the MKV/MP4/OGM/TS containers * Group audio filters under a submenu similar to how the video filters are grouped * Some small cleanups * Wed Jun 17 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added support for per track audio bitrate for DVD encodings * Added support for per track audio normalization and volume adjustments for DVD encodings. Updated functions audio_volnorm_func() and audio_volume_func() * Added support for per track audio resampling for DVD encodings. Updated functions audio_resample_filters_func() and audio_resample_func() * Updated the video bitrate calculation code to support the above audio changes * Bugfix for the qt/bd/avchd presets: audio filters were not called for these presets * Added support for per track AAC profile settings (LC/HE/HEv2) when using the neroAacEnc audio encoder * Small modifications to the MKV/MP4 tagging and muxing code to support the per track neroAacEnc AAC profiles. This also includes optimizations to the way the tagging code handles different AAC profiles. If LC profile is chosen, audio will be tagged as LC-AAC (along with channels info). For HE and HEv2, audio will be tagged as HE-AACv1 and HE-AACv2 (along with channels info) respectively * Moved the MKV tagging code inside the MKV muxing code * Converted the EXTSUB1, EXTSUB2 and EXTSUB3 variables, used to import external DVD subs, to arrays so we can easily check different files for their file extensions * Only allow SRT subs as import into OGM. If another subs format is provided, the subs will be skipped. For MP4, do not allow ASS/SSA subs since it's not supported yet by MP4Box. For MKV, do not allow SUP and TTXT subs * Mon Jun 15 2009 Grozdan Nikolov <neutrino8@gmail.com> * Update to the video_subtitles_func() function: for DVD encodings, added support for importing up to three external subtitles into MKV/MP4/OGM. Also added support for hardcoding an external subtitle into the movie * Updated the MKV/MP4/OGM muxing code to support imports of external subtitles * Increased Psy RD from 0.5 to 0.6 for some presets * If dumping of the second and/or third DVD subtitle fails and user has selected to import the subs into MKV/MP4, force an exit since container conversion will fail as the muxing programs will complain about the missing subs. If no container conversion is chosen or user has chosen not to import the subs and dumping of subs fails, just continue since there's nothing critical in this case * Use mplayer -really-quiet option instead of redirection to /dev/null when dumping audio to a named pipe for neroAAC/Vorbis/AAC+ encoding * Some small updates to the man page * Updated the AUTHORS file * Fri Jun 12 2009 Grozdan Nikolov <neutrino8@gmail.com> * Replaced the --noaudio mkvmerge option with -A due to recent options changes in mkvmerge version 2.9.5. -A also works for older versions so nothing breaks here * Removed the check_outfile_func() function as its code has been added to the set_output_filename_func() function, which also has been improved * Added support for FLAC audio in MKV * Removed some code duplication in the MKV metadata tagging code * Tue Jun 09 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added support for adding jpeg/png cover art files to MKV/MP4 * Added audio language meta-info for MP4 and TS files * Improved audio language meta-info for MKV files. This also adds metadata info for the second audio track * Fixed a small bug: the --aac-is-sbr mkvmerge parameter should be set to 0:1 for the second audio track when using aacplusenc as encoder * Mon Jun 08 2009 Grozdan Nikolov <neutrino8@gmail.com> * Add iTunes video title name to MP4 files * Sun May 24 2009 Grozdan Nikolov <neutrino8@gmail.com> * Use the same name for the log file as the output file name * Force using the libmpeg2 decoder when encoding DVDs/VCDs (works slightly better in specific cases compared to ffmpeg2) * Added support for IVTC 59.940 -> 23.976 fps * Some small code cosmetics * Tue May 12 2009 Grozdan Nikolov <neutrino8@gmail.com> * Added deinterlace combinations of Yadif + linear blend, linear interpolation, cubic interpolation, median deint, ffmpeg deint and lowpass 5 * Cosmetics to the help menu * Added global audio function audio_filters_func() for calling the resample, volume normalizing and volume filters * Added 16 new variables to the config file for enabling/disabling of specific audio/video filters and containers: ALLOW_FPS_CONVERSION, ALLOW_SCALER_TUNING, ALLOW_DSIZE, ALLOW_EXPAND, ALLOW_COLORSPACE, ALLOW_ASPECT, ALLOW_AUD_RESAMPLE, ALLOW_AUD_NORMALIZE, ALLOW_AUD_VOLUME, ALLOW_MKV_MUXING, ALLOW_MP4_MUXING, ALLOW_TS_MUXING, ALLOW_OGM_MUXING, ALLOW_SAMPLE_ENCODING, ALLOW_SCAN_MULTIPLE_VIDSTREAMS and ALLOW_SCAN_MULTIPLE_AUDSTREAMS, the last two are only effective on file and directory batch encodings * Updated the man page * Thu May 7 2009 Grozdan Nikolov <neutrino8@gmail.com> * Automatically add the shebang line to batch files and make them executable * Added new variable ALLOW_AUTOCROP to the config file which allows the user to enable or disable automatic cropping * Added MP3 presets and updated target file size code to support them (requested by Rogério Brito) * Some minor adjustments to the hq, vhq, ehq, uhq and ihq presets; decrease b-frames by one * Wed Apr 29 2009 Grozdan Nikolov <neutrino8@gmail.com> - Small bugfix: video filters variables in the config file were not respected when one chooses to encode VCDs. - Add video title meta-data for MKV and OGM when doing directory batch encodings * Tue Apr 28 2009 Grozdan Nikolov <neutrino8@gmail.com> * Optimize some variables by replacing piping to sed with VARIABLE1="${VARIABLE2%.*}.ext" * Move out the built-in -loop 1 mplayer option to the config file's MPLAYEROPTS variable * Add support for enabling/disabling specific pre/postprocessing filters in the config file. This adds 7 new variables to the config file where the user can either enable to ask questions about a specific filter or disable a specific variable, thus skipping questions about the filter * Moved the video filters code to a new function called video_filters_func(). This also reduces a bit of code duplication * Add a new option -e which allows the user to edit the config file directly from within the terminal. This adds a new variable EDITOR to the config file where the user can set his preferred text editor (defaults to nano) * Silence possible dvdxchap warnings * Updated the man page * Thu Apr 26 2009 Grozdan Nikolov <neutrino8@gmail.com> * Bugfix: missing 's' in the sed expression of the MP4OUT variable. This results in missing output file and will fail when one tries to remux to mp4
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.