Log in

View Full Version : ffx264 & ffhevc for Linux/BSD


Pages : 1 [2] 3 4 5 6

microchip8
23rd August 2016, 13:14
ChangeLog for ffhevc 2.7.6 and ffx264 2.9.2

* Merged the AC3/EAC3 channel check
* Bumped up EAC3 default bitrate to 768 kbps
* Use none instead of metadata flag for disposition for subsequent subs/audio tracks

microchip8
1st September 2016, 23:42
ChangeLog for ffhevc 2.7.7 and ffx264 2.9.3

* Renamed config variable MAX_AUD_TRKS to MAX_AUD_TRACKS
* Removed -strict -2 option for AAC audio. It is no longer needed since about mid 2015

microchip8
2nd September 2016, 13:59
ChangeLog for ffhevc 2.7.8 and ffx264 2.9.4

* Added support for multipass encoding, to be activated with the new -m option
* Added support for calculation of video bitrate for target file size when using bitrate-based encoding
* Replaced some simple if conditionals with test cases
* Updated the man page and README file

microchip8
5th September 2016, 09:18
ChangeLog for ffhevc 2.7.9 and ffx264 2.9.5

* Improved crop detection
* Removed dependence on MPlayer
* Added support for encoding to PCM audio
* Use ffprobe directly instead of outputting to files
* Updated the man page and README file

microchip8
5th September 2016, 23:06
ChangeLog for ffhevc 2.8.0 and ffx264 2.9.6

* Replaced some simple if conditionals with test cases
* Don't encode audio during first pass of 2-pass mode
* Bugfix: fix audio copy
* Target file size calc does not work with FLAC, PCM or Copy so just skip it
* Reduced ffmpeg command line options duplication in the encoder_func() function

microchip8
6th September 2016, 13:51
ChangeLog for ffhevc 2.8.1 and ffx264 2.9.7

* Added support for the new vaguedenoiser filter. Requires latest ffmpeg from git
* Merged the mp3 audio code with the rest
* Auto-add a metadata comment
* Updated the README file

microchip8
9th September 2016, 12:00
ChangeLog for ffhevc 2.8.2 and ffx264 2.9.8

* Adaptive channel range and defaults based on audio codec
* Made metadata comment optional, allow to modify it and place it in the config file
* Some minor tweaks

microchip8
14th September 2016, 14:45
ChangeLog for ffhevc 2.8.3 and ffx264 2.9.9

* Removed stray, unneeded MPLAYERPARAMS from config file
* Don't set by default a color prim/matrix in the x264 options in the config file
* Added support for rotating with the transpose filter
* Support setting the color primaries/matrix/transfer

microchip8
18th September 2016, 17:18
ChangeLog for ffhevc 2.8.4

* Add undefined option to the color primaries and make it default
* Support asking for crop values if autocrop is disabled
* Made most audio/video filters optional by allowing to enable or disable a filter in the config file
* Use menu tables for the audio sample rates
* Cosmetics


ChangeLog for ffx264 3.0.0

* Add undefined option to the color primaries and make it default
* Support asking for crop values if autocrop is disabled
* Made most audio/video filters optional by allowing to enable or disable a filter in the config file
* Use menu tables for the audio sample rates
* Force threads to auto
* Cosmetics

microchip8
28th September 2016, 22:40
ChangeLog for ffhevc 2.8.5 and ffx264 3.0.1

* Added support for the atadenoise video filter

microchip8
1st October 2016, 23:28
ChangeLog for ffhevc 2.8.6 and ffx264 3.0.2

* Allow volume setting when normalize is used
* Cosmetics: add header title to the sample rate options
* Bump up default video bitrate for 1/2-pass mode and AAC/Opus/Vorbis bitrates
* Simplify atadenoise options

microchip8
5th October 2016, 23:21
ChangeLog for ffhevc 2.8.7 and ffx264 3.0.3

* Audio channel layout 6.1(back) -> 6.1 and 7.1(wide-side) -> 7.1
* Cosmetics: add rotate filter menu banner
* Support 180° video rotating

microchip8
11th October 2016, 20:07
ChangeLog for ffhevc 2.8.8 and ffx264 3.0.4

* Fix video rotation for 180°. Don't use transpose=0 and transpose=3 as they cancel each others out

microchip8
1st November 2016, 01:37
ChangeLog for ffhevc 2.8.9 and ffx264 3.0.5

* Added support for bobbing (deinterlace at double FPS)
* Cosmetics: add menu header to the Color Primaries option

microchip8
2nd November 2016, 20:36
ChangeLog for ffhevc 2.9.0 and ffx264 3.0.6

* Added support for motion compensation deinterlacing for both deinterlacing at original FPS and bobbing
* Use denoise var instead of denoiser for the denoise filters and rotate var instead of transpose for the transpose filter
* Added support for deblocking with the fspp filter. This bumps up the config file version to 22
* Update to the README file

microchip8
3rd November 2016, 16:25
ChangeLog for ffhevc 2.9.1 and ffx264 3.0.7

* Added support for interlace-aware encoding
* Added support for the spp, uspp and pp7 deblockers
* Support asking for software scaler during exec time
* Added new SCALE var to the config file to enable/disable support for software scaling. Bumps up the config file version to 27 (23 for ffx264)
* Do a test write to see if output directory is writable by the script executing user
* Updated the README file

microchip8
4th November 2016, 11:37
ChangeLog for ffhevc 2.9.2 and ffx264 3.0.8

* Bugfix: the scale variable was used twice for different things causing an overwrite of the scale filter parameters, which eventually results in ffmpeg complaining and exiting
* Added support for NTSC <-> NTSC and NTSC <-> PAL frame rate conversions
* New var in config file, VID_FPS_CONVERT, to enable/disable FPS conversion. Bumps up config file version to 28 (24 for ffx264)
* Moved the FPS detection code into its own function so it can be easily reused
* Minor cosmetics
* Updated the README file

microchip8
5th November 2016, 11:52
ChangeLog for ffhevc 2.9.3 and ffx264 3.0.9

* Use a single var, $ofps, to set the output FPS for both deinterlace bobbing and FPS conversion
* Use new $bob var to indicate that we do bobbing and use that var to disable FPS conversion
* Renamed $fp var in video_deinterlace_func() to $fpar
* Print a warning message that FPS conversion gets disabled if the user chooses audio copy
* Added support for the FDK-AAC audio codec. Requires ffmpeg to be compiled with libfdk-aac support
* Support FPS conversion with the 'fps' filter
* Some minor code optimizations

microchip8
6th November 2016, 10:47
ChangeLog for ffhevc 2.9.4 and ffx264 3.1.0

* Bugfix: resampling wasn't working for fdk-aac due to missing value in the case statement
* Check if output file exists and if so, move it to $file.old
* Use test directly instead of an if condition to set the audio filters
* Support bitrate calculations for target file size when doing audio copy
* Use fdk* in the case statements for easier typing
* Renamed variable astrm to astream for clarity
* Use [1-2]p in the case statements for passmodes instead of 1p|2p
* New function, video_field_parity_func(), to detect and report the interlace field order. Used by motion-compensation deinterlacing and interlaced encoding
* Detect and display audio sample rate in case resampling is chosen
* Improvements to the video_fps_func() function. Get the FPS value directly instead of outputting to a file and reading it

microchip8
7th November 2016, 17:16
ChangeLog for ffhevc 2.9.5 and ffx264 3.1.1

* Cosmetics in the code for deinterlacing
* Instead of skipping FPS conversion if the FPS can't be detected, ask the user to provide it
* Use single brackets instead of double ones in the nosound setup code
* Added license snippet at the top of the script
* Added support for outputting to additional container formats
* Do some checking on supported audio codecs for the supported containers
* Check specified container and warn and exit if it's not supported
* Support setting the FLAC compression level
* Break out of the if conditionals in the audio code and replace them with two case statements
* Update to the README file


Additional for ffx264

* Added h264_mp4toannexb flag in case we're outputting to the AVI container

microchip8
8th November 2016, 11:05
ChangeLog for ffhevc 2.9.6 and ffx264 3.1.2

* Added support for encoding to TrueHD audio. Requires a very recent ffmpeg version, preferably latest from git
* Some small improvements to the additional container output
* Moved the video_deinterlace_func() function inside the actual deinterlace code
* Update to the README file
* Update to the man page

microchip8
9th November 2016, 08:00
ChangeLog for ffhevc 2.9.7 and ffx264 3.1.3

* Renamed config var CON to CONFMT. Updates config file version to 29 (25 for ffx264)
* Reduced some duplication in the audio codec checks for the container formats
* Reduced some error message duplication when checking if an additional container supports an audio codec
* Rework to the additional container selection code
* Added color functions for the additional container conversion


Additional for ffhevc

* Added back support for the MOV container

microchip8
10th November 2016, 22:16
ChangeLog for ffhevc 2.9.8 and ffx264 3.1.4

* Check if name of input file matches that of output file and warn and exit. Requires the realpath utility
* Added support for the m2ts, mts, ts (and flv for ffx264) containers
* Merged the code that checks if an audio codec is supported by a container with that that checks for additional output containers. Removes code duplication and maintainability
* Update to the audio sample rates. Sync them with ffmpeg -h encoder=<encoder>
* Restrict TrueHD channels to 2, 5 and 6 as that's what the encoder currently supports
* Updated the README file

microchip8
12th November 2016, 11:50
ChangeLog for ffhevc 2.9.9 and ffx264 3.1.5

* Added support for importing external srt/ssa subtitles for the mkv, m2ts, mts and ts containers
* Moved the subtitle code into its own video_subtitles_func() function
* Added support for simultaneously copying subtitles from the input file and copying external ones
* Renamed variable SUBT to SUBNR for clarity
* Updated the README file and man page

microchip8
13th November 2016, 12:31
ChangeLog for ffhevc 3.0.0 and ffx264 3.1.6

* Added support for batch encoding mode, to be activated with the new -b option. It's used to encode directories with video files
* Renamed variable $mode to $encmode for clarity
* Reworked the input/output code
* Instead of relying on a config var to set the subtitles amount to support, ask the user each time to provide it. Makes the code less complex and easier to extend in the future. Bumps up config file version to 30
* Check if the X265PARAMS (X264PARAMS for ffx264) var is missing from config in case we're not using an x265/x264 preset
* Updated the man page


Additional for ffhevc

* Disabled strong-intra-smoothing in the default x265 options in the config file

microchip8
14th November 2016, 10:11
ChangeLog for ffhevc 3.0.1 and ffx264 3.1.7

* Set default amount of subtitles to 1 instead of exiting when no value is given
* Allow the user to choose the amount of audio tracks he wants at run time instead of requiring it to be set in the config file. This removes config file var MAX_AUD_TRACKS and bumps up version to 31 (27 for ffx264)
* Renamed array variables audmapval and submapval to audindex and subindex since we're not mapping but specifying the audio/sub index id with these vars
* Fixed a possible case where audio params weren't cleared in case the nosound option was chosen


Additional for ffhevc

* Removed an if conditional checking for MAX_SUBS which no longer is used

microchip8
16th November 2016, 09:55
ChangeLog for ffhevc 3.0.2 and ffx264 3.1.8

* Added support for 3-pass encoding
* Added support for setting a default audio codec in the config file. Bumps up config file version to 32 (28 for ffx264)
* Moved setting the video bitrate before the video filters
* More variables renamings and other small code tweaks
* Do some checking on duplicate entries when using additional containers and warn and exit
* Updated the man page

microchip8
18th November 2016, 02:15
ChangeLog for ffhevc 3.0.3 and ffx264 3.1.9

* Use process number instead of .old when renaming existing files
* Added support for detelecining (IVTC). Bumps up config file version to 33 (29 for ffx264)
* Minor improvements to the cropping code

microchip8
20th November 2016, 15:04
ChangeLog for ffhevc 3.0.4 and ffx264 3.2.0

* Moved checks for supported containers into its own function, check_container_func()
* Improvements to gathering information about the input file. Saves us piping to sed and in some cases piping to awk and tail
* Removed the NOSOUND option since the user can specify 0 for amount of audio tracks which equals to encoding with the NOSOUND option
* Placed both subcopy and subcpy variables into a single subparams variable. This also removes the NOSUBS variable
* Placed the video length detection code into its own function, video_length_func(), as it is used in two places so we can save writing the same stuff twice
* Instead of skipping bitrate calc for target file size in case we can't detect the video length, ask the user to provide it
* Removed install script and added a Makefile for installation
* Added new INSTALL file with install/uninstall instructions

microchip8
23rd November 2016, 16:23
ChangeLog for ffhevc 3.0.5 and ffx264 3.2.1

* Added support for FLAC audio in MP4. Requires a very recent ffmpeg version
* Added the $strict variable to the remuxing code
* Use the improved way of gathering info for the audio sample rate detection
* Added the ability to flag the first internal or external subtitle as default, when using the option for internal and external subtitle copying
* Added support for LD-AAC audio encoding with libfdk-aac
* Removed stderr to stdout redirection (2>&1) for some of the ffprobe lines. It is no longer needed

microchip8
2nd December 2016, 23:39
ChangeLog for ffhevc 3.0.6 and ffx264 3.2.2

* Merged the output code for the batch mode with that for single file input
* Fixed an issue where remuxing to MP4 may fail in case the user chooses FLAC audio
* Renamed variable $extracon to $remuxcon and $econ to $rcon
* Made strict option "global" so I won't have to worry about adding experimental audio codecs support in the future
* Clean ups to the FPS conversion menu

microchip8
4th January 2017, 13:58
ChangeLog for ffhevc 3.0.7 and ffx264 3.2.3

* Use readlink to get the full path to the cover art image. Fixes an issue when running in batch mode

microchip8
5th January 2017, 12:32
ChangeLog for ffhevc 3.0.8 and ffx264 3.2.4

* Support per-file auto-cropping when running in batch mode
* Use internally full paths for input and output
* Add a test case for output directory to the script that gets sourced for encoding

microchip8
6th January 2017, 11:48
ChangeLog for ffhevc 3.0.9 and ffx264 3.2.5

* Bugfix: default output directory wasn't made when running in batch mode
* Display found per-file crop values when running in batch mode

microchip8
8th January 2017, 12:21
ChangeLog for ffhevc 3.1.0 and ffx264 3.2.6

* Support SMPTE-2084 transfer characteristics
* Placed the video post-processing filters in their own sub-menu
* Some small changes to the FPS conversion code

microchip8
9th January 2017, 13:41
ChangeLog for ffhevc 3.1.1 and ffx264 3.2.7

* Fix a possible issue when detecting the FPS value that occurs with some files
* Expand directory path internally instead of exporting the dirname command to the file that gets sourced for encoding
* Use 'bc' for calculating the detected FPS value
* Only use fractions internally for FPS values. The user should be presented with the floating point value

microchip8
12th January 2017, 01:23
ChangeLog for ffhevc 3.1.2 and ffx264 3.2.8

* Added support for pixel format conversion
* Added support for colorspace conversion

microchip8
13th January 2017, 12:39
ChangeLog for ffhevc 3.1.3 and ffx264 3.2.9

* Support 50 <-> 60/59.940 FPS conversions
* Use upper-case words for the color primaries/transfers/matrices and pixel formats
* Support 4.0 audio channel layout in addition to Quad

microchip8
15th January 2017, 12:39
ChangeLog for ffhevc 3.1.4 and ffx264 3.3.0

* Support ALAC audio encoding
* Some small improvements to the audio code
* A few variable renamings, mostly in the case statements

microchip8
18th January 2017, 15:02
ChangeLog for ffhevc 3.1.5 and ffx264 3.3.1

* Check channel amount for the libfdk_aac encoder and warn and exit on 7 channels as it doesn't support it
* Use range=tv instead of range=mpeg for the color conversion filter
* Bugfix: return value of variable autocrop wasn't checked when running in batch mode resulting in always cropping the input files
* Bugfix in the $OUTPUT variable when running in batch mode
* Removed readlink from the batch mode variables as it's no longer needed

microchip8
20th January 2017, 14:35
ChangeLog for ffhevc 3.1.6 and ffx264 3.3.2

* Fixed a small issue in the output for batch mode

microchip8
24th January 2017, 17:16
ChangeLog for ffhevc 3.1.7 and ffx264 3.3.3

* Removed one of the OUTPUT variables for batch mode. It is no longer needed
* Rewrote the audio channel layout code. It is now based on per-codec encoder support
* Repositioned the audio channel checking code

microchip8
6th February 2017, 21:39
ChangeLog for ffhevc 3.1.9 and ffx264 3.3.5

* Support the framestep filter for FPS conversion
* Support halving the frame rate. Only supported for 50/59.940/60 FPS input

microchip8
22nd February 2017, 16:14
ChangeLog for ffhevc 3.2.0 and ffx264 3.3.6


* Support high FPS -> low FPS conversions
* Bugfix: missing options in FPS conversion menu

microchip8
6th March 2017, 22:28
ChangeLog for ffhevc 3.2.1

* Update audio compression level values
* Initial support for HDR VUI signaling

microchip8
18th March 2017, 22:56
ChangeLog for ffhevc 3.2.2 and ffx264 3.3.7

* Update audio compression level values (ffx264 only)
* Update colorspace entry for NTSC video
* Fixed bug in the video_colorspace_func() values

microchip8
28th March 2017, 20:01
ChangeLog for ffhevc 3.2.3

* Update to the default encoding options

microchip8
3rd April 2017, 20:01
ChangeLog for ffhevc 3.2.4 and ffx264 3.3.8

* Support setting the input/output color range

microchip8
13th May 2017, 19:00
ChangeLog for ffhevc 3.2.5 and ffx264 3.3.9

* Support accurate rounding for the software scalers
* Support full chroma interpolation for the software scalers
* Use the flags option of the scale option instead of -sws_flags to set scaler and its options

microchip8
14th May 2017, 10:33
ChangeLog for ffhevc 3.2.6 and ffx264 3.4.0

* Bugfix in the software scale code. Use an if conditional to check for an y/n answer