Releases: lisamelton/video_transcoding
0.20.1
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Sunday, October 21, 2018
- Modify
transcode-video
to no longer validate--filter
option arguments against a fixed list of names. This will prevent annoying failures whenever the HandBrake team adds a new filter.
0.20.0
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Monday, June 18, 2018
- Now require
HandBrakeCLI
version 1.0.0 or later. Not only does this change make for easier testing, but it allows removal of many capability-detection hacks needed to support older versions. My thanks again to all the users who provided positive feedback about this online! - Relax frame rate control in
transcode-video
so that the options--rate=30
and--pfr
are no longer passed toHandBrakeCLI
for most non-DVD videos. This means that the peak frame rate will no longer be limited to30
FPS, allowing camera-generated videos to retain their original frame rates. However, the old behavior can be restored for those videos by adding--limit-rate 30
to yourtranscode-video
command line. - Modify
transcode-video
to no longer pass--encoder-preset=medium
toHandBrakeCLI
since that's the default behavior anyway. However, adding--preset medium
to yourtranscode-video
command line still does so. - Modify
transcode-video
to no longer pass a named audio encoder toHandBrakeCLI
in order to select AAC, i.e.ca_aac
orav_aac
, since AAC is the default audio format anyway. However, adding the--aac-encoder
option to yourtranscode-video
command line still allows an explicit choice. - Modify
transcode-video
to substitute "analyse" for the x264 option called "partitions" when invoked with the--quick
or--veryquick
options. This is done to better match the archaic internal name used by HandBrake. It has no effect on actual transcoding behavior. - Add
-n
as a shortcut alias for the--dry-run
option intranscode-video
. This is the same shortcut alias used inrsync
andmake
. - Expand the "Explanation" section of the "README" document to describe both the special, or default, ratecontrol system and the average bitrate (ABR) ratecontrol system, enabled via the
--abr
option. - Add clarification to the "README" document that stereo AAC tracks can also include surround audio information in matrix-encoded Dolby Pro Logic II format.
- Fix spelling of "suppress" in the
--help
output ofquery-handbrake-log
. Thanks, @chrisridd! Via #205.
0.19.0
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Saturday, January 27, 2018
- Add support for Dolby Digital Plus audio format, aka Enhanced AC-3, to
transcode-video
andconvert-video
with a new--ac3-encoder
option for each tool. Also, extend the--ac3-bitrate
and--pass-ac3-bitrate
options intranscode-video
to support higher bitrates, 768 and 1536 Kbps, available to Enhanced AC-3. Via #26.- WARNING: Dolby Digital Plus output is currently NOT COMPATIBLE with the MP4 file format when using
transcode-video
due to a limitation inHandBrakeCLI
. This means that adding both--mp4
and--ac3-encoder eac3
to your command line will fail with the error "incompatible encoder 'eac3' for muxer 'av_mp4'
." - Oddly enough,
ffmpeg
doesn't have this limitation so you'll be able to useconvert-video --ac3-encoder eac3
to convert your MKV files into MP4 format without any problems. Go figure.
- WARNING: Dolby Digital Plus output is currently NOT COMPATIBLE with the MP4 file format when using
- Remove "Can you add support for Enhanced AC-3 audio?" from the "FAQ" section of the "README" document, for obvious reasons. :)
- Add
--reverse-double-order
option totranscode-video
to reverse order of double-width audio output tracks. Thanks, @samhutchins! Via #184. - Fix a bug in
convert-video
where the number of audio channels was wrong when tracks had to be transcoded. This was most noticeable for AAC output and appears due to a change in the behavior offfmpeg
. - Append
.inspect
to all Hash objects used asConsole.debug
arguments. Apparently a change in the way Ruby works was preventing these objects from being printed, although I'm unsure about the specific version of Ruby in which this occurred. - Remove superfluous quotes in the
--help
output oftranscode-video
. - Remove the deprecated
--cvbr
and--vbr
options intranscode-video
and--player
option indetect-crop
. - Revise my usage in the "FAQ" section of the "README" document since I no longer choose the default settings with
transcode-video
. - Re-order a few misplaced lines in the "History" section of the "README" document.
- Update all copyright notices to the year 2018.
0.18.0
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Saturday, December 2, 2017
- Improve the average bitrate (ABR) ratecontrol system provided by the
--abr
option intranscode-video
. Via #179.- Implement it with a maximum bitrate constraint to raise its overal quality level and guarantee that it will not generate any
VBV underflow
warnings like the default ratecontrol system. - Signal Hypothetical Reference Decoder (HRD) information, meaning that the VBV maximum bitrate value is added as metadata to the output video, something you should not do when using the default ratecontrol system.
- Move it from the "Advanced" to the "Quality" section in the
--help
output and describe its quality output as "different" rather than "lower" compared to the default ratecontrol system. - Also remove the no-longer valid characterization of ABR in the "Explanation" section of the "README" document.
- Implement it with a maximum bitrate constraint to raise its overal quality level and guarantee that it will not generate any
- Deprecate the poorly named
--cvbr
and--vbr
options intranscode-video
and remove them from the--help
output.- The ratecontrol system implemented by the
--cvbr
option was always experimental. After much testing, it was found to be noticeably lower in quality compared to the default and to the new ABR implementation. - The ratecontrol system implemented by the
--vbr
option was only ever intended for comparison testing. And probably used only by myself.
- The ratecontrol system implemented by the
- Modify
transcode-video
to no longer re-calculatevbv-bufsize
based on any user input value forvbv-maxrate
. Instead, always calculate bothvbv-maxrate
andvbv-bufsize
based on the target video bitrate. - Deprecate the
--player
option indetect-crop
and remove it from the--help
output. - Fix failure of subtitle detection for HandBrake nightly builds. Language detection for subtitles in disc image directory input and individual closed caption tracks may still be wrong but will not be fixed at this time. Via #172.
- Mention Nick Wronski's nifty batch-processing wrapper for
transcode-video
in the the "README" document. Thanks, @JMoVS! Via #180.
0.17.4
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Sunday, September 10, 2017
- Force text output from
mp4track
into UTF-8 binary format to ensure correct parsing of that data. Thanks, @DavidNielsen! Via #152.
0.17.3
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Sunday, May 14, 2017
HandBrakeCLI
versions 1.0 and later changed the default frame rate mode from "constant" to "peak-limited" when a rate is specified. This new behavior inHandBrakeCLI
requires two significant changes intranscode-video
:- Fix a bug where the
--force-rate
option failed to force a constant frame rate. This bug made it behave essentially the same at the--limit-rate
option. - Fix a bug where a constant frame rate was not forced for inputs containing MPEG-2 video. This bug affected the transcoding of all DVDs but very few Blu-ray Discs. The good news is that this bug probably didn't cause visual problems since the new default peak-limited implementation in
HandBrakeCLI
versions 1.0 and later worked like a constant frame rate most of the time.
- Fix a bug where the
- Modify
convert-video
to use binary file mode when reading and writing console and log output fromffmpeg
. This eliminates redundant information and "console spew" on Windows by suppressing the EOL <-> CRLF conversion. Thanks, @samhutchins! Via #147. - Also modify
transcode-video
andconvert-video
to use binary file mode when processing console I/O frommkvpropedit
andmp4track
to eliminate that same "console spew" on Windows. - Modify
detect-crop
to escape preview commands forcmd.exe
and PowerShell on Windows in a manner that's still compatible with Bourne and Z shells. Also mention in the "Usingdetect-crop
" section of the "README" document that path names within the sample commands are not escaped properly when usingcmd.exe
or PowerShell on Windows and thatbash.exe
can be used as a workaround. Via #146. - Modify
transcode-video
to acceptx264_10bit
,x265_10bit
,x265_12bit
andx265_16bit
as supported encoders while also adjusting the encoder profile for these variants. Via #143. - Modify
transcode-video
to no longer set the x264 encoder level if a frame rate has been requested higher than30
FPS. Via #141.
0.17.2
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Monday, April 3, 2017
0.17.1
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Wednesday, February 22, 2017
- Modify
transcode-video
to use binary file mode when reading and writing console and log output fromHandBrakeCLI
. This eliminates redundant information and "console spew" on Windows by suppressing the EOL <-> CRLF conversion. Thanks, @samhutchins! Via #130.
0.17.0
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Thursday, February 16, 2017
- Remove all dependencies on
mplayer
, via #120 and #123:- Modify
detect-crop
andtranscode-video
to useffmpeg
for crop detection instead ofmplayer
. - Modify
detect-crop
to usempv
, a free cross-platform media player, for optional crop preview instead ofmplayer
. - Add a
--player
option todetect-crop
somplayer
can still be used for crop preview commands. Warning: this feature will be deprecated soon.
- Modify
- Update the "README" document to:
- Remove any mention of
mplayer
and listmpv
as an optional package. - Fix typo in version 0.16.0 release information. Thanks, @samhutchins!
- Remove any mention of
0.16.0
This version was originally tagged and released on the date below. These notes were added on GitHub much later so the creation date won't match.
Friday, January 20, 2017
- Add a
--cvbr
option totranscode-video
. This is essentially the same as the experimental option of the same name which was removed on February 25, 2016, but now it doesn't have a bitrate argument. It enables a simple constrained variable bitrate (CVBR) ratecontrol system, less constrained than the default, producing a more predictable output size while avoidingVBV underflow
warnings. Use it with--target big
for the best results. - Modify the
--abr
option intranscode-video
to no longer use a bitrate argument. Instead, it relies on the--target
option to control bitrate, just like the default ratecontrol system and the new--cvbr
option. So, passing a bitrate argument is now an error. But you should consider using--cvbr
instead of--abr
anyway since the former is almost always higher quality. - Remove the deprecated
--no-constrain
option fromdetect-crop
and the--no-constrain-crop
option fromtranscode-video
. - Modify
convert-video
to allow HEVC format video along with H.264. - Update the "README" document to:
- Revise and simplify the Windows installation instructions to point users at the fine work by @samhutchins and @JMoVS on documenting their two methods. Via #115.
- Revise the "Using
transcode-video
" section to correct out-of-date performance data about the--quick
option. - Revise the H.265 answer in the "FAQ" section with up-to-date information about the x265 video encoder. Via #118.