最近因为项目需要用到cef支持webrtc支持,所以研究了一下cef的一些资料
在window中,简述其编译测试如下:
首先下载cef的库文件。下载地址如下:
http://opensource.spotify.com/cefbuilds/index.html【记住要下载32位的版本,不要下载64位的】
下载完成,先阅读其CMakeLists.txt文件,它说明了在各个平台该如何二次编译,如window的编译如下:
先安装cmake程序,把安装路径添加到环境变量Path中,然后启动cmd,cd到CEF的解压文件目录,输入命令 cmake -G "Visual Studio 15" 生成vs2017工程CEF.sln,当然可以按照安装vs版本修改,不要用cmake的gui方式生成工程,因为可能会失败
支持webrtc要添加命令行 --enable-media-stream,再cefclient项目的shared\browser\client_app_browser.cc文件中,函数void ClientAppBrowser::OnBeforeCommandLineProcessing(...)添加一行代码 command_line->AppendSwitch("enable-media-stream");,大概位置如下:
#if defined(OS_MACOSX)
// Disable the toolchain prompt on macOS.
command_line->AppendSwitch("use-mock-keychain");
#endif
command_line->AppendSwitch("enable-media-stream");
DelegateSet::iterator it = delegates_.begin();
for (; it != delegates_.end(); ++it)
(*it)->OnBeforeCommandLineProcessing(this, command_line);
}
就可以支持webrtc了,官网下载的CEF源码不支持H264编码,默认是vp8,可以去下载cef源码增加h264支持编译,编译过程有点困难,我下载了一个别人编译好的版本,支持H264编解码,可以搭建mediasoup测试,如https://192.168.0.112:5566/?forceH264=true测试是否支持,下载相关链接:https://download.csdn.net/download/zhou_jinbin/12851365