Demo for flutter-webrtc

Last update: Aug 8, 2022
Comments
  • 1. OpenVidu Flutter problem

    Hello, I took this flutter-webrtc-demo app and tried to connect it to OpenVidu webrtc server because I need to have multiple users to be able to participate in the same call. I used https://github.com/OpenVidu/openvidu-android-app which works with OpenVidu server v1.5.0 (the latest is v2.7.0, and we set up our own instance with v1.5.0 at openvidu.hot-soup.com) and refactored Signaling class to work as this Android app works.

    The problem is when I connect my Flutter app with Android app, the stream from Android app is visible on Flutter app but the stream from Flutter app is not visible on Android app and I can't find out why. I examined the logs from both apps and it seems to me that signaling with the server through websocket connection works in the same way, but something is wrong because stream from Flutter app is not visible on the other side.

    Here is the link of Android app that is connected to openvidu.hot-soup.com: https://drive.google.com/open?id=1ln8rHhgUq8PEanoxT7ciYNHkcAZfeIjt

    And here is the link of Flutter app connected to the same server: https://drive.google.com/open?id=1cXfNCG7UAvDZ0gN0FmmPpSpORZJo5f9x

    Can you maybe take a look or do you have any idea why this doesn't work and the example connected to demo.cloudwebrtc.com server works great?

    Reviewed by icelija at 2019-01-16 14:31
  • 2. Unable to connect to demo-server in app

    I've deployed the flutter-webrtc-server demo in my local network and it works fine while using it with my mobile browser (I'm able to call other users, etc). However, while using the P2P Call Sample option in the demo Flutter app, when I tap "Connect" after introducing the address of the machine where the server has been deployed, nothing happens and the screen remains blank except for the blue navbar.

    • I can't see any activity in the log of the server
    • The app passes the basic API tests
    • Android 9.0 on OnePlus5

    Thanks in advance! I'm really interested in getting this to work!

    Reviewed by Pitazzo at 2019-03-04 22:56
  • 3. Issues when call started from Androind device to Web service

    I'm facing issues establishing a video call between an Android device and the web service. The Android device and the web browser are both showing their local video correctly, but the remote video is not shown. This issue is faced only when the call is initiated from the Android device. The other way around, starting the call from the Web service works fine. Checked issue 118 but it didn't help me. Also tried with working TURN servers. Any help would be appreciated! Thanks!

    Reviewed by ghost at 2021-11-05 14:49
  • 4. Registration with webrtc server?

    Hi,

    Is there anyway to call another p2p user without knowing their address? For example, one peer registers with the webrtc server and calls an alias and then the server returns the right address? Similar to a SIP registration?

    Or is this just pure p2p? How do you recommend handling this list of online peers?

    Thanks.

    Reviewed by ghenry at 2019-08-10 20:28
  • 5. 在windows上奇怪的连接失败

    过程有点复杂,我有点担心自己的英文描述不清楚,先中文描述了,如果需要英文开发者处理的话我再尝试用英文描述一遍

    在对demo做多平台测试,环境方面使用两台Windows 10,一台x86的macMini,两台Android,分别并且分别在win10和mac上启动chrome浏览器做web测试,所有被测设备及flutter-webrtc-server处于同一个Wifi下, 使用检出的版本,现象如下:

    1. Windows 10呼叫任何平台都失败
    2. Android,macOS,chrome呼叫Windows 10成功
    3. 除win10外,其他设备互相呼叫均可成功

    查看状态变化日志及chrome://webrtc-internals控制台检查后,做出猜测,简单尝试给部分动作添加Future.delay包裹

    1. Future.delay(Duration(second:1),(){_send("offer",....)});修改后win10呼叫android成功,但挂断时程序有概率会无日志崩溃.
    2. pc.onIceCandidate回调的cadidate不再直接发送,而是添加到临时队列,使用一个Timer每秒向被呼叫每秒发送一个_send("candidate",...),进行此修改后,win10呼叫chrome及macOS成功

    目前win10呼叫win10始终无法成功

    1. 在呼叫端接到第一个audio的IceCandidate后IceConnect进入checking状态,同时能监听到AddStream触发,此stream同时包含audio和video
    2. 呼叫端状态会一直处在checking状态,大概30秒后进入complete状态,但此时连接并未成功建立
    3. 此时应答端的状态一直维持在Gathering 推测原因和未经修改的demo呼叫chrome情况类似,是IceConnect timeout,然后直接关闭了,并且推测是video的连接建立失败 并且应答端只会监听到一个pc.onIceCandidate的触发只能触发到audio后续的video cadidate无法得到

    现象非常的怪异,如果方便的话,希望能先帮我找到win10呼叫win10的失败原因,并且解决一下,这样我就能做这个选型了

    附日志如下:
    Launching lib\main.dart on Windows in debug mode...
    Building Windows application...
    Debug service listening on ws://127.0.0.1:58860/-E5SG4DaPj8=/ws
    Syncing files to device Windows...
    flutter: connect to https://172.16.10.180:8086/ws
    flutter: getTurnCredential: Allow self-signed certificate => 172.16.10.180:8086. 
    flutter: getTurnCredential:response => {"username":"1616561656:flutter-webrtc","password":"LD8RnCDEg1bC/QU29J90tfaE2GA","ttl":86400,"uris":["turn:172.16.10.180:19303?transport=udp","turn:172.16.10.180:19302?transport=tcp"]}
    .
    flutter: SimpleWebSocket: Allow self-signed certificate => 172.16.10.180:8086. 
    flutter: onOpen
    flutter: send: {"type":"new","data":{"name":"DESKTOP-DN34BSV(windows)","id":"073716","user_agent":"flutter-webrtc/windows-plugin 0.0.1"}}
    flutter: Received data: {"type":"peers","data":[{"id":"180","name":"DESKTOP-71LI36L(windows)","user_agent":"flutter-webrtc/windows-plugin 0.0.1"},{"id":"073716","name":"DESKTOP-DN34BSV(windows)","user_agent":"flutter-webrtc/windows-plugin 0.0.1"},{"id":"admin12345678-m","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"}]}
    flutter: {iceServers: [{urls: turn:172.16.10.180:19303?transport=udp, username: 1616561656:flutter-webrtc, credential: LD8RnCDEg1bC/QU29J90tfaE2GA}]}
    flutter: signaling state:RTCSignalingState.RTCSignalingStateHaveLocalOffer
    flutter: send: {"type":"offer","data":{"to":"180","from":"073716","description":{"sdp":"v=0\r\no=- 3623022519663236880 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:tcIk\r\na=ice-pwd:BnRH15RPtsO6hP+ix4mvKgQw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 63:AE:C2:EC:21:D9:B5:9E:E5:56:96:F9:2A:A4:67:33:61:A0:4C:6E:8F:92:83:C8:1B:B5:1B:C0:09:CB:3A:D8\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=recvonly\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\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:13 CN/8000\r\na=rtpmap:110 telephone-event/48000\r\na=rtpmap:112 telephone-event/32000\r\na=rtpmap:113 telephone-event/16000\r\na=rtpmap:126 telephone-event/8000\r\nm=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 122 125 121 124 107 108 109 123\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:tcIk\r\na=ice-pwd:BnRH15RPtsO6hP+ix4mvKgQw\r\na=ice-options:trickle\r\na=fingerprint:sha-256 63:AE:C2:EC:21:D9:B5:9E:E5:56:96:F9:2A:A4:67:33:61:A0:4C:6E:8F:92:83:C8:1B:B5:1B:C0:09:CB:3A:D8\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:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type\r\na=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/video-timing\r\na=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07\r\na=recvonly\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 VP8/90000\r\na=rtcp-fb:96 goog-remb\r\na=rtcp-fb:96 transport-cc\r\na=rtcp-fb:96 ccm fir\r\na=rtcp-fb:96 nack\r\na=rtcp-fb:96 nack pli\r\na=rtpmap:97 rtx/90000\r\na=fmtp:97 apt=96\r\na=rtpmap:98 VP9/90000\r\na=rtcp-fb:98 goog-remb\r\na=rtcp-fb:98 transport-cc\r\na=rtcp-fb:98 ccm fir\r\na=rtcp-fb:98 nack\r\na=rtcp-fb:98 nack pli\r\na=fmtp:98 profile-id=0\r\na=rtpmap:99 rtx/90000\r\na=fmtp:99 apt=98\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:101 rtx/90000\r\na=fmtp:101 apt=100\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001f\r\na=rtpmap:122 rtx/90000\r\na=fmtp:122 apt=127\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:121 rtx/90000\r\na=fmtp:121 apt=125\r\na=rtpmap:124 H264/90000\r\na=rtcp-fb:124 goog-remb\r\na=rtcp-fb:124 transport-cc\r\na=rtcp-fb:124 ccm fir\r\na=rtcp-fb:124 nack\r\na=rtcp-fb:124 nack pli\r\na=fmtp:124 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01f\r\na=rtpmap:107 rtx/90000\r\na=fmtp:107 apt=124\r\na=rtpmap:108 red/90000\r\na=rtpmap:109 rtx/90000\r\na=fmtp:109 apt=108\r\na=rtpmap:123 ulpfec/90000\r\n","type":"offer"},"session_id":"073716-180","media":"video"}}
    flutter: gather state:RTCIceGatheringState.RTCIceGatheringStateGathering
    flutter: candidate]]]]]]]]]]]]]:candidate:3717615912 1 udp 2122260223 192.168.200.166 61713 typ host generation 0 ufrag tcIk network-id 2 network-cost 50
    flutter: candidate]]]]]]]]]]]]]:candidate:1447065330 1 udp 2122194687 172.16.10.163 61714 typ host generation 0 ufrag tcIk network-id 1
    flutter: candidate]]]]]]]]]]]]]:candidate:3717615912 1 udp 2122260223 192.168.200.166 61715 typ host generation 0 ufrag tcIk network-id 2 network-cost 50
    flutter: send: {"type":"candidate","data":{"to":"180","from":"073716","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:3717615912 1 udp 2122260223 192.168.200.166 61715 typ host generation 0 ufrag tcIk network-id 2 network-cost 50"},"session_id":"073716-180"}}
    flutter: candidate]]]]]]]]]]]]]:candidate:1447065330 1 udp 2122194687 172.16.10.163 61716 typ host generation 0 ufrag tcIk network-id 1
    flutter: send: {"type":"candidate","data":{"to":"180","from":"073716","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:1447065330 1 udp 2122194687 172.16.10.163 61716 typ host generation 0 ufrag tcIk network-id 1"},"session_id":"073716-180"}}
    flutter: candidate]]]]]]]]]]]]]:candidate:2262204151 1 udp 41819903 172.16.10.180 58466 typ relay raddr 172.16.10.163 rport 61714 generation 0 ufrag tcIk network-id 1
    flutter: candidate]]]]]]]]]]]]]:candidate:2262204151 1 udp 41819903 172.16.10.180 58467 typ relay raddr 172.16.10.163 rport 61716 generation 0 ufrag tcIk network-id 1
    flutter: send: {"type":"candidate","data":{"to":"180","from":"073716","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:2262204151 1 udp 41819903 172.16.10.180 58467 typ relay raddr 172.16.10.163 rport 61716 generation 0 ufrag tcIk network-id 1"},"session_id":"073716-180"}}
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: Received data: {"type":"answer","data":{"to":"073716","from":"180","description":{"sdp":"v=0\r\no=- 549949327756781945 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS 85D5544E-D96C-480C-B8FA-92EE672D0880\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:drYf\r\na=ice-pwd:KtzjSL8ocj+3IO0I3WvHTx3S\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:2D:2F:60:F4:3A:84:25:85:E8:01:AE:A9:80:85:C4:A5:D0:1A:B9:57:EA:79:3A:85:DB:65:6D:1C:58:FF:2E\r\na=setup:active\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=sendonly\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\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:13 CN/8000\r\na=rtpmap:110 telephone-event/48000\r\na=rtpmap:112 telephone-event/32000\r\na=rtpmap:113 telephone-event/16000\r\na=rtpmap:126 telephone-event/8000\r\na=ssrc:1753353405 cname:NmTG6gZ2yYMQpCWb\r\na=ssrc:1753353405 msid:85D5544E-D96C-480C-B8FA-92EE672D0880 8B0DA547-A311-475E-BB13-6640C41358C2\r\na=ssrc:1753353405 mslabel:85D5544E-D96C-480C-B8FA-92EE672D0880\r\na=ssrc:1753353405 label:8B0DA547-A311-475E-BB13-6640C41358C2\r\nm=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 100 101 127 122 125 121 124 107 108 109 123\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:drYf\r\na=ice-pwd:KtzjSL8ocj+3IO0I3WvHTx3S\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:2D:2F:60:F4:3A:84:25:85:E8:01:AE:A9:80:85:C4:A5:D0:1A:B9:57:EA:79:3A:85:DB:65:6D:1C:58:FF:2E\r\na=setup:active\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:video-orientation\r\na=extmap:5 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay\r\na=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type\r\na=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/video-timing\r\na=extmap:10 http://tools.ietf.org/html/draft-ietf-avtext-framemarking-07\r\na=sendonly\r\na=rtcp-mux\r\na=rtcp-rsize\r\na=rtpmap:96 VP8/90000\r\na=rtcp-fb:96 goog-remb\r\na=rtcp-fb:96 transport-cc\r\na=rtcp-fb:96 ccm fir\r\na=rtcp-fb:96 nack\r\na=rtcp-fb:96 nack pli\r\na=rtpmap:97 rtx/90000\r\na=fmtp:97 apt=96\r\na=rtpmap:98 VP9/90000\r\na=rtcp-fb:98 goog-remb\r\na=rtcp-fb:98 transport-cc\r\na=rtcp-fb:98 ccm fir\r\na=rtcp-fb:98 nack\r\na=rtcp-fb:98 nack pli\r\na=fmtp:98 profile-id=0\r\na=rtpmap:99 rtx/90000\r\na=fmtp:99 apt=98\r\na=rtpmap:100 H264/90000\r\na=rtcp-fb:100 goog-remb\r\na=rtcp-fb:100 transport-cc\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=fmtp:100 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f\r\na=rtpmap:101 rtx/90000\r\na=fmtp:101 apt=100\r\na=rtpmap:127 H264/90000\r\na=rtcp-fb:127 goog-remb\r\na=rtcp-fb:127 transport-cc\r\na=rtcp-fb:127 ccm fir\r\na=rtcp-fb:127 nack\r\na=rtcp-fb:127 nack pli\r\na=fmtp:127 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001f\r\na=rtpmap:122 rtx/90000\r\na=fmtp:122 apt=127\r\na=rtpmap:125 H264/90000\r\na=rtcp-fb:125 goog-remb\r\na=rtcp-fb:125 transport-cc\r\na=rtcp-fb:125 ccm fir\r\na=rtcp-fb:125 nack\r\na=rtcp-fb:125 nack pli\r\na=fmtp:125 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f\r\na=rtpmap:121 rtx/90000\r\na=fmtp:121 apt=125\r\na=rtpmap:124 H264/90000\r\na=rtcp-fb:124 goog-remb\r\na=rtcp-fb:124 transport-cc\r\na=rtcp-fb:124 ccm fir\r\na=rtcp-fb:124 nack\r\na=rtcp-fb:124 nack pli\r\na=fmtp:124 level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01f\r\na=rtpmap:107 rtx/90000\r\na=fmtp:107 apt=124\r\na=rtpmap:108 red/90000\r\na=rtpmap:109 rtx/90000\r\na=fmtp:109 apt=108\r\na=rtpmap:123 ulpfec/90000\r\na=ssrc-group:FID 1274675730 1813864954\r\na=ssrc:1274675730 cname:NmTG6gZ2yYMQpCWb\r\na=ssrc:1274675730 msid:85D5544E-D96C-480C-B8FA-92EE672D0880 5C880296-1A5E-486F-BF8E-910F0A530CC2\r\na=ssrc:1274675730 mslabel:85D5544E-D96C-480C-B8FA-92EE672D0880\r\na=ssrc:1274675730 label:5C880296-1A5E-486F-BF8E-910F0A530CC2\r\na=ssrc:1813864954 cname:NmTG6gZ2yYMQpCWb\r\na=ssrc:1813864954 msid:85D5544E-D96C-480C-B8FA-92EE672D0880 5C880296-1A5E-486F-BF8E-910F0A530CC2\r\na=ssrc:1813864954 mslabel:85D5544E-D96C-480C-B8FA-92EE672D0880\r\na=ssrc:1813864954 label:5C880296-1A5E-486F-BF8E-910F0A530CC2\r\n","type":"answer"},"session_id":"073716-180"}}
    flutter: signaling state:RTCSignalingState.RTCSignalingStateStable
    flutter: Received data: {"type":"candidate","data":{"to":"073716","from":"180","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:2262204151 1 udp 41819903 172.16.10.180 58472 typ relay raddr 0.0.0.0 rport 0 generation 0 ufrag drYf network-id 1"},"session_id":"073716-180"}}
    flutter: ice state:RTCIceConnectionState.RTCIceConnectionStateChecking
    flutter: on add stream:[Track(id: 8B0DA547-A311-475E-BB13-6640C41358C2, kind: audio, label: 8B0DA547-A311-475E-BB13-6640C41358C2, enabled: true, muted: false), Track(id: 5C880296-1A5E-486F-BF8E-910F0A530CC2, kind: video, label: 5C880296-1A5E-486F-BF8E-910F0A530CC2, enabled: true, muted: false)]
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: Received data: {}
    flutter: gather state:RTCIceGatheringState.RTCIceGatheringStateComplete
    
    Reviewed by FourLeafTec at 2021-03-24 05:09
  • 6. Can't install?

    Just checking this out... I tried to install the apk on my Redmi Note 4, and the app crashes on launch with the following report:

    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.cloudwebrtc.flutterwebrtcdemo-1/base.apk"],nativeLibraryDirectories=[/data/app/com.cloudwebrtc.flutterwebrtcdemo-1/lib/arm64, /data/app/com.cloudwebrtc.flutterwebrtcdemo-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]] couldn't find "libflutter.so"
    	at java.lang.Runtime.loadLibrary0(Runtime.java:972)
    	at java.lang.System.loadLibrary(System.java:1530)
    	at io.flutter.view.FlutterMain.startInitialization(FlutterMain.java:157)
    	at io.flutter.view.FlutterMain.startInitialization(FlutterMain.java:134)
    	at io.flutter.app.FlutterApplication.onCreate(FlutterApplication.java:22)
    	at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1025)
    	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5518)
    	at android.app.ActivityThread.-wrap2(ActivityThread.java)
    	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1608)
    	at android.os.Handler.dispatchMessage(Handler.java:102)
    	at android.os.Looper.loop(Looper.java:165)
    	at android.app.ActivityThread.main(ActivityThread.java:6354)
    	at java.lang.reflect.Method.invoke(Native Method)
    	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:883)
    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
    
    

    Flutter doctor doesn't report any errors or warnings:

    [✓] Flutter (Channel stable, v1.0.0, on Linux, locale en_US.UTF-8)
        • Flutter version 1.0.0 at /home/user/Projects/flutter-projects/flutter
        • Framework revision 5391447fae (4 weeks ago), 2018-11-29 19:41:26 -0800
        • Engine revision 7375a0f414
        • Dart version 2.1.0 (build 2.1.0-dev.9.4 f9ebf21297)
    
    [✓] Android toolchain - develop for Android devices (Android SDK 28.0.3)
        • Android SDK at /home/user/Android/Sdk
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-28, build-tools 28.0.3
        • Java binary at: /opt/android-studio/jre/bin/java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
        • All Android licenses accepted.
    
    [✓] Android Studio (version 3.2)
        • Android Studio at /opt/android-studio
        • Flutter plugin version 31.3.1
        • Dart plugin version 181.5656
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1136-b06)
    
    [✓] VS Code (version 1.30.1)
        • VS Code at /usr/share/code
        • Flutter extension version 2.21.1
    
    [✓] Connected device (1 available)
        • Android SDK built for x86 • emulator-5554 • android-x86 • Android 7.1.1 (API 25) (emulator)
    
    
    Reviewed by kbrmimbyl at 2018-12-30 12:53
  • 7. Can not see the other side video

    When run the flutter-webrtc-server h5 demo on pc chrome browser, result is that:

    1. Can see the other side video when not using relay mode.
    2. Can not see the other side video when using relay mode.

    When run the flutter-webrtc-server h5 demo on pc chrome browser and run the flutter-webrtc-demo on Android , result is that:

    Can not see the other side video on Android whether or not using relay mode.

    My Android phone is XiaoMi 5X.

    Reviewed by glenn-wang at 2019-01-09 03:32
  • 8. Unable to get audio/Video in P2P Call Sample.

    I've setup the server and its working fine. List of connected devices is showing properly in P2P but the the video or other side is not showing, a greyscreen is shwoing instead of caller's video and audio of both sides aren't working as well. Permission is given in android's app setting. Any help would be highly appreciated.

    Thanks

    Reviewed by misteraggressor at 2020-05-11 02:01
  • 9. peerConnection can not addStream or createOffer

    the peerConnection that i create is not null. but i get logs below.how to solve this problem,can you help me.

    E/flutter ( 5051): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exc eption: PlatformException(peerConnectionAddStreamFailed, peerConnectionAddStream() peerConnection is null, null) E/flutter ( 5051): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:564:7) E/flutter ( 5051): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:302:33) E/flutter ( 5051): E/flutter ( 5051): #2 RTCPeerConnection.addStream (package:flutter_webrtc/rtc_peerconnection.dart:253:20) E/flutter ( 5051): E/flutter ( 5051): #3 RTCSignaling._createPeerConnection (package:zzlrtc/rtc_signaling.dart:251:10) E/flutter ( 5051): E/flutter ( 5051): #4 RTCSignaling.invite (package:zzlrtc/rtc_signaling.dart:316:5) E/flutter ( 5051): #5 _P2PDemoState._invitePeer (package:zzlrtc/p2p_demo.dart:130:17) E/flutter ( 5051): E/flutter ( 5051): #6 _P2PDemoState._buildRow. (package:zzlrtc/p2p_demo.dart:162:17) E/flutter ( 5051): #7 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:511:14) E/flutter ( 5051): #8 _InkResponseState.build. (package:flutter/src/material/ink_well.dart:566:30) E/flutter ( 5051): #9 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:166:24) E/flutter ( 5051): #10 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:240:9) E/flutter ( 5051): #11 TapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:211:7) E/flutter ( 5051): #12 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:156:27) E/flutter ( 5051): #13 _WidgetsFlutterBinding&BindingBase&GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:225:20) E/flutter ( 5051): #14 _WidgetsFlutterBinding&BindingBase&GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:199:22) E/flutter ( 5051): #15 _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7) E/flutter ( 5051): #16 _WidgetsFlutterBinding&BindingBase&GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7) E/flutter ( 5051): #17 _WidgetsFlutterBinding&BindingBase&GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7) E/flutter ( 5051): #18 _rootRunUnary (dart:async/zone.dart:1136:13) E/flutter ( 5051): #19 _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 5051): #20 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7) E/flutter ( 5051): #21 _invoke1 (dart:ui/hooks.dart:233:10) E/flutter ( 5051): #22 _dispatchPointerDataPacket (dart:ui/hooks.dart:154:5) E/flutter ( 5051): E/flutter ( 5051): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: Unable to RTCPeerConnection::createOffer: peerConnection is null E/flutter ( 5051): #0 RTCPeerConnection.createOffer (package:flutter_webrtc/rtc_peerconnection.dart:230:7) E/flutter ( 5051): E/flutter ( 5051): #1 RTCSignaling._createOffer (package:zzlrtc/rtc_signaling.dart:215:43) E/flutter ( 5051): E/flutter ( 5051): #2 RTCSignaling.invite. (package:zzlrtc/rtc_signaling.dart:322:7) E/flutter ( 5051): #3 _rootRunUnary (dart:async/zone.dart:1132:38) E/flutter ( 5051): #4 _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 5051): #5 _FutureListener.handleValue (dart:async/future_impl.dart:126:18) E/flutter ( 5051): #6 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45) E/flutter ( 5051): #7 Future._propagateToListeners (dart:async/future_impl.dart:668:32) E/flutter ( 5051): #8 Future._complete (dart:async/future_impl.dart:473:7) E/flutter ( 5051): #9 _SyncCompleter.complete (dart:async/future_impl.dart:51:12) E/flutter ( 5051): #10 _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18) E/flutter ( 5051): #11 _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13) E/flutter ( 5051): #12 RTCSignaling._createPeerConnection (package:zzlrtc/rtc_signaling.dart) E/flutter ( 5051): #13 _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:77:64) E/flutter ( 5051): #14 _rootRunUnary (dart:async/zone.dart:1132:38) E/flutter ( 5051): #15 _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 5051): #16 _FutureListener.handleValue (dart:async/future_impl.dart:126:18) E/flutter ( 5051): #17 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45) E/flutter ( 5051): #18 Future._propagateToListeners (dart:async/future_impl.dart:668:32) E/flutter ( 5051): #19 Future._complete (dart:async/future_impl.dart:473:7) E/flutter ( 5051): #20 _SyncCompleter.complete (dart:async/future_impl.dart:51:12) E/flutter ( 5051): #21 _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18) E/flutter ( 5051): #22 _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13) E/flutter ( 5051): #23 createPeerConnection (package:flutter_webrtc/rtc_peerconnection_factory.dart) E/flutter ( 5051): #24 _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:77:64) E/flutter ( 5051): #25 _rootRunUnary (dart:async/zone.dart:1132:38) E/flutter ( 5051): #26 _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 5051): #27 _FutureListener.handleValue (dart:async/future_impl.dart:126:18) E/flutter ( 5051): #28 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45) E/flutter ( 5051): #29 Future._propagateToListeners (dart:async/future_impl.dart:668:32) E/flutter ( 5051): #30 Future._complete (dart:async/future_impl.dart:473:7) E/flutter ( 5051): #31 _SyncCompleter.complete (dart:async/future_impl.dart:51:12) E/flutter ( 5051): #32 _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:28:18) E/flutter ( 5051): #33 _completeOnAsyncReturn (dart:async-patch/async_patch.dart:294:13) E/flutter ( 5051): #34 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart) E/flutter ( 5051): #35 _asyncThenWrapperHelper. (dart:async-patch/async_patch.dart:77:64) E/flutter ( 5051): #36 _rootRunUnary (dart:async/zone.dart:1132:38) E/flutter ( 5051): #37 _CustomZone.runUnary (dart:async/zone.dart:1029:19) E/flutter ( 5051): #38 _FutureListener.handleValue (dart:async/future_impl.dart:126:18) E/flutter ( 5051): #39 Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45) E/flutter ( 5051): #40 Future._propagateToListeners (dart:async/future_impl.dart:668:32) E/flutter ( 5051): #41 Future._completeWithValue (dart:async/future_impl.dart:483:5) E/flutter ( 5051): #42 Future._asyncComplete. (dart:async/future_impl.dart:513:7) E/flutter ( 5051): #43 _rootRun (dart:async/zone.dart:1124:13) E/flutter ( 5051): #44 _CustomZone.run (dart:async/zone.dart:1021:19) E/flutter ( 5051): #45 _CustomZone.runGuarded (dart:async/zone.dart:923:7) E/flutter ( 5051): #46 _CustomZone.bindCallbackGuarded. (dart:async/zone.dart:963:23) E/flutter ( 5051): #47 _microtaskLoop (dart:async/schedule_microtask.dart:41:21) E/flutter ( 5051): #48 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)

    Reviewed by 123zzl321 at 2020-01-10 11:39
  • 10. P2P Call Sample not working on LTE mobile data

    I'm running the demo app on two Samsung phones (S8 and S9). The P2P Call sample works great when both phones are on Wifi on the same local network, but when I switch one of them to the LTE mobile network, the devices never connect. Neither audio nor video is coming through either device. On each phone I can only see the top left, front camera video, the big section meant for the other phone's front camera is just the gray widget background color.

    The signaling seems to be working fine. When I hang up one device, the other disconnects automatically.

    In my branch I add some print statements and statistics collecting on the ssrc/jitter values in the P2P example. When this issue's bug occurs, I get audio stats values of 0:

    {totalAudioEnergy: 0, googCodecName: , transportId: Channel-audio-1, googDecodingCTSG: 0, googAccelerateRate: 0, googCaptureStartNtpTimeMs: 0, googSpeechExpandRate: 0, packetsLost: 0, googTrackId: 5f4a4611-a3a2-47b5-96fd-357b843e2fc5, googJitterBufferMs: 0, googPreemptiveExpandRate: 0, googPreferredJitterBufferMs: 0, ssrc: 2551058670, googSecondaryDecodedRate: 0, googExpandRate: 0, mediaType: audio, totalSamplesDuration: 0, googDecodingPLCCNG: 0, googSecondaryDiscardedRate: 0, bytesReceived: 0, googDecodingPLC: 0, packetsReceived: 0, googDecodingCTN: 0, googDecodingCNG: 0, googDecodingNormal: 0, googCurrentDelayMs: 0, googJitterReceived: 0, googDecodingMuted: 0}
    

    When I run both devices on Wifi, these stats from the P2P call seem appropriate.

    I've checked out the latest master without my stats changes and here are those logs from attempting to connect two devices (one on Wifi and one on LTE) below:

    I/flutter ( 5702): onOpen
    I/flutter ( 5702): send: {"name":"localhost(android)","id":"136345","user_agent":"flutter-webrtc/android-plugin 0.0.1","type":"new"}
    I/flutter ( 5702): Recivied data: {"type":"peers","data":[{"id":"136345","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"}]}
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/flutter (18467): onOpen
    I/flutter (18467): send: {"name":"localhost(android)","id":"855855","user_agent":"flutter-webrtc/android-plugin 0.0.1","type":"new"}
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4010 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4010 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/flutter (18467): Recivied data: {"type":"peers","data":[{"id":"136345","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"},{"id":"855855","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"}]}
    I/flutter ( 5702): Recivied data: {"type":"peers","data":[{"id":"136345","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"},{"id":"855855","name":"localhost(android)","user_agent":"flutter-webrtc/android-plugin 0.0.1"}]}
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4013 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4020 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4017 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    D/[email protected][MainActivity](18467): ViewPostIme pointer 0
    D/[email protected][MainActivity](18467): ViewPostIme pointer 1
    I/FlutterWebRTCPlugin(18467): getUserMedia(audio): mandatory: [], optional: [googNoiseSuppression: true, googEchoCancellation: true, echoCancellation: true, googEchoCancellation2: true, googDAEchoCancellation: true]
    I/FlutterWebRTCPlugin(18467): getUserMedia(video): [email protected]
    I/CameraManagerGlobal(18467): Connecting to camera service
    D/VendorTagDescriptor(18467): addVendorDescriptor: vendor tag id 3854507339 added
    D/FlutterWebRTCPlugin(18467): Creating video capturer using Camera2 API.
    D/FlutterWebRTCPlugin(18467): Create front camera 1 succeeded
    I/org.webrtc.Logging(18467): EglBase14Impl: Using OpenGL ES version 2
    I/org.webrtc.Logging(18467): CameraCapturer: startCapture: [email protected]
    D/FlutterWebRTCPlugin(18467): changeCaptureFormat: [email protected]
    I/org.webrtc.Logging(18467): Camera2Session: Create new camera2 session on camera 1
    I/org.webrtc.Logging(18467): Camera2Session: start
    D/FlutterWebRTCPlugin(18467): MediaStream id: 93a3ea29-1cfc-4991-a979-1a0b63ebfb07
    I/org.webrtc.Logging(18467): EglRenderer: Releasing.
    I/org.webrtc.Logging(18467): EglRenderer: eglBase detach and release.
    I/org.webrtc.Logging(18467): EglRenderer: Quitting render thread.
    I/org.webrtc.Logging(18467): EglRenderer: Releasing done.
    I/org.webrtc.Logging(18467): EglRenderer: Initializing EglRenderer
    I/org.webrtc.Logging(18467): EglRenderer: EglBase.create shared context
    I/org.webrtc.Logging(18467): EglBase14Impl: Using OpenGL ES version 2
    I/org.webrtc.Logging(18467): Camera2Session: Available preview sizes: [2560x1920, 2048x1536, 2048x1152, 1920x1080, 1280x960, 1280x720, 800x600, 720x480, 640x480, 640x360, 512x288, 432x288, 384x384, 352x288, 320x240, 256x154, 176x144, 2640x1288, 2640x1980, 2640x1488, 1968x1968, 1920x932]
    I/org.webrtc.Logging(18467): Camera2Session: Available fps ranges: [[15.0:15.0], [24.0:24.0], [7.0:30.0], [15.0:30.0], [30.0:30.0]]
    I/org.webrtc.Logging(18467): Camera2Session: Using capture format: [email protected][7.0:30.0]
    I/org.webrtc.Logging(18467): Camera2Session: Opening camera 1
    D/FlutterWebRTCPlugin(18467): CameraEventsHandler.onCameraOpening: cameraName=1
    I/org.webrtc.Logging(18467): Camera2Session: Camera opened.
    D/FlutterWebRTCPlugin(18467): [email protected]
    D/FlutterWebRTCPlugin(18467): peerConnectionSetLocalDescription() start
    I/flutter (18467): send: {"to":"136345","description":{"sdp":"v=0\r\no=- 5088572689760621605 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS 93a3ea29-1cfc-4991-a979-1a0b63ebfb07\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:zaRf\r\na=ice-pwd:kkv9AYNdTd/IIiU3U/uMKpFw\r\na=ice-options:trickle renomination\r\na=fingerprint:sha-256 34:A9:E1:7B:77:4C:A3:F7:71:80:C6:E3:F7:2F:2C:66:BD:30:ED:0E:E8:42:25:85:F7:B3:B8:EB:53:32:F8:8B\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\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/
    I/org.webrtc.Logging(18467): WebRtcAudioRecordExternal: enableBuiltInAEC(false)
    I/org.webrtc.Logging(18467): WebRtcAudioEffectsExternal: setAEC(false)
    I/org.webrtc.Logging(18467): WebRtcAudioRecordExternal: enableBuiltInNS(true)
    I/org.webrtc.Logging(18467): WebRtcAudioEffectsExternal: setNS(true)
    I/org.webrtc.Logging(18467): NetworkMonitor: Start monitoring with native observer 497628474496
    D/ConnectivityManager(18467): sendRequestForNetwork CallingUid : 10302, CallingPid : 18467
    D/ConnectivityManager(18467): requestNetwork; CallingUid : 10302, CallingPid : 18467
    D/ConnectivityManager(18467): requestNetwork; CallingUid : 10302, CallingPid : 18467
    W/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: Null interface name for network 601
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: Network becomes available: 603
    D/FlutterWebRTCPlugin(18467): peerConnectionSetLocalDescription() end
    D/FlutterWebRTCPlugin(18467): onIceGatheringChangeGATHERING
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -64 SSID: "Juno2"]
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: link properties changed: {InterfaceName: wlan0 LinkAddresses: [fe80::477d:e1a:c1ea:c0c8/64,192.168.1.13/24,]  Routes: [fe80::/64 -> :: wlan0,192.168.1.0/24 -> 0.0.0.0 wlan0,0.0.0.0/0 -> 192.168.1.1 wlan0,] DnsAddresses: [192.168.1.1,] UsePrivateDns: false PrivateDnsServerName: null Domains: null MTU: 0 TcpBufferSizes: 524288,1048576,4194304,524288,1048576,4194304}
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    I/chatty  (18467): uid=10302(com.cloudwebrtc.flutterwebrtcdemo) signaling_threa identical 1 line
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:3787395334 1 udp 2122260223 192.168.1.13 41393 typ host generation 0 ufrag zaRf network-id 3 network-cost 10"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:559267639 1 udp 2122202367 ::1 37194 typ host generation 0 ufrag zaRf network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1510613869 1 udp 2122129151 127.0.0.1 58821 typ host generation 0 ufrag zaRf network-id 1"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:3787395334 1 udp 2122260223 192.168.1.13 40090 typ host generation 0 ufrag zaRf network-id 3 network-cost 10"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:559267639 1 udp 2122202367 ::1 54265 typ host generation 0 ufrag zaRf network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:1510613869 1 udp 2122129151 127.0.0.1 56841 typ host generation 0 ufrag zaRf network-id 1"},"session_id":"855855-136345","type":"candidate"}
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:842163049 1 udp 1686052607 73.169.182.142 41393 typ srflx raddr 192.168.1.13 rport 41393 generation 0 ufrag zaRf network-id 3 network-cost 10"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:842163049 1 udp 1686052607 73.169.182.142 40090 typ srflx raddr 192.168.1.13 rport 40090 generation 0 ufrag zaRf network-id 3 network-cost 10"},"session_id":"855855-136345","type":"candidate"}
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    I/chatty  (18467): uid=10302(com.cloudwebrtc.flutterwebrtcdemo) signaling_threa identical 2 lines
    D/FlutterWebRTCPlugin(18467): onIceCandidate
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1876313031 1 tcp 1518222591 ::1 40427 typ host tcptype passive generation 0 ufrag zaRf network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:344579997 1 tcp 1518149375 127.0.0.1 43923 typ host tcptype passive generation 0 ufrag zaRf network-id 1"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:1876313031 1 tcp 1518222591 ::1 55111 typ host tcptype passive generation 0 ufrag zaRf network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter (18467): send: {"to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:344579997 1 tcp 1518149375 127.0.0.1 56015 typ host tcptype passive generation 0 ufrag zaRf network-id 1"},"session_id":"855855-136345","type":"candidate"}
    I/org.webrtc.Logging(18467): Camera2Session: Camera capture session configured.
    I/org.webrtc.Logging(18467): Camera2Session: Stabilization not available.
    I/org.webrtc.Logging(18467): Camera2Session: Using continuous video auto-focus.
    I/org.webrtc.Logging(18467): Camera2Session: Camera device successfully started.
    I/org.webrtc.Logging(18467): CameraCapturer: Create session done. Switch state: IDLE
    I/org.webrtc.Logging(18467): SurfaceTextureHelper: Setting listener to [email protected]43
    D/FlutterWebRTCPlugin(18467): CameraEventsHandler.onFirstFrameAvailable
    I/flutter ( 5702): Recivied data: {"type":"offer","data":{"to":"136345","from":"855855","media":"video","session_id":"855855-136345","description":{"sdp":"v=0\r\no=- 5088572689760621605 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS 93a3ea29-1cfc-4991-a979-1a0b63ebfb07\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:zaRf\r\na=ice-pwd:kkv9AYNdTd/IIiU3U/uMKpFw\r\na=ice-options:trickle renomination\r\na=fingerprint:sha-256 34:A9:E1:7B:77:4C:A3:F7:71:80:C6:E3:F7:2F:2C:66:BD:30:ED:0E:E8:42:25:85:F7:B3:B8:EB:53:32:F8:8B\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\r\na=rtpmap:9 G722/8000\
    I/FlutterWebRTCPlugin( 5702): getUserMedia(audio): mandatory: [], optional: [googNoiseSuppression: true, googEchoCancellation: true, echoCancellation: true, googEchoCancellation2: true, googDAEchoCancellation: true]
    I/FlutterWebRTCPlugin( 5702): getUserMedia(video): [email protected]
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:3787395334 1 udp 2122260223 192.168.1.13 41393 typ host generation 0 ufrag zaRf network-id 3 network-cost 10"}}}
    I/CameraManagerGlobal( 5702): Connecting to camera service
    D/VendorTagDescriptor( 5702): addVendorDescriptor: vendor tag id 3854507339 added
    D/FlutterWebRTCPlugin( 5702): Creating video capturer using Camera2 API.
    D/FlutterWebRTCPlugin( 5702): Create front camera 1 succeeded
    I/org.webrtc.Logging( 5702): EglBase14Impl: Using OpenGL ES version 2
    I/org.webrtc.Logging( 5702): CameraCapturer: startCapture: [email protected]
    D/FlutterWebRTCPlugin( 5702): changeCaptureFormat: [email protected]
    D/FlutterWebRTCPlugin( 5702): MediaStream id: f9ed814f-5756-4073-b46e-0515c7830d4b
    I/org.webrtc.Logging( 5702): EglRenderer: Releasing.
    I/org.webrtc.Logging( 5702): EglRenderer: eglBase detach and release.
    I/org.webrtc.Logging( 5702): EglRenderer: Releasing done.
    I/org.webrtc.Logging( 5702): EglRenderer: Initializing EglRenderer
    I/org.webrtc.Logging( 5702): EglRenderer: Quitting render thread.
    I/org.webrtc.Logging( 5702): EglRenderer: EglBase.create shared context
    I/org.webrtc.Logging( 5702): Camera2Session: Create new camera2 session on camera 1
    I/org.webrtc.Logging( 5702): Camera2Session: start
    I/org.webrtc.Logging( 5702): EglBase14Impl: Using OpenGL ES version 2
    D/FlutterWebRTCPlugin( 5702): [email protected]
    I/org.webrtc.Logging( 5702): Camera2Session: Available preview sizes: [3264x2448, 3264x1836, 2880x2160, 2560x1920, 2560x1440, 2560x1080, 2448x2448, 2160x2160, 2048x1152, 1920x1080, 1440x1080, 1280x960, 1280x720, 720x480, 640x480, 320x240, 176x144]
    D/FlutterWebRTCPlugin( 5702): peerConnectionSetRemoteDescription() start
    I/org.webrtc.Logging( 5702): Camera2Session: Available fps ranges: [[15.0:15.0], [20.0:20.0], [24.0:24.0], [7.0:30.0], [30.0:30.0]]
    I/org.webrtc.Logging( 5702): Camera2Session: Using capture format: [email protected][7.0:30.0]
    I/org.webrtc.Logging( 5702): Camera2Session: Opening camera 1
    D/FlutterWebRTCPlugin( 5702): CameraEventsHandler.onCameraOpening: cameraName=1
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp8 type: VP8 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp9 type: VP9 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: [email protected]
    D/FlutterWebRTCPlugin( 5702): onAddTrack
    D/FlutterWebRTCPlugin( 5702): onAddTrack
    D/FlutterWebRTCPlugin( 5702): peerConnectionSetRemoteDescription() end
    I/org.webrtc.Logging( 5702): Camera2Session: Camera opened.
    I/org.webrtc.Logging( 5702): Camera2Session: Camera capture session configured.
    I/org.webrtc.Logging( 5702): Camera2Session: Stabilization not available.
    I/org.webrtc.Logging( 5702): Camera2Session: Using continuous video auto-focus.
    I/org.webrtc.Logging( 5702): Camera2Session: Camera device successfully started.
    I/org.webrtc.Logging( 5702): CameraCapturer: Create session done. Switch state: IDLE
    I/org.webrtc.Logging( 5702): SurfaceTextureHelper: Setting listener to [email protected]ba
    I/org.webrtc.Logging( 5702): EglRenderer: Releasing.
    I/org.webrtc.Logging( 5702): EglRenderer: eglBase detach and release.
    I/org.webrtc.Logging( 5702): EglRenderer: Releasing done.
    I/org.webrtc.Logging( 5702): EglRenderer: Quitting render thread.
    I/org.webrtc.Logging( 5702): EglRenderer: Initializing EglRenderer
    I/org.webrtc.Logging( 5702): EglRenderer: EglBase.create shared context
    I/org.webrtc.Logging( 5702): EglBase14Impl: Using OpenGL ES version 2
    D/FlutterWebRTCPlugin( 5702): peerConnectionSetLocalDescription() start
    I/flutter ( 5702): send: {"to":"855855","description":{"sdp":"v=0\r\no=- 6351825914022332024 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS f9ed814f-5756-4073-b46e-0515c7830d4b\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:tWtZ\r\na=ice-pwd:/iuD+w4SwJha+wjaa8HNGpKz\r\na=ice-options:trickle renomination\r\na=fingerprint:sha-256 BF:46:F7:4F:31:2F:52:8D:0C:6F:2F:80:1E:58:F1:3B:90:0F:11:5D:91:02:08:94:08:5A:76:2B:7B:1A:46:4F\r\na=setup:active\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\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/3
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: initPlayout(sampleRate=48000, channels=1)
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: byteBuffer.capacity: 960
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:559267639 1 udp 2122202367 ::1 37194 typ host generation 0 ufrag zaRf network-id 2"}}}
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrack.getMinBufferSize: 7696
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: createAudioTrackOnLollipopOrHigher
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: nativeOutputSampleRate: 48000
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1510613869 1 udp 2122129151 127.0.0.1 58821 typ host generation 0 ufrag zaRf network-id 1"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:3787395334 1 udp 2122260223 192.168.1.13 40090 typ host generation 0 ufrag zaRf network-id 3 network-cost 10"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:559267639 1 udp 2122202367 ::1 54265 typ host generation 0 ufrag zaRf network-id 2"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:1510613869 1 udp 2122129151 127.0.0.1 56841 typ host generation 0 ufrag zaRf network-id 1"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:842163049 1 udp 1686052607 73.169.182.142 41393 typ srflx raddr 192.168.1.13 rport 41393 generation 0 ufrag zaRf network-id 3 network-cost 10"}}}
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrack: session ID: 385, channels: 1, sample rate: 48000, max gain: 1.0
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrack: buffer size in frames: 3848
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrack: buffer capacity in frames: 3848
    I/org.webrtc.Logging( 5702): VolumeLogger: [email protected][name=worker_thread - 5880, id=2641]
    I/org.webrtc.Logging( 5702): VolumeLogger: audio mode is: MODE_NORMAL
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:842163049 1 udp 1686052607 73.169.182.142 40090 typ srflx raddr 192.168.1.13 rport 40090 generation 0 ufrag zaRf network-id 3 network-cost 10"}}}
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: startPlayout
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1876313031 1 tcp 1518222591 ::1 40427 typ host tcptype passive generation 0 ufrag zaRf network-id 2"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:344579997 1 tcp 1518149375 127.0.0.1 43923 typ host tcptype passive generation 0 ufrag zaRf network-id 1"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:1876313031 1 tcp 1518222591 ::1 55111 typ host tcptype passive generation 0 ufrag zaRf network-id 2"}}}
    I/flutter ( 5702): Recivied data: {"type":"candidate","data":{"from":"855855","to":"136345","candidate":{"sdpMLineIndex":1,"sdpMid":"video","candidate":"candidate:344579997 1 tcp 1518149375 127.0.0.1 56015 typ host tcptype passive generation 0 ufrag zaRf network-id 1"}}}
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: [email protected][name=AudioTrackJavaThread, id=2655]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp8 type: VP8 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp9 type: VP9 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp8 type: VP8 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp9 type: VP9 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging( 5702): WebRtcAudioRecordExternal: enableBuiltInAEC(false)
    I/org.webrtc.Logging( 5702): WebRtcAudioEffectsExternal: setAEC(false)
    I/org.webrtc.Logging( 5702): WebRtcAudioRecordExternal: enableBuiltInNS(true)
    I/org.webrtc.Logging( 5702): WebRtcAudioEffectsExternal: setNS(true)
    I/org.webrtc.Logging( 5702): NetworkMonitor: Start monitoring with native observer 517290775616
    D/ConnectivityManager( 5702): sendRequestForNetwork CallingUid : 10403, CallingPid : 5702
    D/ConnectivityManager( 5702): requestNetwork; CallingUid : 10403, CallingPid : 5702
    D/ConnectivityManager( 5702): requestNetwork; CallingUid : 10403, CallingPid : 5702
    I/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: Network becomes available: 624
    W/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: Null interface name for network 601
    D/FlutterWebRTCPlugin( 5702): peerConnectionSetLocalDescription() end
    D/FlutterWebRTCPlugin( 5702): onIceGatheringChangeGATHERING
    I/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: capabilities changed: [ Transports: CELLULAR Capabilities: MMS&SUPL&XCAP&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=51200Kbps LinkDnBandwidth>=102400Kbps Specifier: <1>]
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    I/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: link properties changed: {InterfaceName: rmnet_data0 LinkAddresses: [2607:fb90:b2e9:21c0:d184:2bb8:1eed:f71/64,]  Routes: [::/0 -> fe80::648e:370d:ba24:8bf9 rmnet_data0,2607:fb90:b2e9:21c0::/64 -> :: rmnet_data0,] DnsAddresses: [fd00:976a::9,fd00:976a::10,] UsePrivateDns: false PrivateDnsServerName: null PcscfAddresses: [fd00:976a:c206:20::7,fd00:976a:c202:1d::9,fd00:976a:c202:1d::10,] Domains: null MTU: 1440 TcpBufferSizes: 2097152,4194304,8388608,262144,524288,1048576 Stacked: [ [{InterfaceName: v4-rmnet_data0 LinkAddresses: [192.0.0.4/32,]  Routes: [0.0.0.0/0 -> 192.0.0.4 v4-rmnet_data0,] DnsAddresses: [] UsePrivateDns: false PrivateDnsServerName: null Domains: null MTU: 0} ],] }
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): onIceCandidate
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): onIceCandidate
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): onIceCandidate
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin( 5702): peerConnectionAddICECandidate() end
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1908940333 1 udp 2122262783 2607:fb90:b2e9:21c0:d184:2bb8:1eed:f71 45392 typ host generation 0 ufrag tWtZ network-id 3 network-cost 900"},"session_id":"855855-136345","type":"candidate"}
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:559267639 1 udp 2122071295 ::1 48661 typ host generation 0 ufrag tWtZ network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1510613869 1 udp 2121998079 127.0.0.1 51201 typ host generation 0 ufrag tWtZ network-id 1"},"session_id":"855855-136345","type":"candidate"}
    D/FlutterWebRTCPlugin( 5702): onIceCandidate
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -63]
    I/chatty  ( 5702): uid=10403(com.cloudwebrtc.flutterwebrtcdemo) signaling_threa identical 2 lines
    D/FlutterWebRTCPlugin( 5702): onIceCandidate
    D/FlutterWebRTCPlugin( 5702): CameraEventsHandler.onFirstFrameAvailable
    I/org.webrtc.Logging( 5702): HardwareVideoEncoder: initEncode: 640 x 480. @ 300kbps. Fps: 60 Use surface mode: true
    I/ACodec  ( 5702):  [] Now uninitialized
    I/ACodec  ( 5702): [] onAllocateComponent
    I/OMXClient( 5702): IOmx service obtained
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:2653102537 1 tcp 1518217471 2607:fc20:b2d1:d0fd:0:e:60f7:ea01 9 typ host tcptype active generation 0 ufrag tWtZ network-id 4 network-cost 900"},"session_id":"855855-136345","type":"candidate"}
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:3865011119 1 tcp 1518149375 192.0.0.4 9 typ host tcptype active generation 0 ufrag tWtZ network-id 5 network-cost 900"},"session_id":"855855-136345","type":"candidate"}
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1876313031 1 tcp 1518091519 ::1 57636 typ host tcptype passive generation 0 ufrag tWtZ network-id 2"},"session_id":"855855-136345","type":"candidate"}
    I/flutter ( 5702): send: {"to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:344579997 1 tcp 1518018303 127.0.0.1 41917 typ host tcptype passive generation 0 ufrag tWtZ network-id 1"},"session_id":"855855-136345","type":"candidate"}
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Loaded
    I/org.webrtc.Logging( 5702): HardwareVideoEncoder: Format: {color-format=2130708361, i-frame-interval=100, mime=video/x-vnd.on2.vp8, width=640, bitrate-mode=2, bitrate=300000, frame-rate=60, height=480}
    W/OMXUtils( 5702): do not know color format 0x7fa30c06 = 2141391878
    W/OMXUtils( 5702): do not know color format 0x7fa30c04 = 2141391876
    W/OMXUtils( 5702): do not know color format 0x7fa30c08 = 2141391880
    W/OMXUtils( 5702): do not know color format 0x7fa30c07 = 2141391879
    W/OMXUtils( 5702): do not know color format 0x7f000789 = 2130708361
    I/ACodec  ( 5702): app-name : com.cloudwebrtc.flutterwebrtcdemo
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] cannot encode HDR static metadata. Ignoring.
    I/ACodec  ( 5702): setupVideoEncoder succeeded
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] configure, AMessage : AMessage(what = 'conf', target = 1) = {
    I/ACodec  ( 5702):   int32_t color-format = 2130708361
    I/ACodec  ( 5702):   int32_t i-frame-interval = 100
    I/ACodec  ( 5702):   string mime = "video/x-vnd.on2.vp8"
    I/ACodec  ( 5702):   int32_t width = 640
    I/ACodec  ( 5702):   int32_t bitrate-mode = 2
    I/ACodec  ( 5702):   int32_t bitrate = 300000
    I/ACodec  ( 5702):   int32_t frame-rate = 60
    I/ACodec  ( 5702):   int32_t height = 480
    I/ACodec  ( 5702):   int32_t encoder = 1
    I/ACodec  ( 5702): }
    W/OMXUtils( 5702): do not know color format 0x7f000789 = 2130708361
    I/org.webrtc.Logging( 5702): EglBase14Impl: Using OpenGL ES version 2
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Loaded->Idle
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Idle->Executing
    I/MediaCodec( 5702): setCodecState state : 0
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Executing
    I/flutter (18467): Recivied data: {"type":"answer","data":{"from":"136345","to":"855855","description":{"sdp":"v=0\r\no=- 6351825914022332024 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS f9ed814f-5756-4073-b46e-0515c7830d4b\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 102 0 8 106 105 13 110 112 113 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:tWtZ\r\na=ice-pwd:/iuD+w4SwJha+wjaa8HNGpKz\r\na=ice-options:trickle renomination\r\na=fingerprint:sha-256 BF:46:F7:4F:31:2F:52:8D:0C:6F:2F:80:1E:58:F1:3B:90:0F:11:5D:91:02:08:94:08:5A:76:2B:7B:1A:46:4F\r\na=setup:active\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:2 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=rtcp-fb:111 transport-cc\r\na=fmtp:111 minptime=10;useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\r\na=rtpmap:9 G722/8000\r\na=rtpmap:102 ILBC/8000\r\na=rtpmap:0 PCMU/
    D/FlutterWebRTCPlugin(18467): peerConnectionSetRemoteDescription() start
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1908940333 1 udp 2122262783 2607:fb90:b2e9:21c0:d184:2bb8:1eed:f71 45392 typ host generation 0 ufrag tWtZ network-id 3 network-cost 900"}}}
    I/org.webrtc.Logging(18467): WebRtcAudioRecordExternal: enableBuiltInAEC(false)
    I/org.webrtc.Logging(18467): WebRtcAudioEffectsExternal: setAEC(false)
    I/org.webrtc.Logging(18467): WebRtcAudioRecordExternal: enableBuiltInNS(true)
    I/org.webrtc.Logging(18467): WebRtcAudioEffectsExternal: setNS(true)
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: initPlayout(sampleRate=48000, channels=1)
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: byteBuffer.capacity: 960
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: AudioTrack.getMinBufferSize: 7696
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: createAudioTrackOnLollipopOrHigher
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:559267639 1 udp 2122071295 ::1 48661 typ host generation 0 ufrag tWtZ network-id 2"}}}
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: nativeOutputSampleRate: 48000
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1510613869 1 udp 2121998079 127.0.0.1 51201 typ host generation 0 ufrag tWtZ network-id 1"}}}
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: AudioTrack: session ID: 697, channels: 1, sample rate: 48000, max gain: 1.0
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: AudioTrack: buffer size in frames: 3848
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: AudioTrack: buffer capacity in frames: 3848
    I/org.webrtc.Logging(18467): VolumeLogger: [email protected][name=worker_thread - 18585, id=7381]
    I/org.webrtc.Logging(18467): VolumeLogger: audio mode is: MODE_NORMAL
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: startPlayout
    I/org.webrtc.Logging(18467): WebRtcAudioTrackExternal: [email protected][name=AudioTrackJavaThread, id=7396]
    I/org.webrtc.Logging(18467): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp8 type: VP8 color format: 19 context: [email protected]
    I/org.webrtc.Logging(18467): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.vp9 type: VP9 color format: 19 context: [email protected]
    I/org.webrtc.Logging(18467): AndroidVideoDecoder: ctor name: OMX.qcom.video.decoder.avc type: H264 color format: 19 context: [email protected]
    I/org.webrtc.Logging(18467): AndroidVideoDecoder: ctor name: OMX.google.h264.decoder type: H264 color format: 19 context: [email protected]
    D/FlutterWebRTCPlugin(18467): onAddTrack
    I/org.webrtc.Logging(18467): HardwareVideoEncoder: initEncode: 640 x 480. @ 300kbps. Fps: 60 Use surface mode: true
    D/FlutterWebRTCPlugin(18467): onAddTrack
    D/FlutterWebRTCPlugin(18467): peerConnectionSetRemoteDescription() end
    I/ACodec  (18467):  [] Now uninitialized
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    I/ACodec  (18467): [] onAllocateComponent
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    I/OMXClient(18467): IOmx service obtained
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:2653102537 1 tcp 1518217471 2607:fc20:b2d1:d0fd:0:e:60f7:ea01 9 typ host tcptype active generation 0 ufrag tWtZ network-id 4 network-cost 900"}}}
    I/org.webrtc.Logging(18467): EglRenderer: Releasing.
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:3865011119 1 tcp 1518149375 192.0.0.4 9 typ host tcptype active generation 0 ufrag tWtZ network-id 5 network-cost 900"}}}
    I/org.webrtc.Logging(18467): EglRenderer: eglBase detach and release.
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Loaded
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:1876313031 1 tcp 1518091519 ::1 57636 typ host tcptype passive generation 0 ufrag tWtZ network-id 2"}}}
    I/org.webrtc.Logging(18467): EglRenderer: Quitting render thread.
    I/org.webrtc.Logging(18467): HardwareVideoEncoder: Format: {color-format=2130708361, i-frame-interval=100, mime=video/x-vnd.on2.vp8, width=640, bitrate-mode=2, bitrate=300000, frame-rate=60, height=480}
    I/org.webrtc.Logging(18467): EglRenderer: Releasing done.
    I/org.webrtc.Logging(18467): EglRenderer: Initializing EglRenderer
    I/org.webrtc.Logging(18467): EglRenderer: EglBase.create shared context
    I/flutter (18467): Recivied data: {"type":"candidate","data":{"from":"136345","to":"855855","candidate":{"sdpMLineIndex":0,"sdpMid":"audio","candidate":"candidate:344579997 1 tcp 1518018303 127.0.0.1 41917 typ host tcptype passive generation 0 ufrag tWtZ network-id 1"}}}
    I/org.webrtc.Logging(18467): EglBase14Impl: Using OpenGL ES version 2
    I/ACodec  (18467): [HW_HDR] app-pid : 18467
    W/OMXUtils(18467): do not know color format 0x7fa30c06 = 2141391878
    W/OMXUtils(18467): do not know color format 0x7fa30c04 = 2141391876
    W/OMXUtils(18467): do not know color format 0x7fa30c00 = 2141391872
    W/OMXUtils(18467): do not know color format 0x7fa30c09 = 2141391881
    W/OMXUtils(18467): do not know color format 0x7fa30c0a = 2141391882
    W/OMXUtils(18467): do not know color format 0x7fa30c08 = 2141391880
    W/OMXUtils(18467): do not know color format 0x7fa30c07 = 2141391879
    W/OMXUtils(18467): do not know color format 0x7f000789 = 2130708361
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    I/ACodec  (18467): app-name : com.cloudwebrtc.flutterwebrtcdemo
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] cannot encode HDR static metadata. Ignoring.
    I/ACodec  (18467): setupVideoEncoder succeeded
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] configure, AMessage : AMessage(what = 'conf', target = 1) = {
    I/ACodec  (18467):   int32_t color-format = 2130708361
    I/ACodec  (18467):   int32_t i-frame-interval = 100
    I/ACodec  (18467):   string mime = "video/x-vnd.on2.vp8"
    I/ACodec  (18467):   int32_t width = 640
    I/ACodec  (18467):   int32_t bitrate-mode = 2
    I/ACodec  (18467):   int32_t bitrate = 300000
    I/ACodec  (18467):   int32_t frame-rate = 60
    I/ACodec  (18467):   int32_t height = 480
    I/ACodec  (18467):   int32_t encoder = 1
    I/ACodec  (18467): }
    W/OMXUtils(18467): do not know color format 0x7f000789 = 2130708361
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() start
    D/FlutterWebRTCPlugin(18467): peerConnectionAddICECandidate() end
    I/org.webrtc.Logging(18467): EglBase14Impl: Using OpenGL ES version 2
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Loaded->Idle
    I/MediaCodec(18467): setCodecState state : 0
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Idle->Executing
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Executing
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -64]
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 23.
    I/MediaCodec( 5702): setCodecState state : 0
    I/MediaCodec(18467): setCodecState state : 0
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 21.
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -63]
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 85. Dropped: 0. Rendered: 84. Render fps: 21.0. Average render time: 2396 us. Average swapBuffer time: 1149 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -64]
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4002 ms. Frames received: 80. Dropped: 0. Rendered: 80. Render fps: 20.0. Average render time: 3174 us. Average swapBuffer time: 1543 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 20.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): NetworkMonitorAutoDetect: capabilities changed: [ Transports: WIFI Capabilities: NOT_METERED&INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VPN&VALIDATED&NOT_ROAMING&FOREGROUND&NOT_CONGESTED&NOT_SUSPENDED Unwanted:  LinkUpBandwidth>=1048576Kbps LinkDnBandwidth>=1048576Kbps SignalStrength: -63]
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 20.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4003 ms. Frames received: 95. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2505 us. Average swapBuffer time: 1199 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4004 ms. Frames received: 86. Dropped: 0. Rendered: 85. Render fps: 21.2. Average render time: 3131 us. Average swapBuffer time: 1520 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4003 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4004 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2593 us. Average swapBuffer time: 1293 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4007 ms. Frames received: 95. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2843 us. Average swapBuffer time: 1412 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 96. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2537 us. Average swapBuffer time: 1230 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2909 us. Average swapBuffer time: 1422 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4004 ms. Frames received: 95. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2574 us. Average swapBuffer time: 1226 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4010 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 3002 us. Average swapBuffer time: 1487 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4004 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2623 us. Average swapBuffer time: 1233 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4005 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2789 us. Average swapBuffer time: 1344 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4003 ms. Frames received: 95. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2787 us. Average swapBuffer time: 1369 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 95. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2778 us. Average swapBuffer time: 1359 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4004 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2606 us. Average swapBuffer time: 1230 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2853 us. Average swapBuffer time: 1481 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4009 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2537 us. Average swapBuffer time: 1227 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4004 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2918 us. Average swapBuffer time: 1447 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    D/FlutterWebRTCPlugin(18467): onIceGatheringChangeCOMPLETE
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2625 us. Average swapBuffer time: 1263 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    D/FlutterWebRTCPlugin( 5702): onIceGatheringChangeCOMPLETE
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 95. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2944 us. Average swapBuffer time: 1497 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4003 ms. Frames received: 96. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2406 us. Average swapBuffer time: 1193 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4008 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2787 us. Average swapBuffer time: 1448 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4009 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4006 ms. Frames received: 95. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2496 us. Average swapBuffer time: 1285 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4014 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2783 us. Average swapBuffer time: 1414 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4010 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2490 us. Average swapBuffer time: 1297 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4011 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2762 us. Average swapBuffer time: 1375 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4011 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4014 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4003 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2464 us. Average swapBuffer time: 1272 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4023 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 23.9. Average render time: 2799 us. Average swapBuffer time: 1437 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4009 ms. Frames received: 96. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2472 us. Average swapBuffer time: 1256 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4007 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2715 us. Average swapBuffer time: 1327 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4011 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 95. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2408 us. Average swapBuffer time: 1258 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4004 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2552 us. Average swapBuffer time: 1266 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2377 us. Average swapBuffer time: 1217 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4005 ms. Frames received: 95. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2608 us. Average swapBuffer time: 1292 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4011 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4005 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2381 us. Average swapBuffer time: 1231 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4008 ms. Frames received: 96. Dropped: 0. Rendered: 96. Render fps: 24.0. Average render time: 2628 us. Average swapBuffer time: 1349 us.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): EglRenderer: Duration: 4008 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4007 ms. Frames received: 0. Dropped: 0. Rendered: 0. Render fps: .0. Average render time: NA. Average swapBuffer time: NA.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/org.webrtc.Logging( 5702): CameraStatistics: Camera fps: 24.
    D/[email protected][MainActivity]( 5702): ViewPostIme pointer 0
    D/[email protected][MainActivity]( 5702): ViewPostIme pointer 1
    I/flutter ( 5702): send: {"session_id":"855855-136345","from":"136345","type":"bye"}
    I/org.webrtc.Logging(18467): EglRenderer: Duration: 4004 ms. Frames received: 95. Dropped: 0. Rendered: 95. Render fps: 23.7. Average render time: 2435 us. Average swapBuffer time: 1283 us.
    I/org.webrtc.Logging(18467): CameraStatistics: Camera fps: 24.
    I/flutter ( 5702): Recivied data: {"type":"bye","data":{"session_id":"855855-136345","from":"136345","to":"855855"}}
    I/flutter ( 5702): bye: 855855-136345
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture: Nulling session
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture done
    I/org.webrtc.Logging( 5702): CameraCapturer: dispose
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture: No session open
    I/org.webrtc.Logging( 5702): CameraCapturer: Stop capture done
    W/org.webrtc.Logging( 5702): CameraCapturer: onFrameCaptured from another session.
    I/org.webrtc.Logging( 5702): Camera2Session: Stop camera2 session on camera 1
    I/org.webrtc.Logging( 5702): Camera2Session: Stop internal
    I/org.webrtc.Logging( 5702): SurfaceTextureHelper: stopListening()
    I/org.webrtc.Logging( 5702): HardwareVideoEncoder: Releasing MediaCodec on output thread
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Executing->Idle
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Idle->Loaded
    I/ACodec  ( 5702): [OMX.qcom.video.encoder.vp8] Now Loaded
    I/ACodec  ( 5702):  [OMX.qcom.video.encoder.vp8] Now kWhatShutdownCompleted event : 8553
    I/ACodec  ( 5702):  [OMX.qcom.video.encoder.vp8] Now uninitialized
    I/ACodec  ( 5702):  [] Now kWhatShutdownCompleted event : 8553
    I/MediaCodec( 5702): Codec shutdown complete
    I/org.webrtc.Logging( 5702): HardwareVideoEncoder: Release on output thread done
    I/org.webrtc.Logging( 5702): VolumeLogger: [email protected][name=worker_thread - 5880, id=2641]
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: stopPlayout
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: underrun count: 1
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: stopThread
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: Stopping the AudioTrackThread...
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: Calling AudioTrack.stop...
    D/AudioTrack( 5702): stop() called with 3638880 frames delivered
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrack.stop is done.
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: AudioTrackThread has now been stopped.
    I/org.webrtc.Logging( 5702): WebRtcAudioTrackExternal: releaseAudioResources
    I/org.webrtc.Logging( 5702): NetworkMonitor: Stop monitoring with native observer 517290775616
    I/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: Unregister network callback
    D/ConnectivityManager( 5702): unregisterNetworkCallback; CallingUid : 10403, CallingPid : 5702
    I/flutter (18467): Recivied data: {"type":"bye","data":{"session_id":"855855-136345","from":"136345","to":"136345"}}
    I/flutter (18467): bye: 855855-136345
    I/org.webrtc.Logging( 5702): NetworkMonitorAutoDetect: Unregister network callback
    D/ConnectivityManager( 5702): unregisterNetworkCallback; CallingUid : 10403, CallingPid : 5702
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture: Nulling session
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture done
    I/org.webrtc.Logging(18467): CameraCapturer: dispose
    I/org.webrtc.Logging(18467): Camera2Session: Stop camera2 session on camera 1
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture
    I/org.webrtc.Logging(18467): Camera2Session: Stop internal
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture: No session open
    I/org.webrtc.Logging(18467): SurfaceTextureHelper: stopListening()
    I/org.webrtc.Logging(18467): CameraCapturer: Stop capture done
    W/FlutterWebRTCPlugin( 5702): VideoTrack is null
    W/FlutterWebRTCPlugin( 5702): VideoTrack is null
    I/org.webrtc.Logging(18467): HardwareVideoEncoder: Releasing MediaCodec on output thread
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Executing->Idle
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Idle->Loaded
    I/ACodec  (18467): [OMX.qcom.video.encoder.vp8] Now Loaded
    I/ACodec  (18467):  [OMX.qcom.video.encoder.vp8] Now kWhatShutdownCompleted event : 8522
    I/ACodec  (18467):  [OMX.qcom.video.encoder.vp8] Now uninitialized
    I/ACodec  (18467):  [] Now kWhatShutdownCompleted event : 8522
    I/MediaCodec(18467): Codec shutdown complete
    
    Reviewed by CoreyCole at 2019-12-10 22:03
  • 11. P2P Call can't see video of opposite user. can't install apk on my device its close unfortunately.

    As you can see i can't see video between 2 mobile device. you can see it in below image.

    image

    but working well while web to mobile and mobile to web, that you can see in below image. image

    one more thing I can't install app on my device it can't be open. its unfortunately close whenever i am going to open it.

    Thanks Tushar

    Reviewed by theantiqa at 2020-07-26 12:17
  • 12. currently, on android, I tested it many times and the microphone is working fine. but on ios, the microphone is working on first time, but is not working on second time.

    currently, on android, I tested it many times and the microphone is working fine. but on ios, the microphone is working on first time, but is not working on second time.

    this is the first call microphone on ios 173796158-994494ce-6579-4a07-898b-6950f36cf5ec this is the second call microphone on iOS 173796235-08759f18-2b9f-4584-addd-c5b555ba6950

    Reviewed by jybin88 at 2022-06-16 02:08
  • 13. Closed by server

    Closed by server [500 => SocketException: Connection refused (OS Error: Connection refused, errno = 111), address = demo.cloudwebrtc.com, port = 42488]!

    Reviewed by Notebrains at 2022-05-24 06:53
  • 14. desktop image preview not working with mobile camera stream

    Hi guys, i'm trying to create a app to use mobile camera as a webcam. When i try to send my phone camera stream to desktop app in a p2p call sample, image preview not work on desktop app.

    phone to phone working really good phone to phone

    phone to desktop result phone to desktop

    any ideia or solution for this problem? thanks.

    Reviewed by dpavlak at 2022-03-28 19:33
  • 15. Xcode failed error

    ** BUILD FAILED ** Xcode's output: ↳ warning: [CP] Unable to find matching .xcframework slice in 'ios-x86_64-simulator ios-arm64_armv7' for the current build architectures (arm64 x86_64 i386). /Users/akshitmadan/Documents/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_webrtc-0.7.1/ios/Classes/FlutterRTCMediaStream.m:3:9: fatal error: 'WebRTC/WebRTC.h' file not found #import <WebRTC/WebRTC.h> ^~~~~~~~~~~~~~~~~ 1 error generated. note: Using new build system note: Building targets in parallel note: Planning build note: Analyzing workspace note: Constructing build description note: Build preparation complete /Users/akshitmadan/Desktop/flutter-webrtc-demo-master/ios/Pods/Pods.xcodeproj: warning: The iOS Simulator deployment target 'IPHONEOS_DEPLOYMENT_TARGET' is set to 4.3, but the range of supported deployment target versions is 9.0 to 14.5.99. (in target 'Libyuv' from project 'Pods')

    Any solution for this?

    Reviewed by akmadan at 2022-03-06 17:53

Related

video call with WebRTC and Flutter
video call with WebRTC and Flutter

Video Call Flutter App ?? Description: This is sandbox video call application using Flutter and WebRTC, you can call from browser to browser, phone to

Aug 13, 2022
Video call with WebRTC and Flutter
Video call with WebRTC and Flutter

This is sandbox video call application using Flutter and WebRTC, you can call from browser to browser, phone to phone, browser to phone and opposite.

Apr 27, 2022
Sandbox video call application using Flutter and WebRTC
Sandbox video call application using Flutter and WebRTC

Video Call Flutter App ?? Description: This is sandbox video call application using Flutter and WebRTC, you can call from browser to browser, phone to

Apr 27, 2022
A simple audio room using WebRTC P2P mesh network.
A simple audio room using WebRTC P2P mesh network.

P2P Audio Room A simple audio room using peer to peer technology with WebRTC mesh network. Download the app from here Here I have used:- flutter_webrt

May 19, 2022
Flutter camera demo
Flutter camera demo

Flutter Camera Demo A full-fledged camera app built with Flutter using the camera package. You can even add custom features to this app and customize

Jul 29, 2022
Official Flutter SDK for LiveKit. Easily add real-time video and audio to your Flutter apps.

LiveKit Flutter SDK Official Flutter SDK for LiveKit. Easily add real-time video and audio to your Flutter apps. This package is published to pub.dev

Aug 9, 2022
Flutter Music Player - A complete and open source music player designed in flutter.
 Flutter Music Player - A complete and open source music player designed in flutter.

Flutter Music Player A complete and open source music player designed in flutter. It is first complete music player designed in flutter. This app expl

Jun 28, 2022
Flutter plugin for use Video.js in flutter web
Flutter plugin for use Video.js in flutter web

Flutter Video.js player Flutter plugin for use Video.js in flutter web Installation Add it to your package's pubspec.yaml file dependencies: video_j

Aug 9, 2022
Audio player app in Flutter. Created as a tutorial for learning Flutter.

Music Player: create a simple Flutter music player app This is a Flutter project used during a series of articles on I should go to sleep. License Cop

May 5, 2022
This Flutter plugin created to show how to use OpenCV and ZXing C++ libraries natively in Flutter with Dart FFI using the camera stream

OpenCV and ZXing C++ libraries natively in Flutter with Dart FFI using the camera stream

Aug 14, 2022
Flutter radio player mod flutter 2.5

A Flutter plugin to play streaming audio content with background support and lock screen controls.

Mar 14, 2022
Virlow Flutter Recorder - an open-source Flutter application that can transcribe recorded audio
Virlow Flutter Recorder - an open-source Flutter application that can transcribe recorded audio

The Virlow Flutter Recorder is an open-source Flutter application that can transcribe recorded audio, plus it includes TL;DR and Short Hand Notes for your transcription. It also consists of a rich text editor that allows you to edit the transcription plus add any additional notes you require.

Jun 1, 2022
Flutter plugin that can support audio recording and level metering
Flutter plugin that can support audio recording and level metering

flutter_audio_recorder English | 简体中文 Flutter Audio Record Plugin that supports Record Pause Resume Stop and provide access to audio level metering pr

Jun 16, 2022
Flutter plugin for sound. Audio recorder and player.
Flutter plugin for sound. Audio recorder and player.

Flutter Sound user: your documentation is there The CHANGELOG file is here Overview Flutter Sound is a Flutter package allowing you to play and record

Aug 4, 2022
Play simultaneously music/audio from assets/network/file directly from Flutter, compatible with android / ios / web / macos, displays notifications
Play simultaneously music/audio from assets/network/file directly from Flutter, compatible with android / ios / web / macos, displays notifications

?? assets_audio_player ?? Play music/audio stored in assets files (simultaneously) directly from Flutter (android / ios / web / macos). You can also u

Aug 6, 2022
The video player for Flutter with a heart of gold

chewie The video player for Flutter with a heart of gold. The video_player plugin provides low-level access to video playback. Chewie uses the video_p

Aug 11, 2022
Flutter video trimmer package
Flutter video trimmer package

A Flutter package for trimming videos Features Customizable video trimmer Video playback control Retrieving and storing video file Also, supports conv

Aug 7, 2022
A flutter plugin to handle Android / iOS camera
A flutter plugin to handle Android / iOS camera

?? Overview Flutter plugin to add Camera support inside your project. CamerAwesome include a lot of useful features like: ?? Live camera flip ( switch

Aug 15, 2022
A Flutter plugin to use speech recognition on iOS & Android (Swift/Java)
A Flutter plugin to use speech recognition on iOS & Android (Swift/Java)

speech_recognition A flutter plugin to use the speech recognition iOS10+ / Android 4.1+ Basic Example Sytody, speech to todo app Installation Depend o

Jun 18, 2022