The problem is when I share my screen from my laptop with Windows to the RPi the stream is black (Chromium 48) or the stream is invisible (Chromium 49). There is always the blob of the video in the <video>
tag.
Let me explain it, I am developing a Chrome Extension to share the desktop vía WebRTC. I need a signaling server that I developed with NodeJS and the Peer that recieve the stream is a webpage serve by the same server. The webpage is where we can see the video stream in a RPi with Chromium, 48 and 49. The client, who captures the screen, has the chrome-extension and the player are inside the same network.
The extension works almost everytime but I have some exceptions. In the following cases it works:
| Pi Browser | Client OS | Client Browser | Works? |
|:------------:|:---------:|:------------------:|:------:|
| Chromium 48 | Linux | Chromium 50 | YES |
| Chromium 48 | Linux | Chrome 50 | YES |
| Chromium 49 | Linux | Chromium 50 | YES |
| Chromium 49 | Linux | Chrome 50 | YES |
| Chromium 48 | Windows | Chrome 49 | NO |
| Chromium 48 | Windows | Chrome 50 | NO |
| Chromium 48 | Windows | Chroma Canary (52) | YES |
| Chromium 49 | Windows | Chrome 49 | NO |
| Chromium 49 | Windows | Chrome 50 | NO |
| Chromium 49 | Windows | Chrome Canary (52) | YES |
Then I tried using the Chromium 50 and Chrome 50 on my laptop with Linux as a player and works everytime. Maybe the fault is for Chromium on RPi?
Meanwhile I was looking for a solution I found this: webrtc - video get blob, but it remain black. The case seems similar. I did what it says. Checked where is the addStream
, Used the deprecated API of setLocalDescription/setRemoteDescription(sdp, onsucc, onfail)
, always says it succeess. The answer has the mandatory: { OfferToReceiveVideo: true, OfferToReceiveAudio: true}}
but there is no change. I don't know what to do now for solve this.
Are there some workaround for this? I need to make it work for Windows without Chrome Canary. Maybe some flag I did not see in Chrome for Windows.