Releases: instructure/ruby-ffmpeg
Releases · instructure/ruby-ffmpeg
8.1.0-beta.1
Fixes:
- Correctly implement HLS specification for EXT-X-MEDIA and GROUP-ID.
8.1.0-beta
Improvements:
- Added comprehensive MPEG-DASH manifest parsing capabilities with the new
FFMPEG::DASH
module. - Added support for converting MPEG-DASH manifests to HLS (M3U8) playlists.
- Added support for configurable base URLs and segment queries in DASH manifests.
8.0.0
Improvements:
- Added support for retries in the
FFMPEG::Transcoder
class. This allows for more robust command
argument composing and thus more stable outputs.
Breaking Changes:
- The
FFMPEG::Transcoder#process!
method will now fail if the expected output files do not exist after
successful processing. This behaviour can be controled by passingchecks: []
to the transcoder
initializer. - The
FFMPEG::Status::ExitError
class has been renamed toFFMPEG::ExitError
. - The
FFMPEG::ExitError
class now holds a reference to theStringIO
output of the FFmpeg command
(before it contained theString
representation).
7.1.4
Fixes:
- Handle 0 for height when calculating display aspect ratio (ZeroDivisionError was raised before).
7.1.3
Fixes:
- Ensure consistent bit rates for all video representations in the built-in MPEG-DASH presets.
7.1.2
Fixes:
- Removed
-reconnect_at_eof
fromFFMPEG::CommandArgs::NetworkStreaming
to prevent retries
when processing a file that is not a stream.
7.1.1
Fixes:
- Removed invalid option
-reconnect_on_timeout
fromFFMPEG::CommandArgs::NetworkStreaming
.
7.1.0
Improvements:
- Added new modular way of composing ffmpeg commands using the
FFMPEG::CommandArgs::Composable
module.
7.0.0
For the full gradual changelog, check out the beta releases for v7.
What's Changed
- feat!: implement new API to also handle multiple transcoding outputs by @bajankristof in #8
- feat!: add non-blocking popen3 methods by @bajankristof in #9
- feat: improve presets to be more customizable by @bajankristof in #10
- feat: add new class for improved subprocess status handling by @bajankristof in #11
- feat: add operation timeout support by @bajankristof in #12
- feat: optimize MPEG-DASH presets with better defaults by @bajankristof in #14
- feat: use more reliable M4A container for AAC presets by @bajankristof in #17
- feat!: add support for using zscale in the scale filter by @bajankristof in #19
- feat!: scale and composer API and MPEG-DASH preset improvements by @bajankristof in #21
- feat: built-in preset improvements by @bajankristof in #23
Full Changelog: v6.1.2...v7.0.0
7.0.0-beta.14
Improvements:
- Built-in presets now use the closest standard frame rate to the input file
when the input file has lower frame rate than the preset. - Increased the keyframe interval of the MPEG-DASH H.264 preset to 2 seconds by default.
This results in a more efficient encoding process and smaller file sizes, while
still maintaining a good quality.
Fixes:
- Fixed some audio timeline shifting issues with the MPEG-DASH H.264 preset due to which
some players would skip to the end of the video upon loading.