mediastreamer2 5.2.0
|
#include <msogl.h>
Data Fields | |
void * | window |
unsigned int | width |
unsigned int | height |
void *(* | getProcAddress )(const char *name) |
MSOglContextInfo is used for the "MSOGL" filter (OpenGL Display) that can be set with #linphone_core_set_video_display_filter. This type is available on Desktop platforms (Linux, MacOS and Windows) but not for UWP where you have to use directly a SwapChainPanel(see #linphone_core_set_native_video_window_id) Use an instance of this structure in #linphone_core_set_native_preview_window_id or #linphone_core_set_native_video_window_id At runtime, you need to ensure to have an access to OpenGL libraries (libGLESv2/libGLEW/opengl32 and libEGL) as it is not provided by the SDK. For example, you can use the nuget package ANGLE.WindowsStore
for Windows as libraries are not packaged with the OS.
Fill window
with your EGLNativeWindowType in order to auto manage the OpenGL surface. CALayer*
for Mac HWND
for Windows of IInspectable*
for Windows Store Window
for X11
Mediastreamer will use EGL functions(libEGL) to get sizes. If they cannot be retrieved, it will use the input sizes as default.
Set getProcAddress
to customize OpenGL calls : Mediastreamer will use this function to initialize all pointers on OpenGL functions at runtime. If this variable is not set, Mediastreamer will try to load default functions directly from OpenGL libraries at runtime.