FFmpeg 6.1 Heaviside Released

Started by JeGX, November 11, 2023, 04:54:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

JeGX

FFmpeg, the cross-platform solution to record, convert and stream audio and video, has been released in version 6.1 codenamed Heaviside.

FFmpeg is able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge.

QuoteFFmpeg 6.1 "Heaviside", a new major release, is now available! Some of the highlights:
    libaribcaption decoder
    Playdate video decoder and demuxer
    Extend VAAPI support for libva-win32 on Windows
    afireqsrc audio source filter
    arls filter
    ffmpeg CLI new option: -readrate_initial_burst
    zoneplate video source filter
    command support in the setpts and asetpts filters
    Vulkan decode hwaccel, supporting H264, HEVC and AV1
    color_vulkan filter
    bwdif_vulkan filter
    nlmeans_vulkan filter
    RivaTuner video decoder
    xfade_vulkan filter
    vMix video decoder
    Essential Video Coding parser, muxer and demuxer
    Essential Video Coding frame merge bsf
    bwdif_cuda filter
    Microsoft RLE video encoder
    Raw AC-4 muxer and demuxer
    Raw VVC bitstream parser, muxer and demuxer
    Bitstream filter for editing metadata in VVC streams
    Bitstream filter for converting VVC from MP4 to Annex B
    scale_vt filter for videotoolbox
    transpose_vt filter for videotoolbox
    support for the P_SKIP hinting to speed up libx264 encoding
    Support HEVC,VP9,AV1 codec in enhanced flv format
    apsnr and asisdr audio filters
    OSQ demuxer and decoder
    Support HEVC,VP9,AV1 codec fourcclist in enhanced rtmp protocol
    CRI USM demuxer
    ffmpeg CLI '-top' option deprecated in favor of the setfield filter
    VAAPI AV1 encoder
    ffprobe XML output schema changed to account for multiple variable-fields elements within the same parent element
    ffprobe -output_format option added as an alias of -of

This release had been overdue for at least half a year, but due to constant activity in the repository, had to be delayed, and we were finally able to branch off the release recently, before some of the large changes scheduled for 7.0 were merged.

Internally, we have had a number of changes too. The FFT, MDCT, DCT and DST implementation used for codecs and filters has been fully replaced with the faster libavutil/tx (full article about it coming soon).

This also led to a reduction in the the size of the compiled binary, which can be noticeable in small builds.

There was a very large reduction in the total amount of allocations being done on each frame throughout video decoders, reducing overhead.
RISC-V optimizations for many parts of our DSP code have been merged, with mainly the large decoders being left.

There was an effort to improve the correctness of timestamps and frame durations of each packet, increasing the accurracy of variable frame rate video.

Next major release will be version 7.0, scheduled to be released in February. We will attempt to better stick to the new release schedule we announced at the start of this year.

We strongly recommend users, distributors, and system integrators to upgrade unless they use current git master.


Links:
- Downloads
- Source @ github