muaz-khan / RTCMultiConnection

RTCMultiConnection is a WebRTC JavaScript library for peer-to-peer applications (screen sharing, audio/video conferencing, file sharing, media streaming etc.)
https://muazkhan.com:9001/
MIT License
2.56k stars 1.38k forks source link

Connection fails On Android #558

Open ohohooops opened 6 years ago

ohohooops commented 6 years ago

I have already installed RTCMultiConnection from : https://github.com/muaz-khan/RTCMultiConnection

It works on PC IOS and some Android systems but while Android connects with laptop for joining video chat, laptop's user can't see video.

The laptop log message shows : remote peer sdp ... a = recvonly.

is there anything Android setting I can do to changing from 'recvonly' to 'sendrecv', Thank so much.

Remote peer's sdp: 
v=0
o=- 4505484166719341685 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video data
a=msid-semantic: WMS
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 9 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:JVcK
a=ice-pwd:4whuQgU0B4Mf8+TBngcaQx43
a=ice-options:trickle
a=fingerprint:sha-256 7A:E9:80:7D:77:6A:6C:4C:03:D9:94:DC:B1:CD:3E:10:91:7D:52:6F:C6:86:A2:3B:02:2D:2B:40:D9:7D:6E:B9
a=setup:active
a=mid:audio
b=AS:128
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; stereo=1; sprop-stereo=1; stereo=1; sprop-stereo=1; maxaveragebitrate=1024000; maxplaybackrate=1024000; stereo=1; sprop-stereo=1; stereo=1; sprop-stereo=1; maxaveragebitrate=1024000; maxplaybackrate=1024000
a=maxptime:3
a=maxptime:3
a=rtpmap:103 ISAC/16000
a=rtpmap:9 G722/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 102 123 108 109 124
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:JVcK
a=ice-pwd:4whuQgU0B4Mf8+TBngcaQx43
a=ice-options:trickle
a=fingerprint:sha-256 7A:E9:80:7D:77:6A:6C:4C:03:D9:94:DC:B1:CD:3E:10:91:7D:52:6F:C6:86:A2:3B:02:2D:2B:40:D9:7D:6E:B9
a=setup:active
a=mid:video
b=AS:300
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=recvonly
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=fmtp:96 x-google-min-bitrate=256; x-google-max-bitrate=256
a=fmtp:96 x-google-min-bitrate=256; x-google-max-bitrate=256
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: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=42e01f
a=rtpmap:123 rtx/90000
a=fmtp:123 apt=102
a=rtpmap:108 red/90000
a=rtpmap:109 rtx/90000
a=fmtp:109 apt=108
a=rtpmap:124 ulpfec/90000
m=application 9 DTLS/SCTP 5000
c=IN IP4 0.0.0.0
a=ice-ufrag:JVcK
a=ice-pwd:4whuQgU0B4Mf8+TBngcaQx43
a=ice-options:trickle
a=fingerprint:sha-256 7A:E9:80:7D:77:6A:6C:4C:03:D9:94:DC:B1:CD:3E:10:91:7D:52:6F:C6:86:A2:3B:02:2D:2B:40:D9:7D:6E:B9
a=setup:active
a=mid:data
a=sctpmap:5000 webrtc-datachannel 1024
AliBahramiEhsan commented 5 years ago

Due my tests the problem is related to android versions. New Android versions prevent accessing to mic or camera, but old versions (4.4 for example) are fine. Hope this helps