valbok / QtAVPlayer

Free and open-source Qt Media Player library based on FFmpeg, for Linux, Windows, macOS, iOS and Android.
MIT License
296 stars 60 forks source link

Using Qt 6.4 built-in ffmpeg #276

Closed TheEnigmist closed 1 year ago

TheEnigmist commented 2 years ago

I'm wondering if there is a way to use built-in internal ffmpeg shipped with Qt 6.4 and use the same features of QtAVPlayer.

I tried to load same .webm video with built-in QMultimediaPlayer and the result is a QFrameVideo with QColor(16,16,16,255) instead of transparent pixel

valbok commented 1 year ago

Hi, thanks for the issue, do you want to use QAVPlayer to use built-in ffmpeg shipped with QTMM?

TheEnigmist commented 1 year ago

Hi, thanks for the issue, do you want to use QAVPlayer to use built-in ffmpeg shipped with QTMM?

Hi, that would be really appreciated. I didn't take a look of src code of QtAVPlayer, but since is based on ffmpeg maybe with new backend system from Qt6.4 or newer you can switch using it without the effort of building it by yourself.

What I'm looking is a simple way to load media with alpha enabled (and use chromakey filter). Right now QtMM doesn't manage it while QtAVPlayer yes, and I'm wondering if is only due to using ffmpeg as backend.

BTW I found a problem with VP9 codec, maybe I will open a separate issue for it

valbok commented 1 year ago

Sorry, but I did not understand, if you need ffmpeg from bulttin from qtmm you can do it by fixing search path for libs, but if you ask me to fix qtmm to support features ffmepg, you should request qtmm to do that.

valbok commented 1 year ago

Hi, sorry but looks I understood the issue, so when I build QtAVPlayer against my own ffmpeg, it will not work, since QtMultimedia was built against default one and there is a conflict with versions. Is this issue you were trying to describe?

geminixdev commented 1 year ago

I think it would be great if QtAVPlayer could get configured to use the Qt 6.4 (and later) built in ffmpeg libraries. That would avoid the headache of getting prebuilt libraries for iOS and Android.

And usually QtMM will get included anyway for Audio Output, so if not using the QtMM built in ffmpeg there would be 2 copies of the ffpmeg libraries in the resulting app / apk, the one used fo QtAVPlayer and the one for QTMM.