microsoft / MixedReality-WebRTC

MixedReality-WebRTC is a collection of components to help mixed reality app developers integrate audio and video real-time communication into their application and improve their collaborative experience
https://microsoft.github.io/MixedReality-WebRTC/
MIT License
908 stars 282 forks source link

Unable to See Remote Video #438

Open OmarAYousry opened 4 years ago

OmarAYousry commented 4 years ago

Describe the bug When attempting remote connection with another person, the SDP messages are received normally, but streaming does NOT begin. I have tried this both with my own project built loosely following the tutorial, as well as with the sample project (The VideoChatDemo scene)

To Reproduce Steps to reproduce the behavior:

  1. Use the VideoChatDemo 2.a Try to communicate with another editor 2.b Or Build for Windows and try to set up locally (local camera will not be visible for the later opening client but should otherwise be fine)
  2. Try to establish connection with the other client
  3. Get normal looking SDP messages output, but no video/audio stream is shared.

Expected behavior The users should be able to see and hear each other

SDP messages SDP messages are extremely helpful to diagnose a wide range of issues from connection not being established to audio/video issues and codecs issues.

Offer message (P.S. received after answer did nothing (log shown below)) Received SDP message: type=Offer data=v=0 o=- 4691426409345635979 3 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=video 51506 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 41.41.3.200 a=rtcp:9 IN IP4 0.0.0.0 a=candidate:2242400739 1 udp 2122265343 fd8c:d76:4492:d00:3dc3:35cd:a333:6824 51504 typ host generation 0 network-id 2 network-cost 10 a=candidate:1853739457 1 udp 2122199807 fd8c:d76:4492:d00:b9e6:abaa:a3d8:bc96 51505 typ host generation 0 network-id 3 network-cost 10 a=candidate:1270274445 1 udp 2122129151 192.168.1.11 51506 typ host generation 0 network-id 1 network-cost 10 a=candidate:3181813849 1 udp 1685921535 41.41.3.200 51506 typ srflx raddr 192.168.1.11 rport 51506 generation 0 network-id 1 network-cost 10 a=candidate:3408637203 1 tcp 1518285567 fd8c:d76:4492:d00:3dc3:35cd:a333:6824 49652 typ host tcptype passive generation 0 network-id 2 network-cost 10 a=candidate:553528625 1 tcp 1518220031 fd8c:d76:4492:d00:b9e6:abaa:a3d8:bc96 49653 typ host tcptype passive generation 0 network-id 3 network-cost 10 a=candidate:87369085 1 tcp 1518149375 192.168.1.11 49654 typ host tcptype passive generation 0 network-id 1 network-cost 10 a=ice-ufrag:NVrk a=ice-pwd:/nP7B/Ba4buGoW/Ck9gaXD56 a=ice-options:trickle a=fingerprint:sha-256 5A:3C:6C:29:15:8C:5C:6E:B7:27:D1:C8:0F:8C:A5:EC:70:30:AD:6B:FA:51:0A:07:34:F9:C5:96:0D:9D:06:99 a=setup:actpass a=mid:0 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendonly a=msid:- 4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 637320234 3989652772 a=ssrc:637320234 cname:2X+XWjT6ZUaO4R56 a=ssrc:637320234 msid: 4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 a=ssrc:637320234 mslabel: a=ssrc:637320234 label:4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 a=ssrc:3989652772 cname:2X+XWjT6ZUaO4R56 a=ssrc:3989652772 msid: 4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 a=ssrc:3989652772 mslabel: a=ssrc:3989652772 label:4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:NVrk a=ice-pwd:/nP7B/Ba4buGoW/Ck9gaXD56 a=ice-options:trickle a=fingerprint:sha-256 5A:3C:6C:29:15:8C:5C:6E:B7:27:D1:C8:0F:8C:A5:EC:70:30:AD:6B:FA:51:0A:07:34:F9:C5:96:0D:9D:06:99 a=setup:actpass a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendonly a=msid:- f5e2b1bb-f54d-4d82-be41-7f6da9431fcd 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 3151679198 542346878 a=ssrc:3151679198 cname:2X+XWjT6ZUaO4R56 a=ssrc:3151679198 msid: f5e2b1bb-f54d-4d82-be41-7f6da9431fcd a=ssrc:3151679198 mslabel: a=ssrc:3151679198 label:f5e2b1bb-f54d-4d82-be41-7f6da9431fcd a=ssrc:542346878 cname:2X+XWjT6ZUaO4R56 a=ssrc:542346878 msid: f5e2b1bb-f54d-4d82-be41-7f6da9431fcd a=ssrc:542346878 mslabel: a=ssrc:542346878 label:f5e2b1bb-f54d-4d82-be41-7f6da9431fcd UnityEngine.Debug:Log(Object) Microsoft.MixedReality.WebRTC.Unity.NodeDssSignaler:DebugLogLong(String) (at Assets/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:387) Microsoft.MixedReality.WebRTC.Unity.d__14:MoveNext() (at Assets/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:294) UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17) (starts with "v=0")
Answer message Received SDP message: type=Answer data=v=0 o=- 4691426409345635979 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:NVrk a=ice-pwd:/nP7B/Ba4buGoW/Ck9gaXD56 a=ice-options:trickle a=fingerprint:sha-256 5A:3C:6C:29:15:8C:5C:6E:B7:27:D1:C8:0F:8C:A5:EC:70:30:AD:6B:FA:51:0A:07:34:F9:C5:96:0D:9D:06:99 a=setup:active a=mid:0 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=inactive a=msid:- 4fbb46f2-9afe-45dd-8bf0-2102a6ecce88 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 637320234 3989652772 a=ssrc:637320234 cname:2X+XWjT6ZUaO4R56 a=ssrc:3989652772 cname:2X+XWjT6ZUaO4R56 m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:NVrk a=ice-pwd:/nP7B/Ba4buGoW/Ck9gaXD56 a=ice-options:trickle a=fingerprint:sha-256 5A:3C:6C:29:15:8C:5C:6E:B7:27:D1:C8:0F:8C:A5:EC:70:30:AD:6B:FA:51:0A:07:34:F9:C5:96:0D:9D:06:99 a=setup:active a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=inactive a=msid:- f5e2b1bb-f54d-4d82-be41-7f6da9431fcd 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 3151679198 542346878 a=ssrc:3151679198 cname:2X+XWjT6ZUaO4R56 a=ssrc:542346878 cname:2X+XWjT6ZUaO4R56 UnityEngine.Debug:Log(Object) Microsoft.MixedReality.WebRTC.Unity.NodeDssSignaler:DebugLogLong(String) (at Assets/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:387) Microsoft.MixedReality.WebRTC.Unity.d__14:MoveNext() (at Assets/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:294) UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17) (starts with "v=0")

Screenshots If applicable, add screenshots to help explain your problem.

Environment Please fill the information for each peer if different

Additional context I found this issue which seemed pretty similar to mine, it's somewhat old and remains unresolved. https://github.com/microsoft/MixedReality-WebRTC/issues/148

OmarAYousry commented 4 years ago

image image I figured these screenshots might be helpful. Note that they're from another time I ran this though (PC is Windows standalone, UNITY is Editor, both x64, same device)

djee-ms commented 4 years ago

@OmarAYousry can you share the PeerConnection transceiver configuration please? The answering peer refuses the video and sends an answer with inactive instead of recvonly, there is likely a bad setup.

OmarAYousry commented 4 years ago

Sadly don't have it right now, as I've updated the project since then. It was the old VideoChatDemo sample. I've attached my PeerConnection for my own personal project below (which is also failing with the same problem, although I have not seen its logs), and I think I have an old version of the demo lying around. I'll try to find that and upload its data in a few hours.

image

OmarAYousry commented 4 years ago

@djee-ms So I updated the repository, rebuilt (the release) solution, started a new project with the new method of adding the library as a package, followed by the samples. Tried it out with a friend, worked fine, Tried it with someone from work, same issue. He made the offer, which I got and responded to, but we still could not see or hear each other. Find his offer message (to my Unity Editor) followed by my answer message (to his Windows Standalone Build). We are both running Windows x64 machines.

Received SDP message: type=Offer data=v=0 o=- 2431552961804350494 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:gYTx a=ice-pwd:q07fMNpRIN+ZEyR9Bk4xmiaG a=ice-options:trickle a=fingerprint:sha-256 E1:9D:D3:68:DB:E8:F3:65:3B:96:53:D0:E4:E3:0E:C1:27:A6:51:22:24:62:5A:AA:D6:6B:65:AD:10:F6:56:87 a=setup:actpass a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- 98d21840-01b0-4f75-94c8-14e91c590885 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:3776941527 cname:mHbt0D/3hGXT1hde a=ssrc:3776941527 msid: 98d21840-01b0-4f75-94c8-14e91c590885 a=ssrc:3776941527 mslabel: a=ssrc:3776941527 label:98d21840-01b0-4f75-94c8-14e91c590885 m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:gYTx a=ice-pwd:q07fMNpRIN+ZEyR9Bk4xmiaG a=ice-options:trickle a=fingerprint:sha-256 E1:9D:D3:68:DB:E8:F3:65:3B:96:53:D0:E4:E3:0E:C1:27:A6:51:22:24:62:5A:AA:D6:6B:65:AD:10:F6:56:87 a=setup:actpass a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- 5c3b419b-1a1f-4c15-8241-4a57b6442153 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 3050377963 3060595849 a=ssrc:3050377963 cname:mHbt0D/3hGXT1hde a=ssrc:3050377963 msid: 5c3b419b-1a1f-4c15-8241-4a57b6442153 a=ssrc:3050377963 mslabel: a=ssrc:3050377963 label:5c3b419b-1a1f-4c15-8241-4a57b6442153 a=ssrc:3060595849 cname:mHbt0D/3hGXT1hde a=ssrc:3060595849 msid: 5c3b419b-1a1f-4c15-8241-4a57b6442153 a=ssrc:3060595849 mslabel: a=ssrc:3060595849 label:5c3b419b-1a1f-4c15-8241-4a57b6442153

UnityEngine.Debug:Log(Object) Microsoft.MixedReality.WebRTC.Unity.NodeDssSignaler:DebugLogLong(String) (at C:/mr-webrtc/libs/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:387) Microsoft.MixedReality.WebRTC.Unity.d__14:MoveNext() (at C:/mr-webrtc/libs/unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:294) UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17)

Received SDP message: type=Answer data=v=0 o=- 2421152154039235334 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:COp7 a=ice-pwd:cUgkNB4d/wrq7uoy7mm/dKTb a=ice-options:trickle a=fingerprint:sha-256 DF:59:5A:B5:44:4F:0C:8A:60:DA:5D:AA:37:7F:7E:A4:16:8E:59:DB:17:B7:A2:F7:33:7C:B1:50:33:C5:1E:DA a=setup:active a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- e41fb475-b1e4-49cf-9fe1-8abe0e258d6a 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:27803258 cname:EYSSFQjdIjMqUp0K m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:COp7 a=ice-pwd:cUgkNB4d/wrq7uoy7mm/dKTb a=ice-options:trickle a=fingerprint:sha-256 DF:59:5A:B5:44:4F:0C:8A:60:DA:5D:AA:37:7F:7E:A4:16:8E:59:DB:17:B7:A2:F7:33:7C:B1:50:33:C5:1E:DA a=setup:active a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- 1154e215-57d0-46d1-8ab5-985447524243 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 233901241 1257468400 a=ssrc:233901241 cname:EYSSFQjdIjMqUp0K a=ssrc:1257468400 cname:EYSSFQjdIjMqUp0K

This is the config for the peer connection (just the default of the (most recent) VideoChatDemo) image

OmarAYousry commented 4 years ago

Was looking at his output log and found this

Exception: Object not found. at Microsoft.MixedReality.WebRTC.Interop.Utils.ThrowOnErrorCode (System.UInt32 res) [0x00015] in :0 at Microsoft.MixedReality.WebRTC.DeviceVideoTrackSource+<>c__DisplayClass2_0.b0 () [0x00016] in :0 at System.Threading.Tasks.Task1[TResult].InnerInvoke () [0x0000f] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Threading.Tasks.Task.Execute () [0x00010] in <2fa7a6a452ca43df998f07fd1486c0df>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Runtime.CompilerServices.TaskAwaiter1[TResult].GetResult () [0x00000] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at Microsoft.MixedReality.WebRTC.Unity.WebcamSource+d8.MoveNext () [0x00145] in :0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.b__6_0 (System.Object state) [0x00000] in <2fa7a6a452ca43df998f07fd1486c0df>:0 at UnityEngine.UnitySynchronizationContext+WorkRequest.Invoke () [0x00002] in <7cd45074592849c798ee04bb333cbf3a>:0 UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object) UnityEngine.DebugLogHandler:LogException(Exception, Object) UnityEngine.Logger:LogException(Exception, Object) UnityEngine.Debug:LogException(Exception) UnityEngine.WorkRequest:Invoke() UnityEngine.UnitySynchronizationContext:Exec() UnityEngine.UnitySynchronizationContext:ExecuteTasks()

Presumably due to a lack of working webcame on his device, would that cause the issue? Completely prevent us from communicating? Or is there something more in the SDP logs? (p.s. tried with another friend, also working fine)

djee-ms commented 4 years ago

Find his offer message (to my Unity Editor) followed by my answer message (to his Windows Standalone Build).

Now both the offer and answer have a=sendrecv so are negotiating a bidirectional audio and video session. This is all good.

Exception: Object not found. at Microsoft.MixedReality.WebRTC.Interop.Utils.ThrowOnErrorCode (System.UInt32 res) [0x00015] in :0 at Microsoft.MixedReality.WebRTC.DeviceVideoTrackSource+<>c__DisplayClass2_0.b__0 () [0x00016] in :0

This indicates that the implementation couldn't find a suitable camera and/or capture format to start video. You can always work around this by disabling video from the Standalone build to the Unity Editor build; simply remove the WebcamSource in the Standalone build. Now if you do not want to disable video:

image

When you say "Tried it with someone from work, same issue.", what exactly happen? Can you establish a connection and hear each other, and the video work one way but not the other? Or you cannot hear nor see each other any way? Hopefully if the webcam on the remote peer doesn't work, we should just be unable to use it, but everything else should work; if that's not the case and the exception above breaks also other parts then this is a bug and we should fix it.

OmarAYousry commented 4 years ago

Can you not use a wrapper that adjusts between both implementations depending on the camera/compatibility? Or is that not feasible?

What I meant happened was that we could neither hear or see each other. However, this does not seem related to the camera being missing, as I tried to remove the video player (no more error!), but we still could not see or hear each other, despite the SDP messages going through fine. I'll attach below logs from (IN FAIRNESS, I'm probably not good enough at this to have configured the peer connection properly, so that could have very well been a new problem that arose) 1) When I tried to remove the local video player (renderer and webcamsource) on the Standalone 2) When I tried to remove the local video player on the Standalone AND the remote video player on Unity Editor

Both were with me trying to connect; both times we could not hear or see each other. P.S. this seems to be a minor exception for now, seems to be working fine with everyone else, so if you don't see anything in the SDP logs feel free to ignore this for now and upon further testing I'll either close this or update it with logs from other devices (which would hopefully be different enough to be helpful)

OmarAYousry commented 4 years ago

This setting running on the Standalone device with no compatible webcam (and no local video source/renderer) image This (default) setting running on the Unity Editor image Logs from standalone:

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) WebRTC plugin initialized successfully.

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 54893 typ host generation 0 ufrag zvzr network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 54895 typ host generation 0 ufrag zvzr network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Offer data=v=0 o=- 7355898604569449074 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:zvzr a=ice-pwd:WZ1VGwf1VekZL05whUzbFYwr a=ice-options:trickle a=fingerprint:sha-256 19:A2:FB:79:18:BF:B3:EE:0D:8C:B0:8C:17:C8:C3:7D:39:F5:A3:05:53:6F:01:72:F1:7B:6E:B5:F7:8D:52:0B a=setup:actpass a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- 892260d7-cc4d-421d-a0a1-9b610aea8fe9 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:2275205473 cname:dnXQh7pP5cGIR1u/ a=ssrc:2275205473 msid: 892260d7-cc4d-421d-a0a1-9b610aea8fe9 a=ssrc:2275205473 mslabel: a=ssrc:2275205473 label:892260d7-cc4d-421d-a0a1-9b610aea8fe9 m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:zvzr a=ice-pwd:WZ1VGwf1VekZL05whUzbFYwr a=ice-options:trickle a=fingerprint:sha-256 19:A2:FB:79:18:BF:B3:EE:0D:8C:B0:8C:17:C8:C3:7D:39:F5:A3:05:53:6F:01:72:F1:7B:6E:B5:F7:8D:52:0B a=setup:actpass a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- cd5e3d7e-d873-4a40-b040-56de4e345637 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 2738022199 1269618544 a=ssrc:2738022199 cname:dnXQh7pP5cGIR1u/ a=ssrc:2738022199 msid: cd5e3d7e-d873-4a40-b040-56de4e345637 a=ssrc:2738022199 mslabel: a=ssrc:2738022199 label:cd5e3d7e-d873-4a40-b040-56de4e345637 a=ssrc:1269618544 cname:dnXQh7pP5cGIR1u/ a=ssrc:1269618544 msid: cd5e3d7e-d873-4a40-b040-56de4e345637 a=ssrc:1269618544 mslabel: a=ssrc:1269618544 label:cd5e3d7e-d873-4a40-b040-56de4e345637

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 54892 typ host generation 0 ufrag zvzr network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 54894 typ host generation 0 ufrag zvzr network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 54894 typ srflx raddr 192.168.0.105 rport 54894 generation 0 ufrag zvzr network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 54892 typ srflx raddr 192.168.0.105 rport 54892 generation 0 ufrag zvzr network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 64574 typ host tcptype passive generation 0 ufrag zvzr network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 64575 typ host tcptype passive generation 0 ufrag zvzr network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 64573 typ host tcptype passive generation 0 ufrag zvzr network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 64576 typ host tcptype passive generation 0 ufrag zvzr network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45)

Partial Logs from the Editor:

Received SDP message: type=Answer data=v=0 o=- 2073186027486467972 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:MN5Q a=ice-pwd:qtb6yVNfUypEfObAdYrNboR8 a=ice-options:trickle a=fingerprint:sha-256 ED:1A:DC:FA:06:27:F5:B7:95:FF:CB:78:86:CF:B5:45:0C:3C:C2:56:21:AB:42:C1:04:65:87:81:EA:4D:B0:F5 a=setup:active a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- 71cbc9fc-bab3-4727-9092-52a746476a3f 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:508928423 cname:JNiYGyVZPVHMjGcZ m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:MN5Q a=ice-pwd:qtb6yVNfUypEfObAdYrNboR8 a=ice-options:trickle a=fingerprint:sha-256 ED:1A:DC:FA:06:27:F5:B7:95:FF:CB:78:86:CF:B5:45:0C:3C:C2:56:21:AB:42:C1:04:65:87:81:EA:4D:B0:F5 a=setup:active a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid 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=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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000

UnityEngine.Debug:Log(Object) Microsoft.MixedReality.WebRTC.Unity.NodeDssSignaler:DebugLogLong(String) (at mr-webrtc-unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:387) Microsoft.MixedReality.WebRTC.Unity.d__14:MoveNext() (at mr-webrtc-unity/library/Runtime/Scripts/Signaling/NodeDssSignaler.cs:294) UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr) (at C:/buildslave/unity/build/Runtime/Export/Coroutines.cs:17)

OmarAYousry commented 4 years ago

This setting running on the Standalone device with no compatible webcam (and no local video source/renderer) image This running on the Editor (with no remote video source/renderer, here the set up made more sense, esp. as the peer connections line up (I think), but still couldn't contact each other at all) image (Unfortunately editor logs are missing) Logs from standalone:

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) WebRTC plugin initialized successfully.

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 52937 typ host generation 0 ufrag gPVc network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 52939 typ host generation 0 ufrag gPVc network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Offer data=v=0 o=- 7828199351927295570 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:gPVc a=ice-pwd:K+el6KUynJiLgiC/3d9PaPma a=ice-options:trickle a=fingerprint:sha-256 04:8C:E2:29:54:5E:C9:5A:8E:20:44:71:7E:3D:5A:A1:D2:5A:D4:80:EA:65:81:20:42:C4:63:AE:A8:CA:FD:D1 a=setup:actpass a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- d1ffb3a3-40fa-420a-b07f-c615eb2adc5c 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:1753013959 cname:gakHJChEyjJ6xqJn a=ssrc:1753013959 msid: d1ffb3a3-40fa-420a-b07f-c615eb2adc5c a=ssrc:1753013959 mslabel: a=ssrc:1753013959 label:d1ffb3a3-40fa-420a-b07f-c615eb2adc5c m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:gPVc a=ice-pwd:K+el6KUynJiLgiC/3d9PaPma a=ice-options:trickle a=fingerprint:sha-256 04:8C:E2:29:54:5E:C9:5A:8E:20:44:71:7E:3D:5A:A1:D2:5A:D4:80:EA:65:81:20:42:C4:63:AE:A8:CA:FD:D1 a=setup:actpass a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- dcf560ff-7b82-465e-b430-f39f95f3b349 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 4002418213 744279950 a=ssrc:4002418213 cname:gakHJChEyjJ6xqJn a=ssrc:4002418213 msid: dcf560ff-7b82-465e-b430-f39f95f3b349 a=ssrc:4002418213 mslabel: a=ssrc:4002418213 label:dcf560ff-7b82-465e-b430-f39f95f3b349 a=ssrc:744279950 cname:gakHJChEyjJ6xqJn a=ssrc:744279950 msid: dcf560ff-7b82-465e-b430-f39f95f3b349 a=ssrc:744279950 mslabel: a=ssrc:744279950 label:dcf560ff-7b82-465e-b430-f39f95f3b349

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 52936 typ host generation 0 ufrag gPVc network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 52938 typ host generation 0 ufrag gPVc network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 52936 typ srflx raddr 192.168.0.105 rport 52936 generation 0 ufrag gPVc network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 52938 typ srflx raddr 192.168.0.105 rport 52938 generation 0 ufrag gPVc network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 54332 typ host tcptype passive generation 0 ufrag gPVc network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 54333 typ host tcptype passive generation 0 ufrag gPVc network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 54334 typ host tcptype passive generation 0 ufrag gPVc network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 54335 typ host tcptype passive generation 0 ufrag gPVc network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 50936 typ host generation 0 ufrag vWTM network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 50937 typ host generation 0 ufrag vWTM network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:1221703924 1 udp 2122260223 192.168.0.105 50935 typ host generation 0 ufrag vWTM network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Offer data=v=0 o=- 876094222663785790 2 IN IP4 127.0.0.1 s=- t=0 0 a=group:BUNDLE 0 1 a=msid-semantic: WMS m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:vWTM a=ice-pwd:4z8hYz0ue5mjNDsiz/urExaS a=ice-options:trickle a=fingerprint:sha-256 14:41:18:28:F5:3F:87:4E:CF:06:60:13:A8:18:95:31:3C:DD:B4:00:28:28:FF:2A:69:19:E9:55:5B:91:00:0B a=setup:actpass a=mid:0 a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendrecv a=msid:- e155cdd8-d9ae-4333-8a30-264db4bcf0a9 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:104 ISAC/32000 a=rtpmap:9 G722/8000 a=rtpmap:102 ILBC/8000 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 a=rtpmap:106 CN/32000 a=rtpmap:105 CN/16000 a=rtpmap:13 CN/8000 a=rtpmap:110 telephone-event/48000 a=rtpmap:112 telephone-event/32000 a=rtpmap:113 telephone-event/16000 a=rtpmap:126 telephone-event/8000 a=ssrc:2897246504 cname:CpPOYjs5ymMqIq/y a=ssrc:2897246504 msid: e155cdd8-d9ae-4333-8a30-264db4bcf0a9 a=ssrc:2897246504 mslabel: a=ssrc:2897246504 label:e155cdd8-d9ae-4333-8a30-264db4bcf0a9 m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 124 125 c=IN IP4 0.0.0.0 a=rtcp:9 IN IP4 0.0.0.0 a=ice-ufrag:vWTM a=ice-pwd:4z8hYz0ue5mjNDsiz/urExaS a=ice-options:trickle a=fingerprint:sha-256 14:41:18:28:F5:3F:87:4E:CF:06:60:13:A8:18:95:31:3C:DD:B4:00:28:28:FF:2A:69:19:E9:55:5B:91:00:0B a=setup:actpass a=mid:1 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=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07 a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid a=sendonly a=msid:- 240b44ce-c3d7-4765-ad4a-3d93fcda0b20 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 x-google-profile-id=0 a=rtpmap:99 rtx/90000 a=fmtp:99 apt=98 a=rtpmap:100 multiplex/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 acn=VP9;x-google-profile-id=0 a=rtpmap:101 rtx/90000 a=fmtp:101 apt=100 a=rtpmap:127 red/90000 a=rtpmap:124 rtx/90000 a=fmtp:124 apt=127 a=rtpmap:125 ulpfec/90000 a=ssrc-group:FID 1994310532 1884368151 a=ssrc:1994310532 cname:CpPOYjs5ymMqIq/y a=ssrc:1994310532 msid: 240b44ce-c3d7-4765-ad4a-3d93fcda0b20 a=ssrc:1994310532 mslabel: a=ssrc:1994310532 label:240b44ce-c3d7-4765-ad4a-3d93fcda0b20 a=ssrc:1884368151 cname:CpPOYjs5ymMqIq/y a=ssrc:1884368151 msid: 240b44ce-c3d7-4765-ad4a-3d93fcda0b20 a=ssrc:1884368151 mslabel: a=ssrc:1884368151 label:240b44ce-c3d7-4765-ad4a-3d93fcda0b20

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:2966861491 1 udp 2122194687 172.30.64.1 50938 typ host generation 0 ufrag vWTM network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 50937 typ srflx raddr 192.168.0.105 rport 50937 generation 0 ufrag vWTM network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:3382296128 1 udp 1686052607 138.246.2.9 50935 typ srflx raddr 192.168.0.105 rport 50935 generation 0 ufrag vWTM network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 54462 typ host tcptype passive generation 0 ufrag vWTM network-id 1|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:106054660 1 tcp 1518280447 192.168.0.105 54464 typ host tcptype passive generation 0 ufrag vWTM network-id 1|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 54463 typ host tcptype passive generation 0 ufrag vWTM network-id 4|0|0

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Received SDP message: type=Ice data=candidate:4267002435 1 tcp 1518214911 172.30.64.1 54465 typ host tcptype passive generation 0 ufrag vWTM network-id 4|1|1

(Filename: C:\buildslave\unity\build\Runtime/Export/Debug.bindings.h Line: 45) Setting up 2 worker threads for Enlighten. Thread -> id: 5df0 -> priority: 1 Thread -> id: 4098 -> priority: 1 InvalidOperationException: Trying to dispose of AudioTrackSource '' while still in use by one or more audio tracks. at Microsoft.MixedReality.WebRTC.AudioTrackSource.Dispose () [0x00031] in :0 at Microsoft.MixedReality.WebRTC.Unity.AudioTrackSource.OnDisable () [0x0003b] in :0

(Filename: Line: 0)

I remember reading another issue about errors coming up while disposing of Audio/VideoTrackSource(s) and I have definitely encountered them in the editor quite a few times since updating the build, usually crashing it when I attempt to play (and I guess potentially crashing the standalone on-exit in this case), and that was the first time the standalone's log contained this error so I definitely think it's a different issue. But I figured I should include it in case it's helpful in any way.

djee-ms commented 4 years ago

See #426 and #431 for the dangling AudioTrackSource; this will be fixed shortly, I just approved the PR.

djee-ms commented 4 years ago

Looking again at this, I am confused by several things:

Otherwise the PeerConnection configurations look good, if only for the fact that MicrophoneSource is used on both sides, which means you still need to have a working microphone on both peers.

Let's take a step back: video errors have mainly 3 sources:

Can you confirm the current state of all of that? Can you please also try with the latest 2.0.0-preview.1 prerelease Unity package containing prebuilt binaries, which I tested so I know it works for me? The VideoChatDemo is in a separate "samples" package. I recommend starting from scratch with a new Unity project, importing those 2 packages, and using the VideoChatDemo, so we're on a clean slate.