I’d like simply to stream a video/audio from an Axis camera managed by a Wowza Server Engine and display the video/audio on Firefox browser. The streaming flow from the camera (H264, AAC 16000) is transcoded with the help of ffmpeg to H264, AAC(48000). This produces 2 audio channels (as visibile in SDP) which allows to be displayed by the browsers after Wowza transcoding to VP8, OPUS and mpeg-ts. In Chrome it works fine. In Firefox (tested 49 and 50beta) some errors occur.
The console gives:
ICE failed, see about:webrtc for more details
When displaying about:webrtc I have:
From SDP Local
a=candidate:0 1 UDP 2122252543 192.42.172.126 58085 typ host
From SDP distant
a=candidate:0 1 TCP 50 192.42.172.189 6558 typ host generation 0
Logs about:webrtc :
(ice/WARNING) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): peer (PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default) has no stream matching stream 0-1477400980285000 (id=110 url=<wowza/webrtc url>) aLevel=1
(ice/NOTICE) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): peer (PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default) no streams with non-empty check lists
(ice/NOTICE) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): peer (PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default) no streams with pre-answer requests
(ice/NOTICE) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): peer (PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default) no checks to start
(ice/WARNING) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): Error parsing attribute: candidate:0 1 TCP 50 192.42.172.189 6558 typ host generation 0
(ice/INFO) ICE(PC:1477400980285000 (id=110 url=<wowza/webrtc url>)): peer (PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default) Trickle grace period is over; marking every component with only failed pairs as failed.
(ice/INFO) ICE-PEER(PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default)/STREAM(0-1477400980285000 (id=110 url=<wowza/webrtc url>) aLevel=0)/COMP(1): All pairs are failed, and grace period has elapsed. Marking component as failed.
(ice/INFO) ICE-PEER(PC:1477400980285000 (id=110 url=<wowza/webrtc url>):default): all checks completed success=0 fail=1
If I change in VHost.xml the value of webrtcIceCandidateIpAddresses to work on UDP (it means from wowza IP 192.42.172.189,tcp,6558 to 192.42.172.189,udp):
<Property>
<Name>webrtcIceCandidateIpAddresses</Name>
<Value>192.42.172.189,udp</Value>
<Type>String</Type>
</Property>
I will have the same error in console. In about:webrtc I will have:
SDP Local
a=candidate:0 1 UDP 2122252543 192.42.172.126 50662 typ host
SDP distant
a=candidate:0 1 UDP 50 192.42.172.189 6974 typ host generation 0
Logs about:webrtc :
(ice/WARNING) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) has no stream matching stream 0-1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html) aLevel=1
(ice/NOTICE) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) no streams with non-empty check lists
(ice/NOTICE) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) no streams with pre-answer requests
(ice/NOTICE) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) no checks to start
(ice/INFO) ICE-PEER(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default)/CAND-PAIR(uCnR): setting pair to state FROZEN: uCnR|IP4:192.42.172.126:50662/UDP|IP4:192.42.172.189:6974/UDP(host(IP4:192.42.172.126:50662/UDP)|candidate:0 1 UDP 50 192.42.172.189 6974 typ host generation 0)
(ice/INFO) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html))/CAND-PAIR(uCnR): Pairing candidate IP4:192.42.172.126:50662/UDP (7e7f00ff):IP4:192.42.172.189:6974/UDP (32) priority=218992869886 (32fcfe01fe)
(ice/INFO) ICE-PEER(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default)/ICE-STREAM(0-1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html) aLevel=0): Starting check timer for stream.
(ice/INFO) ICE-PEER(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default)/CAND-PAIR(uCnR): setting pair to state WAITING: uCnR|IP4:192.42.172.126:50662/UDP|IP4:192.42.172.189:6974/UDP(host(IP4:192.42.172.126:50662/UDP)|candidate:0 1 UDP 50 192.42.172.189 6974 typ host generation 0)
(ice/INFO) ICE-PEER(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default)/CAND-PAIR(uCnR): setting pair to state IN_PROGRESS: uCnR|IP4:192.42.172.126:50662/UDP|IP4:192.42.172.189:6974/UDP(host(IP4:192.42.172.126:50662/UDP)|candidate:0 1 UDP 50 192.42.172.189 6974 typ host generation 0)
(ice/NOTICE) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) is now checking
(generic/EMERG) Error in recvfrom: -5961
(ice/WARNING) ICE-PEER(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default): no pairs for 0-1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html) aLevel=0
(generic/EMERG) Error in recvfrom: -5961
(generic/EMERG) Error in recvfrom: -5961
(generic/EMERG) Error in recvfrom: -5961
(generic/EMERG) Error in recvfrom: -5961
(generic/EMERG) Error in recvfrom: -5961
(ice/INFO) ICE(PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html)): peer (PC:1477402453964000 (id=114 url=https://192.42.172.189:6560/webrtc/play/index.html):default) Trickle grace period is over; marking every component with only failed pairs as failed.
(generic/EMERG) Error in recvfrom: -5961
I tried to find a solution by searching on the net a possible cause, without results. Could someone help, please ?
Thanks, Diego