Screen capture unavailable

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.

Screen capture unavailable

Postby JasonLP » Mon Jan 26, 2015 3:32 pm

I am attempting to use the screen sharing feature and testing against:

https://html5-demos.appspot.com/static/ ... share.html

Using the cefclient app with the CEF 3.2171.1979 build on 64-bit Mac, I am setting the following flags:
--enable-media-stream
--enable-usermedia-screen-capturing

Running that web page, when I click on the "Capture Your Screen" button, I get a blank box with a red border. It appears that the flags are honored, because without those flags I get an error: "Uncaught TypeError: undefined is not a function" when the script calls navigator.getUserMedia().

It's been difficult finding any recent references to screen sharing, and determining whether this is even expected to work with CEF.

Any thoughts?

The only clue I have is when running cefclient in debug mode. It breaks with the following stack trace:

Code: Select all
[0126/152738:FATAL:media_stream_manager.cc(1865)] Check failed: !devices.empty().
0   Chromium Embedded Framework         0x000000010071c49f base::debug::StackTrace::StackTrace() + 47
1   Chromium Embedded Framework         0x000000010071c4f3 base::debug::StackTrace::StackTrace() + 35
2   Chromium Embedded Framework         0x000000010079d996 logging::LogMessage::~LogMessage() + 70
3   Chromium Embedded Framework         0x000000010079c9c3 logging::LogMessage::~LogMessage() + 35
4   Chromium Embedded Framework         0x00000001071af123 content::MediaStreamManager::HandleAccessRequestResponse(std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult) + 851
5   Chromium Embedded Framework         0x00000001071bad5f base::internal::RunnableAdapter<void (content::MediaStreamManager::*)(std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>::Run(content::MediaStreamManager*, std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) + 191
6   Chromium Embedded Framework         0x00000001071bac7c base::internal::InvokeHelper<false, void, base::internal::RunnableAdapter<void (content::MediaStreamManager::*)(std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, void (content::MediaStreamManager*, std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&)>::MakeItSo(base::internal::RunnableAdapter<void (content::MediaStreamManager::*)(std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, content::MediaStreamManager*, std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) + 124
7   Chromium Embedded Framework         0x00000001071babdc base::internal::Invoker<2, base::internal::BindState<base::internal::RunnableAdapter<void (content::MediaStreamManager::*)(std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, void (content::MediaStreamManager*, std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult), void (base::internal::UnretainedWrapper<content::MediaStreamManager>, std::string)>, void (content::MediaStreamManager*, std::string const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>::Run(base::internal::BindStateBase*, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) + 188
8   Chromium Embedded Framework         0x00000001071cab49 base::Callback<void (content::MediaStreamDevices const&, content::MediaStreamRequestResult)>::Run(content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) const + 105
9   Chromium Embedded Framework         0x00000001071c78db content::MediaStreamUIProxy::ProcessAccessRequestResponse(content::MediaStreamDevices const&, content::MediaStreamRequestResult) + 539
10  Chromium Embedded Framework         0x00000001071cefaa base::internal::RunnableAdapter<void (content::MediaStreamUIProxy::*)(content::MediaStreamDevices const&, content::MediaStreamRequestResult)>::Run(content::MediaStreamUIProxy*, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) + 170
11  Chromium Embedded Framework         0x00000001071ceedb base::internal::InvokeHelper<true, void, base::internal::RunnableAdapter<void (content::MediaStreamUIProxy::*)(content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, void (base::WeakPtr<content::MediaStreamUIProxy> const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&)>::MakeItSo(base::internal::RunnableAdapter<void (content::MediaStreamUIProxy::*)(content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, base::WeakPtr<content::MediaStreamUIProxy> const&, content::MediaStreamDevices const&, content::MediaStreamRequestResult const&) + 123
12  Chromium Embedded Framework         0x00000001071cedf3 base::internal::Invoker<3, base::internal::BindState<base::internal::RunnableAdapter<void (content::MediaStreamUIProxy::*)(content::MediaStreamDevices const&, content::MediaStreamRequestResult)>, void (content::MediaStreamUIProxy*, content::MediaStreamDevices const&, content::MediaStreamRequestResult), void (base::WeakPtr<content::MediaStreamUIProxy>, content::MediaStreamDevices, content::MediaStreamRequestResult)>, void (content::MediaStreamUIProxy*, content::MediaStreamDevices const&, content::MediaStreamRequestResult)>::Run(base::internal::BindStateBase*) + 179
13  Chromium Embedded Framework         0x0000000106c4e17f base::Callback<void ()>::Run() const + 63
14  Chromium Embedded Framework         0x000000010071e438 base::debug::TaskAnnotator::RunTask(char const*, char const*, base::PendingTask const&) + 968
15  Chromium Embedded Framework         0x00000001007d53d5 base::MessageLoop::RunTask(base::PendingTask const&) + 597
16  Chromium Embedded Framework         0x00000001007d5569 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask const&) + 89
17  Chromium Embedded Framework         0x00000001007d5833 base::MessageLoop::DoWork() + 323
18  Chromium Embedded Framework         0x00000001006e5600 base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) + 144
19  Chromium Embedded Framework         0x00000001007d4ed9 base::MessageLoop::RunHandler() + 249
20  Chromium Embedded Framework         0x000000010083342c base::RunLoop::Run() + 76
21  Chromium Embedded Framework         0x00000001007d444f base::MessageLoop::Run() + 47
22  Chromium Embedded Framework         0x0000000100895a37 base::Thread::Run(base::MessageLoop*) + 39
23  Chromium Embedded Framework         0x0000000106ba04f7 content::BrowserThreadImpl::IOThreadRun(base::MessageLoop*) + 71
24  Chromium Embedded Framework         0x0000000106ba06de content::BrowserThreadImpl::Run(base::MessageLoop*) + 334
25  Chromium Embedded Framework         0x0000000100895cee base::Thread::ThreadMain() + 558
26  Chromium Embedded Framework         0x0000000100880fe0 base::(anonymous namespace)::ThreadFunc(void*) + 288
27  libsystem_pthread.dylib             0x00007fff8a9382fc _pthread_body + 131
28  libsystem_pthread.dylib             0x00007fff8a938279 _pthread_body + 0
29  libsystem_pthread.dylib             0x00007fff8a9364b1 thread_start + 13


Thanks,
-Jason-
JasonLP
Mentor
 
Posts: 98
Joined: Fri Jul 25, 2014 10:10 am

Re: Screen capture unavailable

Postby magreenblatt » Tue Jan 27, 2015 2:30 pm

Looks like it's not implemented in CEF. You can add an issue to the issue tracker.
magreenblatt
Site Admin
 
Posts: 12409
Joined: Fri May 29, 2009 6:57 pm


Return to Support Forum

Who is online

Users browsing this forum: No registered users and 78 guests