Search code examples
javascriptnode.jswebrtckurento

Node Tutorial one to Many has no loading the remote server Stream Spinner moving endless


I am new to using Kurrento required in project , but as i clone the tutorial given on git hub for Kurento and following the instruction for one2Many call . First of all there is broken packages fro adapter.js as i successfully resolved them but after that there is an issue i.e my webcam is running well and i am able to see my side stream but not able to see the remote stream there is spinner moving endless.

And also there are two error as i see on console of my chrome i.e:-

1)Failed to parse SessionDescription. m=audio 0 UDP/TLS/RTP/SAVPF
Expects at least 4 fields. 
2)Uncaught (in promise) Failed to parse
SessionDescription. m=audio 0 UDP/TLS/RTP/SAVPF Expects at least 4 fields.

Now the error above are resolved there is no any error on my console

Here are the steps i follow -:

1)sudo git clone https://github.com/Kurento/kurento-tutorial-node.git 2)curl -sL https://deb.nodesource.com/setup | sudo bash -  
3)sudo apt-get install -y nodejs  
4)sudo npm install npm -g  
5)cd static 
6)bower install  
7)node server.js

now kurento example running on port no:8443

After that i opened that URL on my chrome browser version no Version 46.0.2490.86

And after that i seen say In HelloWorld example . The screen shot is in the folllowing URL please check:-

https://www.evernote.com/shard/s574/sh/589ac65d-00ca-4611-8907-0646d5e0818a/bd2dc0297bde0181cf3271ecc6b7ac09

And in the message text area it will showing :-

Page loaded ...
Starting video call ...
Creating WebRtcPeer and generating local sdp offer ...
chrome: {"audio":true,"video":{"optional":[{"minWidth":640},{"maxWidth":640},{"minFramerate":15},{"maxFramerate":15}]}}
constraints: {"mandatory":{"OfferToReceiveAudio":true,"OfferToReceiveVideo":true},"optional":[{"DtlsSrtpKeyAgreement":true}]}
Created SDP offer
Local description set
'v=0
o=- 5127129914819809209 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
a=msid-semantic: WMS Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
m=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BNeugX+OQ8/t6pt3
a=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r
a=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10; useinbandfec=1
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:126 telephone-event/8000
a=maxptime:60
a=ssrc:524015682 cname:aXshARqNMIZF2d2q
a=ssrc:524015682 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk 84518c74-a89d-4e0d-91c6-aa89d3112443
a=ssrc:524015682 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:524015682 label:84518c74-a89d-4e0d-91c6-aa89d3112443
m=video 9 UDP/TLS/RTP/SAVPF 100 116 117 96
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:BNeugX+OQ8/t6pt3
a=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r
a=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10
a=setup:actpass
a=mid:video
a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:4 urn:3gpp:video-orientation
a=sendrecv
a=rtcp-mux
a=rtpmap:100 VP8/90000
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=rtcp-fb:100 goog-remb
a=rtpmap:116 red/90000
a=rtpmap:117 ulpfec/90000
a=rtpmap:96 rtx/90000
a=fmtp:96 apt=100
a=ssrc-group:FID 390686982 668808432
a=ssrc:390686982 cname:aXshARqNMIZF2d2q
a=ssrc:390686982 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:390686982 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:390686982 label:b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:668808432 cname:aXshARqNMIZF2d2q
a=ssrc:668808432 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e
a=ssrc:668808432 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk
a=ssrc:668808432 label:b0dd89aa-6651-4534-90f6-facded136a0e
'
Invoking SDP offer callback function 182.71.214.253:8443
Senging message: {"id":"start","sdpOffer":"v=0\r\no=- 5127129914819809209 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE audio video\r\na=msid-semantic: WMS Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\nm=audio 9 UDP/TLS/RTP/SAVPF 111 103 104 9 0 8 106 105 13 126\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:BNeugX+OQ8/t6pt3\r\na=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r\r\na=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10\r\na=setup:actpass\r\na=mid:audio\r\na=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\na=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\na=sendrecv\r\na=rtcp-mux\r\na=rtpmap:111 opus/48000/2\r\na=fmtp:111 minptime=10; useinbandfec=1\r\na=rtpmap:103 ISAC/16000\r\na=rtpmap:104 ISAC/32000\r\na=rtpmap:9 G722/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:126 telephone-event/8000\r\na=maxptime:60\r\na=ssrc:524015682 cname:aXshARqNMIZF2d2q\r\na=ssrc:524015682 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk 84518c74-a89d-4e0d-91c6-aa89d3112443\r\na=ssrc:524015682 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:524015682 label:84518c74-a89d-4e0d-91c6-aa89d3112443\r\nm=video 9 UDP/TLS/RTP/SAVPF 100 116 117 96\r\nc=IN IP4 0.0.0.0\r\na=rtcp:9 IN IP4 0.0.0.0\r\na=ice-ufrag:BNeugX+OQ8/t6pt3\r\na=ice-pwd:SXjhj3+kmcW4fSrKgUQE5W4r\r\na=fingerprint:sha-256 90:C8:D9:31:EC:61:2A:FD:A5:C0:9E:FA:96:04:05:4A:A1:0D:81:46:2B:03:8E:81:BB:B2:AC:23:ED:82:6B:10\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=sendrecv\r\na=rtcp-mux\r\na=rtpmap:100 VP8/90000\r\na=rtcp-fb:100 ccm fir\r\na=rtcp-fb:100 nack\r\na=rtcp-fb:100 nack pli\r\na=rtcp-fb:100 goog-remb\r\na=rtpmap:116 red/90000\r\na=rtpmap:117 ulpfec/90000\r\na=rtpmap:96 rtx/90000\r\na=fmtp:96 apt=100\r\na=ssrc-group:FID 390686982 668808432\r\na=ssrc:390686982 cname:aXshARqNMIZF2d2q\r\na=ssrc:390686982 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:390686982 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:390686982 label:b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:668808432 cname:aXshARqNMIZF2d2q\r\na=ssrc:668808432 msid:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk b0dd89aa-6651-4534-90f6-facded136a0e\r\na=ssrc:668808432 mslabel:Y6etb6gLEIhpyR1SAVBocnsUnE2CwrYUJArk\r\na=ssrc:668808432 label:b0dd89aa-6651-4534-90f6-facded136a0e\r\n"}
Local candidate{"candidate":"candidate:3366644091 1 udp 2122260223 192.168.2.140 35246 typ host generation 0","sdpMid":"audio","sdpMLineIndex":0}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:3366644091 1 udp 2122260223 192.168.2.140 35246 typ host generation 0","sdpMid":"audio","sdpMLineIndex":0}}
Local candidate{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0","sdpMid":"video","sdpMLineIndex":1}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0","sdpMid":"video","sdpMLineIndex":1}}
Local candidate{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0","sdpMid":"audio","sdpMLineIndex":0}
Senging message: {"id":"onIceCandidate","candidate":{"candidate":"candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0","sdpMid":"audio","sdpMLineIndex":0}}

And in node console i am seeing the following

Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 1 udp 1686052607 180.151.85.198 25665 typ srflx raddr 192.168.2.140 rport 42447 generation 0',
     sdpMid: 'video',
     sdpMLineIndex: 1 } }
Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 2 udp 1686052606 180.151.85.198 22889 typ srflx raddr 192.168.2.140 rport 49338 generation 0',
     sdpMid: 'video',
     sdpMLineIndex: 1 } }
Queueing candidate
Connection mj_op2LrzDzfqOCUojr3JJYjBpVxSlcT received message  { id: 'onIceCandidate',
  candidate: 
   { candidate: 'candidate:1239609295 2 udp 1686052606 180.151.85.198 13120 typ srflx raddr 192.168.2.140 rport 45775 generation 0',
     sdpMid: 'audio',
     sdpMLineIndex: 0 } }
Queueing candidate
reconnect to server 2 200 undefined
reconnect to server 3 300 undefined
reconnect to server 4 500 undefined
reconnect to server 5 800 undefined
reconnect to server 6 1300 undefined
reconnect to server 7 2100 undefined
reconnect to server 8 3400 undefined
reconnect to server 9 5500 undefined
reconnect to server 10 8900 undefined
reconnect to server 11 10000 undefined
reconnect to server 12 10000 undefined
reconnect to server 13 10000 undefined
reconnect to server 14 10000 undefined
reconnect to server 15 10000 undefined

I am using Kurneto media sever Version: 6.4.0 on my ubuntu machine

And the configuration file i.e kurento.conf.json is as following

{
  "mediaServer" : {
    "resources": {
    //  //Resources usage limit for raising an exception when an object creation is attempted
    //  "exceptionLimit": "0.8",
    //  // Resources usage limit for restarting the server when no objects are alive
    //  "killLimit": "0.7",
        // Garbage collector period in seconds
        "garbageCollectorPeriod": 240
    },
    "net" : {
      "websocket": {
        "port": 8888,
        //"secure": {
        //  "port": 8433,
        //  "certificate": "defaultCertificate.pem",
        //  "password": ""
        //},
        //"registrar": {
        //  "address": "ws://localhost:9090",
        //  "localAddress": "localhost"
        //},
        "path": "kurento",
        "threads": 10
      }
    }
  }
}

This is the snapshot of endless spinner

so this is all about my code, machine, version and configuration file.enter image description here

I am facing this problem in all tutorial examples .

Please help me to out from this sitaution . Any help would be appreciated. Thanks


Solution

  • I installed kurento on a different ubuntu machine and its worked for me , i follow the following steps:-

    I upgrade my dist by

    apt-get dist-upgrade

    But be careful before upgrading your dist because it will upgrade distribution and after that some of your app might not work .

    And then install

    sudo apt-get install libglib2.0-0

    after that i install kurento

    sudo apt-get install kurento-media-server-6.0

    after that i explicitly install openJdk7

    And finally its worked for me . But after that some of my app are not worked on my machine like skype etc so as i installed dependencies for those than kurento remote side stream issue is coming again so finally i remove everything from that machine and run only kurento and no doubt thats working fine!

    Thanks