Reputation: 61
Under version Qt5.2, I used QtWebView, it can call third-party extensions automatically to support video formats such as avi, mpeg, mov and flv. But when I upgraded to Qt5.10 and changed QtWebView to QtWebengineView, it worked differently and I couldn't call third-party extensions. If I want to modify chromium source with ffmpeg to support all video formats for QtWebengine, what should I do?
Upvotes: 3
Views: 13021
Reputation: 1
Without -webengine-proprietary-codec -system-webengine-ffmpeg
qtwebengine will support the following
audio codecs: opus, vorbis, flac.
video codecs: vc8, vc9.
QtWebEngine is able to play your videos if recode your videos like this:
ffmpeg -i video.mp4 -c:v vp9 -c:a libopus -f webm video.webm
Upvotes: 0
Reputation: 564
For QtWebEngine all you need to do is configure Qt to enable proprietary codecs using -proprietary-codecs (< Qt 5.12) or -webengine-proprietary-codecs (Qt 5.12+)
If you additional configure with -system-webengine-ffmpeg you will also use the system FFmpeg with all the codecs it supports. It still won't support any container formats Chrome doesn't though.
Upvotes: 1
Reputation: 146
You needn't to use ffmpeg to support all video formats.
Like Vladimir said, follow the official build instructions and the audio/video page.
@Vladimir: I don't think you can enable support of the video & audio formats that aren't supported by Google Chrome.
Yes, you can. We compile Chromium with all codecs (AVC/H.264, HEVC/H.265, MPEG-4...) and can open many other file types (MOV, AVI, MKV, M2TS...). Follow our instructions (GN flags) and you will be able to build Chromium with all codecs. HEVC/H.265 is more complex. Check Chromium binaries and file type checker. All is completely free and open-source. Do it yourself! ;)
Upvotes: 2
Reputation: 2277
If you are building Chromium using the official build instruction, then you just need to add the following options to the args.gn
file:
proprietary_codecs=true
ffmpeg_branding="Chrome"
Upvotes: 1