ParadoxSpiral / libmpv-rs

A libmpv abstraction written in rust that's easy to use and provides the ability to read next to all video and audio codecs.
GNU Lesser General Public License v2.1
100 stars 36 forks source link

Upgrade libmpv for mpv version 0.35.0 #28

Closed sirno closed 1 year ago

sirno commented 2 years ago

I upgraded the libmpv headers for version 0.35.0. This is still WIP because for some unknown reason my linker cannot find mpv although it is in a discoverable path...

sirno commented 2 years ago

Ok it seems to work just fine with the new 2.0 api now.

mendess commented 1 year ago

I'm trying the version from your branch and I get an error Raw(InvalidParameter) when calling Mpv::enable_all_events, maybe there are more breaking changes that need to be fixed?

sirno commented 1 year ago

Yes that is likely, I just went through the compiler warnings, runtime issues may be found in many places.

Does it work now?

mendess commented 1 year ago

It does!

sirno commented 1 year ago

fyi i published a forked version for my personal use as libmpv-sirno = "2.0.2-fork.1" in case someone needs to package this.

ParadoxSpiral commented 1 year ago

Hi, thanks for your work! Sorry for being MIA for such a long time - I will be taking a look at this PR and others this weekend.

I have not programmed in Rust for quite a while now, so it may take me some time to get back into things.

maxcurzi commented 1 year ago

Nice work!

I'd like to add a comment:

It looks like that once this change is released in the main crate, then it will become incompatible with mpv 0.34.

I tried to use libmpv-sirno="2.0.2-fork.1" in my crate and got the same error where the "linked" and "loaded" versions are reversed (my crate used to work fine with libmpv="2.0.1" and mpv 0.34

So this seems to be a breaking change: https://github.com/maxcurzi/tplay/issues/3#issuecomment-1531247692