CEF 84, in return of enumerateDevices(), no videoinput

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

CEF 84, in return of enumerateDevices(), no videoinput

Postby cpp » Thu Jul 23, 2020 3:02 am

When in Chrome called `navigator.mediadevices.enumerateDevices()`, there device with `videoinput`, but when called `navigator.mediadevices.enumerateDevices()`in CEF 84 there is no device with `videoinput`.
We are using CEF 77 and there is `videoinput', how to enable it in CEF 84?
cpp
Newbie
 
Posts: 5
Joined: Wed Jun 13, 2018 4:31 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby magreenblatt » Thu Jul 23, 2020 9:19 am

Are you passing --enable-media-stream on the command line? What OS? Does the issue reproduce in cefclient?
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby cpp » Fri Jul 24, 2020 8:44 pm

Yes, passing --enable-media-stream in command line, the same code as it works with CEF 77.
OS is MAC.
cefclient shows videoinput.

I ran cefclient with https://guidou.github.io/enumdemo4.html and output is:
1 - audioinput - - "" - 1eb299448b285900b545269f9328817b0b0baae1842924298ac36be7814bf166
2 - videoinput - - "" - a031665c0abc922045c7f62661cf6b123c8cced3e514d89050aee3a740b86c1e
3 - audiooutput - - "" - 1eb299448b285900b545269f9328817b0b0baae1842924298ac36be7814bf166

Then ran it with our app which uses CEF 84 and output is:
1 - audioinput - default - " - Internal Microphone (Built-in)" - 30dd07d8fdaf1d2decbf783b4c87c33f6586c376c1c93045ae9622f71d506fba
2 - audioinput - 277ad3496d8a23738d3791b2e9ab55c9a748ff8813e465c210a8f1522799bdfb - "Internal Microphone (Built-in)" - 30dd07d8fdaf1d2decbf783b4c87c33f6586c376c1c93045ae9622f71d506fba
3 - audiooutput - default - " - Internal Speakers (Built-in)" - 30dd07d8fdaf1d2decbf783b4c87c33f6586c376c1c93045ae9622f71d506fba
4 - audiooutput - 500480193ec3b541b6869e30130c64c8c51dfd90264f595c78a9df6a654803dd - "Internal Speakers (Built-in)" - 30dd07d8fdaf1d2decbf783b4c87c33f6586c376c1c93045ae9622f71d506fba
cpp
Newbie
 
Posts: 5
Joined: Wed Jun 13, 2018 4:31 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Thu Aug 20, 2020 7:10 am

I am seeing the same issue in 84.3.7+g97011bc
Was there any resolution? I have tried these commandline values (both in renderer and browser)
command_line->AppendSwitch("enable-media-stream");
command_line->AppendSwitch("enable-usermedia-screen-capturing");

Made sure I was using https://
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Sun Aug 23, 2020 5:10 am

Running cefsimple shows 3 devices - none of the virtual ones on my system (as seen in chrome)
Also, all the labels are empty.

I downloaded cef_binary_77.1.18+g8e8d602+chromium-77.0.3865.120_macosx64
And I see all of the audio devices - but still the labels are empty?
I am using the debug port and console to run navigator.mediaDevice.enumerateDevices()

This is from 77.1.18 - cefsimple
navigator.mediaDevices.enumerateDevices()
Promise {<pending>}__proto__: Promise[[PromiseStatus]]: "resolved"[[PromiseValue]]: Array(7)
0: InputDeviceInfo {deviceId: "default", groupId: "8a79bc1956c4b8989cbb881f41236add111a1cd4c5c1aa1c26e68ac8e55f351e", kind: "audioinput", label: ""}
1: InputDeviceInfo {deviceId: "2c3b2a935be7d0881680df871d3a557f625fe63574728249af19a45e35fc368d", groupId: "8a79bc1956c4b8989cbb881f41236add111a1cd4c5c1aa1c26e68ac8e55f351e", kind: "audioinput", label: ""}
2: InputDeviceInfo {deviceId: "5322ea70403f55b5f7304f0bfebd260b1c93d14b9c12aaaea418bab6505e4e4e", groupId: "dd95adc17a828ab9fac794fae53aad4bdb02addee2f7d4042f715a5115357c35", kind: "audioinput", label: ""}
3: InputDeviceInfo {deviceId: "5003757143fd167ded6a0afa1dc7162ff9056faf75a3621dd0a2485bdeaa2745", groupId: "7c1ad32b2f4ff82b3c8a61b6df2c40f452c2501ae32ae25b6fd24fd67a221499", kind: "audioinput", label: ""}
4: MediaDeviceInfo {deviceId: "default", groupId: "8a79bc1956c4b8989cbb881f41236add111a1cd4c5c1aa1c26e68ac8e55f351e", kind: "audiooutput", label: ""}
5: MediaDeviceInfo {deviceId: "7bf0a0e4bbfbf694469812b1198bec095370380484595e7ee2856e56dfdcd27d", groupId: "8a79bc1956c4b8989cbb881f41236add111a1cd4c5c1aa1c26e68ac8e55f351e", kind: "audiooutput", label: ""}
6: MediaDeviceInfo {deviceId: "5003757143fd167ded6a0afa1dc7162ff9056faf75a3621dd0a2485bdeaa2745", groupId: "7c1ad32b2f4ff82b3c8a61b6df2c40f452c2501ae32ae25b6fd24fd67a221499", kind: "audiooutput", label: ""}
length: 7__proto__: Array(0)
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Tue Sep 01, 2020 9:06 am

Any chance that anyone knows how to solve this? We are moving from a quite old version of CEF to this new one in order to support the latest macOS/hardware and need camera access in the renderer.
Follow-up - we are using CEF cross platform, the same version of CEF on Windows does show the videoinput (camera) device ;)
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Fri Nov 13, 2020 5:37 pm

I loaded the latest beta for 87 and then built the master branch and still this issue persists.
It is holding up our ability to upgrade to newest CEF builds.
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Mon Dec 07, 2020 8:36 am

Today I downloaded, built cef_binary_87.1.11+g8bb7705+chromium-87.0.4280.66_macosx64 and I see the videooutput in the call to
navigator.mediaDevices.enumerateDevices() in the devtools running cefclient app.
This is even without the "enable-media-stream" flag added. Although without the flag the details of the devices was not seen.
Promise {<pending>}
__proto__: Promise
[[PromiseState]]: "fulfilled"
[[PromiseResult]]: Array(3)
0: InputDeviceInfo {deviceId: "", kind: "audioinput", label: "", groupId: "0057f944301b56933ec76aea96b3bdfc28c10ed69d48eb067b05235c4e942f84"}
1: InputDeviceInfo {deviceId: "", kind: "videoinput", label: "", groupId: "2c46d9851f64b6211cb09d7baeb13dd504257c708fa362b168d4a3818b858480"}
2: MediaDeviceInfo {deviceId: "", kind: "audiooutput", label: "", groupId: "0057f944301b56933ec76aea96b3bdfc28c10ed69d48eb067b05235c4e942f84"}
length: 3
__proto__: Array(0)


In my application I am still only seeing the audioinput and audiooutput devices in the devtools / web app.
I am at a complete loss as to what this could be, any help in what could be blocking those would be appreciated.
This is mac only on Windows the videoinput devices are seen.
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby magreenblatt » Mon Dec 07, 2020 10:21 am

magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm

Re: CEF 84, in return of enumerateDevices(), no videoinput

Postby sjames1958 » Wed Dec 09, 2020 6:56 am

Yes, I am the one that reported that one. But there hasn't been any progress there either.
sjames1958
Mentor
 
Posts: 60
Joined: Sun Jun 22, 2014 7:41 am

Next

Return to Support Forum

Who is online

Users browsing this forum: No registered users and 77 guests