zmwangx / rust-ffmpeg

Safe FFmpeg wrapper.
Do What The F*ck You Want To Public License
1.3k stars 203 forks source link

Add support for FFmpeg 7.0 #178

Closed AdrianEddy closed 6 months ago

AdrianEddy commented 6 months ago

This PR adds support for FFmpeg 7.0. Depends on https://github.com/zmwangx/rust-ffmpeg-sys/pull/72 Also, I wasn't able to find any easy way to install 7.0 in CI yet, so the CI is not updated

FFmpeg 7.0 removed a bunch of deprecated stuff, and the ChannelLayout is completely changed. I tried to implement new version in a least intrusive way.

Also, since it's a major version bump, could you please try to review and merge #164 for 7.0? These features (especially new_with_codec) are very much needed (judging by the amount of opened PRs, and I need them myself too) and they are simple enough that merging them should be in scope even though this crate is in maintenance mode only

Thank you

Polochon-street commented 6 months ago

Thanks a lot for taking care of this!

As for https://github.com/zmwangx/rust-ffmpeg/pull/164, I've taken a look and made a comment, but it's not really my area of expertise, would you mind reviewing it too? Apart from my comment I think it looks good, so I could merge it as soon as it's fixed if it looks good to you too :)

I think the same comments apply to this one as https://github.com/zmwangx/rust-ffmpeg-sys/pull/72 - let's wait til 7.0 landed somewhere to make sure the CI doesn't complain about anything :)

AdrianEddy commented 6 months ago

I also included changes from #129, to complement the new new_with_codec So once this is merged, #129, #51, #149 can be closed

AdrianEddy commented 6 months ago

Ok the CI is all green now :)

Polochon-street commented 6 months ago

Awesome! Thanks a lot for working on that :pray: merging now

Polochon-street commented 6 months ago

aaand just published the crate.

AdrianEddy commented 6 months ago

Amazing, thank you! Let's close #51, #129, #149 since that functionality is now in master

doivosevic commented 6 months ago

does the root readme need to be updated to mention 7.0 support? right now I see it only mentions Currently supported FFmpeg versions: 3.4.x through 4.4.x