codec: restore ffmpeg-next 9.0.0 (FFmpeg 8.1.2 stays)

The 8.1.0 downgrade broke the build and the audio export: 8.1.0's
typed video encoder has no set_color_primaries /
set_color_transfer_characteristic, and its older audio path sent
near-NaN samples into the AAC encoder (transcode_mp4 and the oak-task
export test both failed). ffmpeg-next 9.0.0 supports ffmpeg_8_0/8_1
(the vcpkg pin of 8.1.2#3 is unaffected) and carries ffmpeg_9_0 cfg
branches for the day FFmpeg 9 lands.
This commit is contained in:
2026-09-11 19:37:27 +08:00
parent 96e6ce327d
commit 23174512c0
3 changed files with 6 additions and 6 deletions
Generated
+4 -4
View File
@@ -2332,9 +2332,9 @@ dependencies = [
[[package]]
name = "ffmpeg-next"
version = "8.1.0"
version = "9.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f7c4bd5ab1ac61f29c634df1175d350ded29cf74c3c6d4f7030431a5ae3c7d5d"
checksum = "6380599799e175191eb7ffe82c97f36a2a90a36cbc54c738a903e5287d7f516a"
dependencies = [
"bitflags 2.13.1",
"ffmpeg-sys-next",
@@ -2343,9 +2343,9 @@ dependencies = [
[[package]]
name = "ffmpeg-sys-next"
version = "8.1.0"
version = "9.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a314bc0e022a33a99567ed4bd2576bd58ffd8fcff7891c29194cfecc26a62547"
checksum = "9b939bf79dd5949412a4b81cfe21a07f48ea21b47fcbb5f57816c8c2de5ae30b"
dependencies = [
"bindgen 0.72.1",
"cc",
+1 -1
View File
@@ -16,7 +16,7 @@ oak-codec = { path = "../oak-codec" }
# ffmpeg_bridge library existed only to absorb FFmpeg API churn; the Rust
# crate calls ffmpeg-next directly (same as oakcodec). The oak-ffmpeg-link
# dependency above emits the transitive link flags of the static FFmpeg.
ffmpeg-next = "8"
ffmpeg-next = "9"
# ASIO is intentionally not enabled: the asio-sys crate needs the proprietary
# Steinberg ASIO SDK at link time, which CI and most dev machines do not have.
+1 -1
View File
@@ -25,6 +25,6 @@ oak-core = { path = "../oak-core" }
# release/<crate-version>, and every such pairing is broken upstream
# (9.0.0 -> FFmpeg 9.0 removed AVCodec fields; 8.1.0 -> FFmpeg 8.1 added
# enum variants; 8.0.0 -> FFmpeg 8.0 renamed FF_PROFILE_*).
ffmpeg-next = { version = "8", features = ["static"] }
ffmpeg-next = { version = "9", features = ["static"] }
# `std::error::Error` impls for the crate-internal error enum.
thiserror = "2"