Skip to content

3.10.0 - AAC and ALAC encoders

Latest

Choose a tag to compare

@superuser404notfound superuser404notfound released this 24 Oct 06:05

Same n8.1.3 FFmpeg, dav1d, zimg and libzvbi as 3.9.0, same local patches. Two more encoders: AAC and ALAC.

What ships now

  • AAC (LC) and ALAC encoders. AetherEngine pads a stream-copied audio track that ends before its video with silence in the track's own codec (AetherEngine#847): AVPlayer ends an HLS item the moment its audio runs out, so a remux whose audio stops short of the picture lost the rest of it, end credits included. AC-3, E-AC-3 and FLAC already had their encoders in the build (the E-AC-3 encoder pulls in AC-3's); AAC and ALAC now do too. Both are FFmpeg's native encoders, no external library, LGPL-2.1-or-later like the rest.
  • The encoder list is pinned by a test. EncoderAvailabilityTests checks that flac, eac3, ac3, aac and alac are in the binary and that no other encoder is. It fails against 3.9.0 on aac and alac only.

Build

This is the first release with a build record: BUILD-INFO.txt lists the upstream commits, the hashes of every patch change, the toolchain and SDKs, each slice's configure line and the hashes of all shipped binaries. Every library was rebuilt from a fresh tree (Xcode 27.0, all ten slices), so all binaries change; only libavcodec changes in content (tvos-arm64: 6,001,888 to 6,101,120 bytes). swift test: 37 tests in 12 suites pass.