Skip to content

Bump av from 15.0.0 to 18.1.0 - #166

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/av-18.1.0
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/uv/av-18.1.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Bumps av from 15.0.0 to 18.1.0.

Release notes

Sourced from av's releases.

v18.1.0

Features

  • Infer the specific stream and codec context types for all FFmpeg encoder names in type-checked code by @​WyattBlue.
  • Add CodecContext.supported_options to discover generic and codec-specific options by @​WyattBlue (#2032).
  • Add Packet.rescale_ts() to rescale packet PTS, DTS, and duration to a new AVRational time base by @​WyattBlue.
  • Support reusing the thread's current CUDA context via a current_ctx flag on CudaContext and VideoFrame.from_dlpack, for interop with libraries like PyTorch that initialize CUDA first by @​Yozer (#2339).
  • VideoFrame.from_dlpack no longer requires restating primary_ctx/current_ctx when passing an explicit cuda_context; the flags are only validated when explicitly given by @​WyattBlue.
  • Support passing an explicit CUDA stream to FFmpeg CUDA operations, including NVENC input and output, via a cuda_stream parameter on CudaContext; currently limited to logical CUDA device 0 by @​Yozer (#2360).
  • Add av.AVRational, an exact rational number stored as two int32s that mirrors FFmpeg's AVRational. Codec.frame_rates now holds these rather than fractions.Fraction, and every setter that accepts a Fraction also accepts an AVRational. Unset rational attributes are falsy, so test them with if not stream.time_base: rather than is None by @​WyattBlue.
  • Add Frame.metadata, the metadata FFmpeg attaches to a frame, by @​WyattBlue.
  • Add CodecContext.level by @​WyattBlue.
  • Add VideoCodecContext.field_order by @​WyattBlue.
  • VideoFrame.save now forwards keyword arguments to the encoder, letting callers trade file size for speed (e.g. pred="none" or compression_level=1 for PNG, qscale=2 for JPG) by @​WyattBlue.
  • Add InputContainer.start_time_realtime, the stream's start time in microseconds since the Unix epoch, which RTSP derives from RTCP sender reports, by @​WyattBlue (#2365).

Fixes

  • Fix VideoFrame.save raising AttributeError when given a Path rather than a str by @​WyattBlue.
  • Fix a frame rate assigned to a VideoStream after add_stream being dropped from the output; the codec context's frame rate is now copied to the stream before the header is written by @​WyattBlue (#2301).
  • Prevent crashes and corrupted output when structural codec properties are changed after an output stream has been opened by @​WyattBlue, reported by @​oakaigh (#2232).
  • Fix a crash when using a stream that has no CodecContext (a demuxed stream with no available decoder, such as one from a truncated file, or a stream created by add_mux_stream); decoding now raises DecoderNotFoundError, encoding now raises EncoderNotFoundError, and BitStreamFilterContext accepts such a stream as out_stream by @​WyattBlue, reported by @​justinrmiller (#2344).

Misc

  • Support building from source against FFmpeg 9.0 by @​WyattBlue. The binary wheels still ship FFmpeg 8.1.2.

New Contributors

Full Changelog: PyAV-Org/PyAV@v18.0.0...v18.1.0

v18.0.0

Major

  • Remove Support for Python 3.10
  • Upgrade binary wheels to ffmpeg 8.1.2

Features

  • Support HW encoding via a hwaccel parameter on OutputContainer.add_stream (e.g. h264_vaapi, h264_nvenc, h264_videotoolbox); software frames passed to encode are uploaded to the device automatically by @​WyattBlue (#2156).
  • Expose sw_format on VideoCodecContext, and allow configuring the software format of hardware encoders by @​WyattBlue.
  • Add options parameter to AudioResampler for passing libswresample options (e.g. resampler, filter_size, cutoff) by @​WyattBlue (#2262).
  • Support yuv420p10le in VideoFrame.to_ndarray and VideoFrame.from_ndarray by @​WyattBlue (#1981).
  • Add at parameter to Graph.push and Graph.vpush to push a frame to a single buffer source by index, for multi-input filters like overlay by @​WyattBlue.
  • find_best_pix_fmt_of_list now returns the loss as a PixFmtLoss enum.IntFlag instead of a plain int by @​WyattBlue (#2300).
  • Add Colorspace.BT2020 by @​mark-oshea.
  • BitStreamFilterContext now accepts a Codec or a codec-name str as in_stream to pin the input codec without a full Stream by @​WyattBlue.

Fixes

... (truncated)

Changelog

Sourced from av's changelog.

v18.1.0

Features:

  • Infer the specific stream and codec context types for all FFmpeg encoder names in type-checked code by :gh-user:WyattBlue.
  • Add CodecContext.supported_options to discover generic and codec-specific options by :gh-user:WyattBlue (:issue:2032).
  • Add Packet.rescale_ts() to rescale packet PTS, DTS, and duration to a new AVRational time base by :gh-user:WyattBlue.
  • Support reusing the thread's current CUDA context via a current_ctx flag on CudaContext and VideoFrame.from_dlpack, for interop with libraries like PyTorch that initialize CUDA first by :gh-user:Yozer (:pr:2339).
  • VideoFrame.from_dlpack no longer requires restating primary_ctx/current_ctx when passing an explicit cuda_context; the flags are only validated when explicitly given by :gh-user:WyattBlue.
  • Support passing an explicit CUDA stream to FFmpeg CUDA operations, including NVENC input and output, via a cuda_stream parameter on CudaContext; currently limited to logical CUDA device 0 by :gh-user:Yozer (:pr:2360).
  • Add av.AVRational, an exact rational number stored as two int32s that mirrors FFmpeg's AVRational. Codec.frame_rates now holds these rather than fractions.Fraction, and every setter that accepts a Fraction also accepts an AVRational. Unset rational attributes are falsy, so test them with if not stream.time_base: rather than is None by :gh-user:WyattBlue.
  • Add Frame.metadata, the metadata FFmpeg attaches to a frame, by :gh-user:WyattBlue.
  • Add CodecContext.level by :gh-user:WyattBlue.
  • Add VideoCodecContext.field_order by :gh-user:WyattBlue.
  • VideoFrame.save now forwards keyword arguments to the encoder, letting callers trade file size for speed (e.g. pred="none" or compression_level=1 for PNG, qscale=2 for JPG) by :gh-user:WyattBlue.
  • Add InputContainer.start_time_realtime, the stream's start time in microseconds since the Unix epoch, which RTSP derives from RTCP sender reports, by :gh-user:WyattBlue (:issue:2365).

Fixes:

  • Fix VideoFrame.save raising AttributeError when given a Path rather than a str by :gh-user:WyattBlue.
  • Fix a frame rate assigned to a VideoStream after add_stream being dropped from the output; the codec context's frame rate is now copied to the stream before the header is written by :gh-user:WyattBlue (:issue:2301).

Misc.:

  • Support building from source against FFmpeg 9.0 by :gh-user:WyattBlue. The binary wheels still ship FFmpeg 8.1.2.

  • Prevent crashes and corrupted output when structural codec properties are changed after an output stream has been opened by :gh-user:WyattBlue, reported by :gh-user:oakaigh (:issue:2232).

  • Fix a crash when using a stream that has no CodecContext (a demuxed stream with no available decoder, such as one from a truncated file, or a stream created by add_mux_stream); decoding now raises DecoderNotFoundError, encoding now raises EncoderNotFoundError, and BitStreamFilterContext accepts such a stream as out_stream by :gh-user:WyattBlue, reported by :gh-user:justinrmiller (:issue:2344).

v18.0.0

Breaking:

  • Remove Python 3.10

Features:

  • Support HW encoding via a hwaccel parameter on OutputContainer.add_stream (e.g. h264_vaapi, h264_nvenc, h264_videotoolbox); software frames passed to encode are uploaded to the device automatically by :gh-user:WyattBlue (:issue:2156).
  • Use FFmpeg 8.1.2 in the binary wheels by :gh-user:WyattBlue.
  • Expose sw_format on VideoCodecContext, and allow configuring the software format of hardware encoders by :gh-user:WyattBlue.
  • Add options parameter to AudioResampler for passing libswresample options (e.g. resampler, filter_size, cutoff) by :gh-user:WyattBlue (:issue:2262).
  • Support yuv420p10le in VideoFrame.to_ndarray and VideoFrame.from_ndarray by :gh-user:WyattBlue (:issue:1981).
  • Add at parameter to Graph.push and Graph.vpush to push a frame to a single buffer source by index, for multi-input filters like overlay by :gh-user:WyattBlue.
  • find_best_pix_fmt_of_list now returns the loss as a PixFmtLoss enum.IntFlag instead of a plain int by :gh-user:WyattBlue (:issue:2300).
  • Add Colorspace.BT2020 by :gh-user:mark-oshea.
  • BitStreamFilterContext now accepts a Codec or a codec-name str as in_stream to pin the input codec without a full Stream by :gh-user:WyattBlue.

Fixes:

... (truncated)

Commits
  • 7e3d950 Release 18.1.0
  • 842955f Changelog entries missed since 18.0.0
  • fdb4ce4 Add InputContainer.start_time_realtime, closes #2365
  • b9ef85f Forward encoder options from VideoFrame.save()
  • f711ab6 Disable avx-512 in build-deps
  • 883642e Test with ffmpeg 9.0
  • b35726c FFmpeg 9.0 reorders AVCodecID
  • f6f0a5e Avoid probing primary context flags for no reason
  • 387fca5 Support explicit CUDA streams
  • 32e9f7d Refresh installation documentation
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code labels Sep 21, 2026
Bumps [av](https://github.com/PyAV-Org/PyAV) from 15.0.0 to 18.1.0.
- [Release notes](https://github.com/PyAV-Org/PyAV/releases)
- [Changelog](https://github.com/PyAV-Org/PyAV/blob/v18.1.0/CHANGELOG.rst)
- [Commits](PyAV-Org/PyAV@v15.0.0...v18.1.0)

---
updated-dependencies:
- dependency-name: av
  dependency-version: 18.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/uv/av-18.1.0 branch from ef79822 to 3e5d3e3 Compare September 23, 2026 15:11

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants