1

如何在 cefsharp 屏幕外启用网络媒体的音频/声音?使用 cefsharp winform 时,它工作正常。奥迪正在运行。

但是,我必须在屏幕外使用它,所以我从winform更改为屏幕外。此后,一个失败的音频运行。使用 webRTC 播放媒体音频。

这是 CefSettings c# 代码。

CefSettings settings = new CefSettings();
CefSharpSettings.LegacyJavascriptBindingEnabled = true; // Enable Register JS Object, -- RegisterAsyncJsObject, RegisterJsObject allow

settings.CachePath = "cache";
settings.CefCommandLineArgs.Add("enable-media-stream", "1"); //Enable WebRTC

//NOTE: The following function will set all three params
settings.CefCommandLineArgs.Add("disable-gpu", "1");
settings.CefCommandLineArgs.Add("disable-gpu-compositing", "1");

//NOTE: The Custom Scheme set up to embedded resources
settings.RegisterScheme(new CefCustomScheme()
{
   SchemeName = ResourceSchemeHandlerFactory.SchemeName,
   SchemeHandlerFactory = new ResourceSchemeHandlerFactory()
});

Cef.Initialize(settings);

这是浏览器设置代码。

BrowserSettings browserSettings = new BrowserSettings();
browserSettings.FileAccessFromFileUrls = CefState.Enabled;
browserSettings.UniversalAccessFromFileUrls = CefState.Enabled;
browserSettings.WebSecurity = CefState.Disabled;

nxBrowser = new ChromiumWebBrowser("resource://web/nxwebRTCAPI.html", browserSettings);
nxBrowser.RegisterJsObject("callBackObj", this);

这是html源代码。

<body>
    <script src="js/nxWebApi.js"></script>
    <script src="js/nxCallBack.js"></script>

    <audio id="audio_remote" autoplay="autoplay"> </audio>
</body>
</html>

请检查我在代码中的问题。

4

0 回答 0