Google ChromeからSafariとfirefoxへScreenShareのStreamが通信できない
【発生事象】
Google Chromeでskywayのスクリーンシェアを行うextensionのskyway-screenshareを使ってStreamを取得し、
SkywayのJSライブラリのMediaConnectionを利用してSafariやFirefoxのブラウザへ送信を行いたいのですが、送信されません。
Google Chrome間やGoogle Chromeから Egdeへはskyway-screenshareで取得したStreamの送信が行えてます。
また、navigator.mediaDevices.getUserMedia()によるPCカメラのMediaStreamの送受信は、
Google ChromeからSafari、Firefox共に行えています。(Google ChromeとEgdeも同様に行えています)
skyway-screenshareで取得したStreamについてかつ、Google ChromeからSafari、Firefox間でのみ発生しています。
【環境】
# クライアント+バージョン
- Chrome Version 72.0.3626.121
- Safari Version 12.0.3 (13606.4.5.3.1)
- Firefox Version 65.0.1
- Edge Version 42.17134.167.0
# OS
- Windows 10
- macOS 10.13.6
# ネットワーク
- 固定回線
# 使用ライブラリのバージョン
- skyway-screenshare v1.0.1
- skyway-js-sdk v1.1.20
【再現手順】
Google Chrome側をA、Safari(またはFirefox)側をBとする。
- 1. Aにskyway-screenshareを使用して作成したextensionを入れる。
- 2. Aはscreenshare.start()でスクリーンのStreamを取得する。
- 3. Aはpeer.on('call', call => { call.answer(stream) })でB側のcallを待ち受ける。
- 4. Bでpeer.call(PEER_ID)もしくはpeer.call(PEER_ID, null)を行い、発信を行う。
- 5. Bはcall.on('stream', stream => {}でA側の応答を待ち受ける。
- 6. Aのcall.answer(stream)が発火する。
- 7. しかし、Bのcall.on('stream', stream => {}にstreamが渡って来ない。
P2Pに置ける1方向通信の方法についてはこちらの記事のP56を参考にしています。
https://www.slideshare.net/iwashi86/skyway-how-to-use-skyway-webrtc
1方向通信がまずいのかと思い、手順4にて、Bで取得したPCカメラのstreamを渡してみたりもしましたが同様に7でBにstreamが渡ってくることはなかったです。
【期待される事象】
- SafariとFirefoxにScreen Shareのstreamが渡ってきて、videoタグ内で表示できること。
【その他】
- consoleでは特に何もエラーは出ていません。
Please sign in to leave a comment.
Comments
1 comment