-
Notifications
You must be signed in to change notification settings - Fork 227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable building with CEF 6261 & 6367 (Chromium 122 & 124) #434
Conversation
b8838ad
to
94aeed1
Compare
Slightly off-topic, but you might be interested to know. |
@WizardCM do you want to include the texture flip override for builds above 6261 in this PR as well (as discussed off-thread)? As the texture shared with us is originally created for video encoding, it's pre-flipped already. |
94aeed1
to
68bb8eb
Compare
@RytoEX @PatTheMav Per prior discussion, this PR now makes the necessary adjustments (including |
At some point between 5563 and 5938, the parameter's type changed.
This allows compiling OBS Browser with Chromium 122-based CEF versions. Sources: - https://github.com/chromiumembedded/cef/blame/d3a483ef59f8f40c624967361e05edda413bbf5b/libcef_dll/ctocpp/browser_ctocpp.h#L57 - https://bitbucket.org/chromiumembedded/cef/commits/f3b570c
This allows compiling OBS Browser with Chromium 124-based CEF versions. This also enables basic support for the new, official, shared texture API, purely because building without it would be *more* difficult. Sources: - https://bitbucket.org/chromiumembedded/cef/commits/260dd0ca2
Alright, commits have been updated. Tested on macOS, and This now builds and runs on Windows, macOS and Linux without issue, and the first 2 with shared textures. In my opinion this seems good to merge. For now, I've left the code to set |
Great work! I forgot why, but is there a chance to import gbm in Linux? Seems OBS is the easiest user to make this work because it has a handy render pipeline. |
I tried once (obs discord long discussion), but failed on Nvidia (OK with Intel and AMD) with some old fork of yours. Would it makes sense to try again with 126 chromium? I see the api has changed not void* but some structure with the handle now. |
There are still be open feedback threads. They should be resolved before this can be merged. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The CEF API changes look good to me. I haven't done a local test build of this yet.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can confirm that I can build OBS Studio on Windows against both CEF 103 (5060) and 126 (6478) with these changes.
Description
This allows compiling OBS Browser with Chromium 124-based CEF versions.
This also adds basic support for the new, official, shared textures API on both Windows and macOS.
Sources:
Fun note; Remote debugging now requires
--remote-allow-origins=*
otherwise Remote Debugging immediately disconnects - even for localhost.Motivation and Context
At some point we'd like to upgrade to modern CEF. To do that, obs-browser needs to compile.
How Has This Been Tested?
Launch OBS with a CEF 6261 or 6367 build. Have not tested downgrading CEF to our currently supported versions.
Only tested on Windows.
Types of changes
Checklist: