問題タブ [apprtc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - appr.tc のネイティブ Android アプリ
私は数週間以来、https://github.com/njovy/AppRTCDemo
apprtc. ルームサーバーの URL として appr.tc を使用すると、アプリは完全に機能しました。私はすでに Ubuntu で apprtc プロジェクトをセットアップしており、Ubuntu マシンのブラウザーとモバイル デバイスのブラウザーなどとの間で会議を作成できます。しかし、ubuntu のブラウザーとアプリの間の接続を確立しようとすると、常に次のエラーが表示されます。
エラー メッセージに記載されている URL は、src/app_engine/constants.py ( https://github.com/webrtc/apprtc/blob/master/src/app_engine/constants.py
) で定義されています。しかし、私はそれをどうするか見当がつかない
それで、私はこれまで何をしましたか?(ほぼ apprtc のデプロイ過程ですhttps://github.com/webrtc/apprtc#deployment
)
- git から apprtc の最新バージョンをダウンロードしました
- npm、nodejs、grunt をインストール
- grunt build を使用してソースをビルドする
- ダウンロード、インストール、構成されたコライダー (コライダーは rtc:8089 で実行されます)
- 4.1 Workspace/src/collidermain の main.go を次のように変更する必要がありました
: var roomSrv = flag.String("room-server", "hxxps://appr.tc", "The origin of the room server")
から: var roomSrv = flag.String("room-server", "hxxp://rtc", "ルームサーバーの由来")- 4.2 また、src/app_engine/constants.py で WS_INSTANCE_HOST_KEY を colliders アドレス rtc:8089 に変更しました
- CoTurn をインストールし、次のような turnserver.conf を追加しました
listen-port=3478
listen-ip=192.168.178.20
user=rtc:webrtc
cert=/home/rtc/work/src/collider/cert/cert.pem
pkey=/ホーム/rtc/work/src/collider/cert/key.pem
Collider は 192.168.178.20:8089 (または rtc:8089) で実行され、turnserver は 192.168.178.20:3478 で実行されます。turnserver.conf で定義されている認証情報: ユーザー名 = rtc、パスワード = webrtc
セットアップ後、requestIceServers-Method を src/web_app/js/util.js に追加しました ( https://github.com/webrtc/apprtc/blob/master/src/web_app/js/util.js
)
標準的な方法をコメントアウトしました:
GAE を開始すると、ターンサーバーとコライダーが
2 つのブラウザー クライアント間の接続を確立できます (コライダー ターミナルからのログ)
ネイティブ アプリ経由で接続しようとすると、常に上記のエラーが表示されます。
調査の結果、git で次のリンクを見つけましたが、あまり役に立ちませんでした。https://github.com/webrtc/apprtc/issues/366
そこで、constants.py ( https://github.com/webrtc/apprtc/blob/master/src/app_engine/constants.py
) をいじってみることにし、Turn/Stun サーバーをオーバーライドする場所を見つけました。
そのため、TURN_SERVER_OVERRIDE = [] をコメントアウトし、他の行をコメントアウトして、turnserver.conf で構成されたターンサーバーの IP と資格情報を入力しました。
GAE は、アプリからの新しい要求があることを認識しています。記録する
それでも同じエラーがスローされます。
これでもうまくいかないので、ターンサーバーアドレスをICE_SERVER_BASE_URLに挿入しようとしました(まだconstants.pyにあります)
に変更
これにより、エラーが次のように変更されました。
しかし、今ではブラウザーからホストを開くことができなくなりました。したがって、それは完全に間違っている可能性があると思います。
- ネイティブ アプリを使用して会議を確立する方法がわかりましたか?
- エラーの原因となる可能性のある networktraversal.googleapis.com URL をバイパスするにはどうすればよいですか?
- バイパスする必要がありますか?
前もって感謝します!
android - MediaProjection API を使用せずに、AppRTC オーディオ/ビデオ通話 android でローカル カメラ フィードを記録する
AppRTC Demo を使用してオーディオ/ビデオ通話を行いました。私が達成したいのは、MediaProjection api を使用して画面全体を記録するのではなく、Android で AppRTC 呼び出しのローカル カメラ フィードのみを記録することです。これに関する解決策を提供していただければ大変助かります。
ios - iOS から iOS へのアプリ RTC 呼び出しが機能しない
ios から ios で動作しない appRTC でテストしているとき、server( https://apprtc.appspot.com
) 呼び出しは iOS から iOS、iOS から Android、Android から iOS で動作します。
しかし、私はカスタム server( http://192.168.0.100:8080
) 呼び出しでテストしていますが、iOS から iOS へ、および iOS から Android へは機能しません。しかし、Android から iOS までは正常に動作しています。
appRTC サーバーとカスタム サーバーでテストすると、以下のログが見つかります。
AppRTC サーバー ログ
messages=("{\"sdp\":\"v=0\r\no=- 1775027741179794605 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=グループ:バンドルaudio video\r\na=msid-semantic: WMS ARDAMS\r\nm=audio 9 UDP\/TLS\/RTP\/SAVPF 111 103 9 102 0 8 106 105 13 127 126\r\nc=IN IP4 0.0. 0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:\/tWQo+jqPxhIl3IN\r\na=ice-pwd:2ygl5p2voV6hCnWEoousQ4lf\r\na=フィンガープリント:sha-256 B7: F8:19:8E:8E:4B:7B:2D:08:41:C4:84:02:5F:7A:87:36:70:FC:75:A4:5B:BD:BB:E1:02: C2:00:94:09:50:42\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level \r\na=extmap:3 http:\/\/www.webrtc.org\/experiments\/rtp-hdrext\/abs-send-time\r\na=sendrecv\r\na=rtcp-mux\r \na=rtpmap:111 opus\/48000\/2\r\na=fmtp:111 minptime=10; useinbandfec=1\r\na=rtpmap:103 ISAC\/16000\r\na=rtpmap:9 G722\ /8000\r\na=rtpmap:102 ILBC\/8000\r\na=rtpmap:0 PCMU\/8000\r\na=rtpmap:8 PCMA\/8000\r\na=rtpmap:106 CN\/32000\r\na=rtpmap:105 CN\/16000\r\na=rtpmap:13CN\ /8000\r\na=rtpmap:127 red\/8000\r\na=rtpmap:126telephone-event\/8000\r\na=maxptime:60\r\na=ssrc:2389551740 cname:1Yy7HlmkEzRJ8MGE\r\na =ssrc:2389551740 msid:ARDAMS ARDAMSa0\r\na=ssrc:2389551740 mslabel:ARDAMS\r\na=ssrc:2389551740 label:ARDAMSa0\r\nm=video 9 UDP\/TLS\/RTP\/SAVPF 100 101 116 117 96\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:\/tWQo+jqPxhIl3IN\r\na=ice-pwd:2ygl5p2voV6hCnWEoousQ4lf\ r\na=fingerprint:sha-256 B7:F8:19:8E:8E:4B:7B:2D:08:41:C4:84:02:5F:7A:87:36:70:FC:75:A4 :5B:BD:BB:E1:02:C2:00:94:09:50:42\r\na=setup:actpass\r\na=mid:video\r\na=extmap:2 urn:ietf: params:rtp-hdrext:toffset\r\na=extmap:3 http:\/\/www.webrtc.org\/experiments\/rtp-hdrext\/abs-send-time\r\na=extmap: 4 urn :3gpp:ビデオ方向\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb: 100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\ r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na =ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na=ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:63999 :1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na=ssrc:639993057 mslabel:ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\ "オファー\"}"100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli \r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\ r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na= ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na=sslabel:639 mslabel55 ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli \r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\ r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na= ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na=sslabel:639 mslabel55 ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000 \r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na =ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na=sslabel:639 mslabel:639 mslabel555 :ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000 \r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na =ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na=sslabel:639 mslabel:639 mslabel555 :ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na=ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na =ssrc:639993057 mslabel:ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1323191592 639993057\r\na=ssrc:1323191592 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:1323191592 msid:ARDAMS ARDAMSv0\r\na=ssrc:1323191592 mslabel:ARDAMS\r\na=ssrc:1323191592 label:ARDAMSv0\r\na=ssrc:639993057 cname:1Yy7HlmkEzRJ8MGE\r\na=ssrc:639993057 msid:ARDAMS ARDAMSv0\r\na =ssrc:639993057 mslabel:ARDAMS\r\na=ssrc:639993057 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"}"}"
私のカスタム サーバー ログ
ビデオ方向\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb: 100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\ r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na =ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na=ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc2:28489 cname :lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na=ssrc:2989628045 mslabel:ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\ "オファー\"}"; } 100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli \r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\ r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na= ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na=ssrc2:8085mslabel ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; } 100 VP8\/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli \r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000\ r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na= ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na=ssrc2:8085mslabel ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; } 100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000 \r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na =ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na=ssrc2:28089 mslabel :ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; } 100 goog-remb\r\na=rtpmap:101 VP9\/90000\r\na=rtcp-fb:101 ccm fir\r\na=rtcp-fb:101 nack\r\na=rtcp-fb:101 nack pli\r\na=rtcp-fb:101 goog-remb\r\na=rtpmap:116 red\/90000\r\na=rtpmap:117 ulpfec\/90000\r\na=rtpmap:96 rtx\/90000 \r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na =ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na=ssrc2:28089 mslabel :ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; } 96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na=ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na =ssrc:2989628045 mslabel:ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; } 96 rtx\/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 1382966710 2989628045\r\na=ssrc:1382966710 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:1382966710 msid:ARDAMS ARDAMSv0\r\na=ssrc:1382966710 mslabel:ARDAMS\r\na=ssrc:1382966710 label:ARDAMSv0\r\na=ssrc:2989628045 cname:lIYSgGVkbmqAsNjY\r\na=ssrc:2989628045 msid:ARDAMS ARDAMSv0\r\na =ssrc:2989628045 mslabel:ARDAMS\r\na=ssrc:2989628045 label:ARDAMSv0\r\n\",\"type\":\"offer\"}"; }