Working directly with CEF in your C++/CLI .NET project

What is your proposed format:
general 3 or 6h hands-on workshop. 6h is preferred for a really in-depth go.

What’s happening in your workshop?
We will delve into how to set up your project to work with any version of CEF (Chromium Embedded Framework), and in turn showing how to work with larger and more complex C++ libraries in your .NET program (for example vvvv gamma nodes). We will also use Nuke, a C# build tool, to automate the prerequisite steps of using CEF (including correct headers, running CMake tasks, linking with correct libraries, referencing debug symbols)

As a disclaimer a CEF implementation is already used in vvvv gamma which is bound with CefGlue (HtmlImage) (to my latest knowledge), but that node abstracts away a lot of CEF’s features. This workshop will concentrate more how to work closely with all what CEF can offer.

What is the actual output of your workshop?
A library either for vvvv beta or vvvv gamma + Stride (depends on availability) which can display and manipulate HTML content via CEF efficiently.

Do you see the workshop possibly relating to the NODE 2020 leitmotif? If so, how?
I think rendering HTML content is fairly unrelated to the subject of stopping our planet becoming Venus.

In which of the three categories does it fit?
advanced

Who is this workshop for?
People who want to work with more elaborate C++ libraries in vvvv beta or vvvv gamma

What knowledge do you presume your participants have?
C# is required and C++ knowledge is very recommended in order to follow what’s happening. No preliminary knowledge is required about CEF itself.

Which tools (hardware and software) will be used and learned?
Obviously CEF (Chromium Embedded Framework)
Nuke build tool
Differences between C++/CLI and regular old C++

What will attendees of your workshop learn?
The key concepts and usage of CEF, and how to work with it in an efficient way. First we will use officially distributed CEF builds but towards the end we may also tackle how to work with CEF source code in order to test out new features and pull requests or turn on proprietary codec support (like H.264 in mp4 video playback).

What technical requirements does your workshop have (apart from internet and a projector)?
Nothing

How do you qualify for the topic?
Here’s me website
Here’s me Github

I had an advanced implementation of CEF for vvvv dubbed Vanadium using a custom built version to support shared textures and touches. It was last updated 15 months ago though and it was still using ChromiumFX binding, but later I realized, getting rid of the binding layer can simplify things a lot, especially when testing many versions of CEF quickly.

Currently I’m developing Uranium which is again, a fast direct implementation of CEF in Unreal Engine, although it’s neither complete nor public yet.

Who would be your ideal co-host?
If anybody wants to join-in, contact me ;)

5 Likes

Way above my cognitive capabilities I guess, but great initiative.
Not sure though how many advanced programmers are lurking here