React Native WebRTC: невозможно отобразить видеопоток в Chrome - PullRequest
0 голосов
/ 25 апреля 2019

Я не могу отобразить поток с телефона на хром. Я успешно запустил видеопоток на обоих устройствах. Кроме того, я использовал socket.io/socket.io-client, чтобы соединить оба с успехом. Я подозреваю, что проблема лежит на SDP.

  • Телефон

    • Reaction-native-webrtc: 1.67.1
    • socket.io-client: 2.2.0
  • Сервер

    • soclet.io: 1.3.4
  • Chrome
    • версия: 74.0.3729.108

хром SDP

v=0
o=- 5317487332707689261 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE 0
a=msid-semantic: WMS nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK
m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 102 122 127 121 125 107 108 109 124 120 123
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:YnX2
a=ice-pwd:0/OIx879RHKlf8iFflUl7Ifc
a=ice-options:trickle
a=fingerprint:sha-256 3B:52:26:C1:2B:F9:6A:33:94:A0:82:F2:78:86:8A:16:71:8F:57:41:70:B8:9A:15:EB:A8:FC:1E:0C:54:E5:80
a=setup:actpass
a=mid:0
a=extmap:14 urn:ietf:params:rtp-hdrext:toffset
a=extmap:13 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:12 urn:3gpp:video-orientation
a=extmap:2 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:11 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=extmap:8 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07
a=extmap:9 http://www.webrtc.org/experiments/rtp-hdrext/color-space
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:4 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:5 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id
a=sendrecv
a=msid:nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK ae2885f7-ed4d-430e-be65-6faf93b0040b
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 VP8/90000
a=rtcp-fb:96 goog-remb
a=rtcp-fb:96 transport-cc
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=rtpmap:97 rtx/90000
a=fmtp:97 apt=96
a=rtpmap:98 VP9/90000
a=rtcp-fb:98 goog-remb
a=rtcp-fb:98 transport-cc
a=rtcp-fb:98 ccm fir
a=rtcp-fb:98 nack
a=rtcp-fb:98 nack pli
a=fmtp:98 profile-id=0
a=rtpmap:99 rtx/90000
a=fmtp:99 apt=98
a=rtpmap:100 VP9/90000
a=rtcp-fb:100 goog-remb
a=rtcp-fb:100 transport-cc
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=fmtp:100 profile-id=2
a=rtpmap:101 rtx/90000
a=fmtp:101 apt=100
a=rtpmap:102 H264/90000
a=rtcp-fb:102 goog-remb
a=rtcp-fb:102 transport-cc
a=rtcp-fb:102 ccm fir
a=rtcp-fb:102 nack
a=rtcp-fb:102 nack pli
a=fmtp:102 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f
a=rtpmap:122 rtx/90000
a=fmtp:122 apt=102
a=rtpmap:127 H264/90000
a=rtcp-fb:127 goog-remb
a=rtcp-fb:127 transport-cc
a=rtcp-fb:127 ccm fir
a=rtcp-fb:127 nack
a=rtcp-fb:127 nack pli
a=fmtp:127 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001f
a=rtpmap:121 rtx/90000
a=fmtp:121 apt=127
a=rtpmap:125 H264/90000
a=rtcp-fb:125 goog-remb
a=rtcp-fb:125 transport-cc
a=rtcp-fb:125 ccm fir
a=rtcp-fb:125 nack
a=rtcp-fb:125 nack pli
a=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f
a=rtpmap:107 rtx/90000
a=fmtp:107 apt=125
a=rtpmap:108 H264/90000
a=rtcp-fb:108 goog-remb
a=rtcp-fb:108 transport-cc
a=rtcp-fb:108 ccm fir
a=rtcp-fb:108 nack
a=rtcp-fb:108 nack pli
a=fmtp:108 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01f
a=rtpmap:109 rtx/90000
a=fmtp:109 apt=108
a=rtpmap:124 red/90000
a=rtpmap:120 rtx/90000
a=fmtp:120 apt=124
a=rtpmap:123 ulpfec/90000
a=ssrc-group:FID 1967647713 2077546824
a=ssrc:1967647713 cname:k5RQwAvnYIaOVgq5
a=ssrc:1967647713 msid:nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK ae2885f7-ed4d-430e-be65-6faf93b0040b
a=ssrc:1967647713 mslabel:nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK
a=ssrc:1967647713 label:ae2885f7-ed4d-430e-be65-6faf93b0040b
a=ssrc:2077546824 cname:k5RQwAvnYIaOVgq5
a=ssrc:2077546824 msid:nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK ae2885f7-ed4d-430e-be65-6faf93b0040b
a=ssrc:2077546824 mslabel:nUQOBFztWmJw0b7ctwXuvKCKADXjFFwEqVpK
a=ssrc:2077546824 label:ae2885f7-ed4d-430e-be65-6faf93b0040b

Телефон SDP

v=0
o=- 2835228709549615571 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
a=msid-semantic: WMS d67b1a70-ed93-4dad-994f-ffc8ac3638d9
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 102 0 8 105 13 110 113 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:p1WO
a=ice-pwd:xWWbA4VK79XTADK2B9kU0kQD
a=ice-options:trickle renomination
a=fingerprint:sha-256 99:77:37:38:10:AE:6C:34:38:FA:4E:52:E3:8B:7F:82:EB:F8:07:6F:DF:99:B1:87:0F:18:5E:01:93:1B:B6:0D
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=recvonly
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:9 G722/8000
a=rtpmap:102 ILBC/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:113 telephone-event/16000
a=rtpmap:126 telephone-event/8000
m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:p1WO
a=ice-pwd:xWWbA4VK79XTADK2B9kU0kQD
a=ice-options:trickle renomination
a=fingerprint:sha-256 99:77:37:38:10:AE:6C:34:38:FA:4E:52:E3:8B:7F:82:EB:F8:07:6F:DF:99:B1:87:0F:18:5E:01:93:1B:B6:0D
a=setup:actpass
a=mid:video
a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:4 urn:3gpp:video-orientation
a=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 VP8/90000
a=rtcp-fb:96 goog-remb
a=rtcp-fb:96 transport-cc
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=rtpmap:97 rtx/90000
a=fmtp:97 apt=96
a=rtpmap:98 VP9/90000
a=rtcp-fb:98 goog-remb
a=rtcp-fb:98 transport-cc
a=rtcp-fb:98 ccm fir
a=rtcp-fb:98 nack
a=rtcp-fb:98 nack pli
a=rtpmap:99 rtx/90000
a=fmtp:99 apt=98
a=rtpmap:100 red/90000
a=rtpmap:101 rtx/90000
a=fmtp:101 apt=100
a=rtpmap:127 ulpfec/90000
a=ssrc-group:FID 1936539094 3073573221
a=ssrc:1936539094 cname:O+yynnMeOPKYzouC
a=ssrc:1936539094 msid:d67b1a70-ed93-4dad-994f-ffc8ac3638d9 324d9f4a-39d6-4e4e-b260-ebe3f2f4d2c2
a=ssrc:1936539094 mslabel:d67b1a70-ed93-4dad-994f-ffc8ac3638d9
a=ssrc:1936539094 label:324d9f4a-39d6-4e4e-b260-ebe3f2f4d2c2
a=ssrc:3073573221 cname:O+yynnMeOPKYzouC
a=ssrc:3073573221 msid:d67b1a70-ed93-4dad-994f-ffc8ac3638d9 324d9f4a-39d6-4e4e-b260-ebe3f2f4d2c2
a=ssrc:3073573221 mslabel:d67b1a70-ed93-4dad-994f-ffc8ac3638d9
a=ssrc:3073573221 label:324d9f4a-39d6-4e4e-b260-ebe3f2f4d2c2

Та же конфигурация работает в Firefox

Firefox SDP

v=0
o=mozilla...THIS_IS_SDPARTA-66.0.3 1538246649961491999 0 IN IP4 0.0.0.0
s=-
t=0 0
a=sendrecv
a=fingerprint:sha-256 5A:6E:48:E7:47:04:77:62:BE:02:E5:CD:2B:F8:A4:C9:5C:74:50:E3:BF:26:A7:8D:A7:20:67:FE:75:DF:49:86
a=group:BUNDLE 0 1
a=ice-options:trickle
a=msid-semantic:WMS *
m=audio 9 UDP/TLS/RTP/SAVPF 109 9 0 8 101
c=IN IP4 0.0.0.0
a=sendrecv
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:2/recvonly urn:ietf:params:rtp-hdrext:csrc-audio-level
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=fmtp:109 maxplaybackrate=48000;stereo=1;useinbandfec=1
a=fmtp:101 0-15
a=ice-pwd:5de74b5a2b3063e7910d1f8426038e0c
a=ice-ufrag:3990ea79
a=mid:0
a=msid:{9487f737-1b84-4ad1-8c22-473dcb50fbab} {778fb779-8e9f-4bf0-be3f-6aba81ce944a}
a=rtcp-mux
a=rtpmap:109 opus/48000/2
a=rtpmap:9 G722/8000/1
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:101 telephone-event/8000
a=setup:actpass
a=ssrc:1914872000 cname:{dbcffff8-0aac-44b4-be41-7d2af875b9f2}
m=video 9 UDP/TLS/RTP/SAVPF 120 121 126 97
c=IN IP4 0.0.0.0
a=sendrecv
a=extmap:3 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:4 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:5 urn:ietf:params:rtp-hdrext:toffset
a=fmtp:126 profile-level-id=42e01f;level-asymmetry-allowed=1;packetization-mode=1
a=fmtp:97 profile-level-id=42e01f;level-asymmetry-allowed=1
a=fmtp:120 max-fs=12288;max-fr=60
a=fmtp:121 max-fs=12288;max-fr=60
a=ice-pwd:5de74b5a2b3063e7910d1f8426038e0c
a=ice-ufrag:3990ea79
a=mid:1
a=msid:{9487f737-1b84-4ad1-8c22-473dcb50fbab} {4fe18954-9cfa-4b9d-be0f-e3b8d3d93eb9}
a=rtcp-fb:120 nack
a=rtcp-fb:120 nack pli
a=rtcp-fb:120 ccm fir
a=rtcp-fb:120 goog-remb
a=rtcp-fb:121 nack
a=rtcp-fb:121 nack pli
a=rtcp-fb:121 ccm fir
a=rtcp-fb:121 goog-remb
a=rtcp-fb:126 nack
a=rtcp-fb:126 nack pli
a=rtcp-fb:126 ccm fir
a=rtcp-fb:126 goog-remb
a=rtcp-fb:97 nack
a=rtcp-fb:97 nack pli
a=rtcp-fb:97 ccm fir
a=rtcp-fb:97 goog-remb
a=rtcp-mux
a=rtpmap:120 VP8/90000
a=rtpmap:121 VP9/90000
a=rtpmap:126 H264/90000
a=rtpmap:97 H264/90000
a=setup:actpass
a=ssrc:2378880311 cname:{dbcffff8-0aac-44b4-be41-7d2af875b9f2}

Если вы хотите продублировать, вот проекты:

...