Skip to content

zvidlib v0.2.0

Choose a tag to compare

@github-actions github-actions released this 26 Sep 02:40
· 98 commits to main since this release
0863b7e

zvidlib now encodes HEVC Main in hardware on macOS and Windows and AAC-LC on Windows as well as macOS, so a native application can record 1080p30 HEVC with AAC audio in real time through zvidlib alone. Use the v0.2.0 Git tag for Cargo and zvidlib-web-v0.2.0.tgz for the browser package.

  • Behaviour change: native_hevc_video_encoder_factory() now honours HardwarePreference for target-bitrate configurations. Prefer selects the platform's hardware HEVC encoder where one exists and falls back to software otherwise. Require selects hardware or reports HardwareUnavailable. Avoid, lossless and fixed-QP requests stay on the pure-Rust encoder. In 0.1.1, Prefer always meant the pure-Rust encoder, at seconds per 1080p frame. The README lists every native encoder by operating system and whether it is hardware, a platform codec, or software.
  • Platform capability change: native_aac_audio_encoder_factory() now reports Supported on Windows as well as macOS.

Encoders by operating system

Encoder Windows macOS Linux
HEVC Main Hardware (Media Foundation: NVENC, Quick Sync, AMF), then Media Foundation software, then pure Rust Hardware (VideoToolbox), then pure Rust Pure Rust
AV1 Main, 8-bit monochrome Pure Rust Pure Rust Pure Rust
AAC-LC Platform (Media Foundation) Platform (AudioToolbox) None

Avoid, lossless and fixed-QP HEVC requests use the pure-Rust encoder on every OS. The README's Platform expectations section has the full table, and CHANGELOG.md has every change in this release.

What's Changed

  • Add Windows Media Foundation hardware HEVC encoder by @lsegal in #491
  • Add Windows Media Foundation AAC-LC encoder and exact gapless padding by @lsegal in #492
  • Add VideoToolbox hardware HEVC encoder on macOS by @lsegal in #490
  • Release zvidlib 0.2.0 with hardware HEVC and Windows AAC encoders by @lsegal in #496

Full Changelog: v0.1.1...v0.2.0