Skip to content

Commit c145a77

Browse files
committed
Bump version to 0.18.0+ffmpeg.8.0
Update package version and documentation to reflect FFmpeg 8.0 support Modify build scripts to default to FFmpeg 8.0 branch Update CI workflow to include FFmpeg 8.0 testing
1 parent 94fa848 commit c145a77

File tree

10 files changed

+61
-18
lines changed

10 files changed

+61
-18
lines changed

.github/workflows/ci.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ jobs:
9696
runs-on: ubuntu-latest
9797
strategy:
9898
matrix:
99-
ffmpeg-version: ["release/6.0", "release/6.1", "release/7.0", "release/7.1"]
99+
ffmpeg-version: ["release/6.0", "release/6.1", "release/7.0", "release/7.1", "release/8.0"]
100100
rust: ["nightly", "1.81.0"]
101101
valgrind: ["valgrind", "no valgrind"]
102102
include:
@@ -108,6 +108,9 @@ jobs:
108108
- rust: "nightly"
109109
ffmpeg-version: "release/7.1"
110110
should_test: "true"
111+
- rust: "nightly"
112+
ffmpeg-version: "release/8.0"
113+
should_test: "true"
111114
- ffmpeg-version: "release/6.0"
112115
additional-cargo-flags: "--no-default-features --features ffmpeg6"
113116
- ffmpeg-version: "release/6.1"
@@ -116,13 +119,17 @@ jobs:
116119
additional-cargo-flags: "--no-default-features --features ffmpeg7"
117120
- ffmpeg-version: "release/7.1"
118121
additional-cargo-flags: "--no-default-features --features ffmpeg7_1"
122+
- ffmpeg-version: "release/8.0"
123+
additional-cargo-flags: "--no-default-features --features ffmpeg8"
119124
exclude:
120125
# Only run valgrind with latest FFmpeg and stable rust toolchain to reduce resource consumption.
121126
# valgrind starts to fail on nightly toolchain due to a bug in std: https://github.com/rust-lang/rust/issues/135608
122127
- valgrind: "valgrind"
123128
ffmpeg-version: "release/6.0"
124129
- valgrind: "valgrind"
125130
ffmpeg-version: "release/6.1"
131+
- valgrind: "valgrind"
132+
ffmpeg-version: "release/7.0"
126133
- valgrind: "valgrind"
127134
rust: "nightly"
128135
fail-fast: false

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,31 @@
1+
## 0.18.0
2+
3+
- Update rusty_ffmpeg to version `0.16.7`
4+
5+
- Add `AVMD5` for MD5 hashing functionality
6+
7+
- Add `AVFormatContextInput::seek`
8+
9+
- Add `options` params for `AVFormatContextOutput::open`
10+
11+
- Add `AVCodecContext::flush_buffers`
12+
13+
- Add `get_format` setter to `AVCodecContext`
14+
15+
- Add `AVFilterContext::link`, `AVFilterContext::opt_set*`
16+
17+
- Relax `AVFilterGraph::get_filter` method to use immutable reference
18+
19+
- Implement `Debug` for `AVChannelLayout`
20+
21+
- Add unsafe constructors for `AVChannelLayout` and `AVChannelLayoutRef`
22+
23+
- Better hardware decode support
24+
25+
- Add more tests&examples for audio and video/audio filtering, demuxing, resampling, and scaling
26+
27+
- Update `av_rescale_q_rnd` to use `AVRounding` and add `av_rescale_rnd` function
28+
129
## 0.17.0
230

331
- Add builder pattern for `AVFormatContextInput` and `AVFormatContextOutput` (#225, #226)

Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "rsmpeg"
3-
version = "0.17.0+ffmpeg.7.1"
3+
version = "0.18.0+ffmpeg.8.0"
44
authors = ["liudingming <liudingming@bytedance.com>"]
55
edition = "2021"
66
license = "MIT"
@@ -27,15 +27,15 @@ once_cell = "1"
2727
image = { version = "0.25.6", default-features = false, features = ["png"] }
2828

2929
[features]
30-
# Use FFmpeg 7 by default
31-
default = ["ffmpeg7"]
30+
# Use FFmpeg 8 by default
31+
default = ["ffmpeg8"]
3232

3333
# Note that ffmpeg{x} feature is designed to be addable (If it's not, compilation with all-features won't pass)
3434
ffmpeg6 = ["rusty_ffmpeg/ffmpeg6"]
3535
ffmpeg7 = ["ffmpeg6", "rusty_ffmpeg/ffmpeg7"]
3636
# ffmpeg 7.1+
3737
ffmpeg7_1 = ["ffmpeg7"]
38-
ffmpeg8 = ["ffmpeg7_1"]
38+
ffmpeg8 = ["ffmpeg7_1", "rusty_ffmpeg/ffmpeg8"]
3939

4040
# Try linking ffmpeg with pkg-config.
4141
link_system_ffmpeg = ["rusty_ffmpeg/link_system_ffmpeg"]

doc/installed.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,11 @@ After that, create a new Rust project using `cargo new <project_name>` and add `
3232
```toml
3333
[dependencies]
3434
# For FFmpeg 6.*
35-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg6", "link_system_ffmpeg"] }
35+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg6", "link_system_ffmpeg"] }
3636
# For FFmpeg 7.*
37-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg7", "link_system_ffmpeg"] }
37+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg7", "link_system_ffmpeg"] }
38+
# For FFmpeg 8.*
39+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg8", "link_system_ffmpeg"] }
3840
```
3941

4042

doc/source-build.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,11 @@ Start by adding `rsmpeg` to your `Cargo.toml` file. Choose the feature flag that
3434
```toml
3535
[dependencies]
3636
# FFmpeg 6.*
37-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg6"] }
38-
# FFmpeg 7.* (feature `ffmpeg7` is enabled by default)
39-
rsmpeg = "0.17"
37+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg6"] }
38+
# FFmpeg 7.*
39+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg7"] }
40+
# FFmpeg 8.* (feature `ffmpeg8` is enabled by default)
41+
rsmpeg = "0.18"
4042
```
4143

4244
Write your simple media file info dumper in `src/main.rs`:

doc/vcpkg.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,11 @@ After installing `cargo-vcpkg`, create a new Rust project using `cargo new <proj
1717
```toml
1818
[dependencies]
1919
# For FFmpeg 6.*
20-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg6", "link_vcpkg_ffmpeg"] }
20+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg6", "link_vcpkg_ffmpeg"] }
2121
# For FFmpeg 7.*
22-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg7", "link_vcpkg_ffmpeg"] }
22+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg7", "link_vcpkg_ffmpeg"] }
23+
# For FFmpeg 8.*
24+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg8", "link_vcpkg_ffmpeg"] }
2325
```
2426

2527
Add vcpkg dependencies in `Cargo.toml`:

doc/winget.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,11 @@ Add `rsmpeg` to your `Cargo.toml` file. Choose the feature flag that matches you
3737

3838
```toml
3939
# FFmpeg 6.*
40-
rsmpeg = { version = "0.17", default-features = false, features = ["ffmpeg6"] }
41-
# FFmpeg 7.* (feature `ffmpeg7` is enabled by default)
42-
rsmpeg = "0.17"
40+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg6"] }
41+
# FFmpeg 7.*
42+
rsmpeg = { version = "0.18", default-features = false, features = ["ffmpeg7"] }
43+
# FFmpeg 8.* (feature `ffmpeg8` is enabled by default)
44+
rsmpeg = "0.18"
4345
```
4446

4547
Write your simple media file info dumper in `src/main.rs`:

utils/linux_ffmpeg.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ fn main() -> Result<()> {
2626

2727
let tmp_path = pwd()?.to_string_lossy().to_string();
2828
let build_path = format!("{}/ffmpeg_build", tmp_path);
29-
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/7.1".to_string());
29+
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/8.0".to_string());
3030
let num_job = std::thread::available_parallelism().unwrap().get();
3131

3232
if fs::metadata("ffmpeg").is_err() {

utils/mac_ffmpeg.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ fn main() -> Result<()> {
2626

2727
let tmp_path = pwd()?.to_string_lossy().to_string();
2828
let build_path = format!("{}/ffmpeg_build", tmp_path);
29-
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/7.1".to_string());
29+
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/8.0".to_string());
3030
let num_job = std::thread::available_parallelism().unwrap().get();
3131

3232
if fs::metadata("ffmpeg").is_err() {

utils/windows_ffmpeg.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ fn main() -> Result<()> {
2626

2727
let tmp_path = pwd()?.to_string_lossy().to_string();
2828
let build_path = format!("{}/ffmpeg_build", tmp_path);
29-
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/7.1".to_string());
29+
let branch = std::env::args().nth(1).unwrap_or_else(|| "release/8.0".to_string());
3030
let num_job = std::thread::available_parallelism().unwrap().get();
3131

3232
if fs::metadata("ffmpeg").is_err() {

0 commit comments

Comments
 (0)