4.12.0
Additive release since 4.11.0. No breaking API changes.
Added
- Opt-in decoded PCM audio tap (#95).
installAudioTap()streams playback audio as mono Float32 48 kHz buffers with source-PTS timestamps and discontinuity flags, for host-side speech/audio features (live transcription, ShazamKit). Newaetherctl audiotap. - Configurable forward-buffer window (#102).
LoadOptions.forwardBufferSegments(clamped 4...150; nil keeps the adaptive default) lets hosts trade memory for resilience on slow or unstable sources. - Dolby Vision profile exposed (#103).
SourceProbe.dvProfileand the livesourceDVProfilepublish the profile number (5 / 7 / 8 / 10) for Stats-for-Nerds labels. - CEA-608 as a native WebVTT rendition on iOS (#98). 608 captions survive PiP and AirPlay through the existing WebVTT path.
Fixed
- Dolby Vision Profile 5 / AV1 Profile 10.0 thumbnail colour (#103).
FrameExtractorread the IPT-PQ-C2 base layer as BT.2020 YCbCr (green / magenta cast). It now applies the DV colour transform from the RPU metadata on the CPU. No Apple still-image API resolves this on its own; playback was never affected. - mov_text subtitle memory growth (#104). The native subtitle side demuxer now discards non-subtitle streams instead of streaming the whole program to harvest sparse mov_text packets.
- Bridged-resume alignment and post-EOF revive (#99).
- PGS catch-up burst suppression (#100).
- Reactive master to media fallback on display rejection, and macOS on-demand HDR routing (#98).
- Bounded wedge-restart reopen and #93 stall-recovery seek-target fixes.
Changed
- SMB now uses SMBClient (#97), fixing SMB shares on tvOS / iOS (AMSMB2 hit EPERM). Support boundary SMB 2.0.2 / 2.1.
Removed
- Dead in-band mov_text / tx3g subtitle muxing.