WebRTC has no Video stream on Android

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

WebRTC has no Video stream on Android

Vladimir Tyutin
Hi all,
I need your assistance to get issue with WebRTC solved on Android.
I have Linux camera that stream Audio and Video via gstreamer webrtc.
Here is the pipeline I use on camera:
#define WEBRTC_PIPELINE    "webrtcbin name=webrtc " STUN_SERVER_PROP "=" STUN_1 " " STUN_SERVER_PROP "=" STUN_2 " " STUN_SERVER_PROP "=" STUN_3 " " \
                    STUN_SERVER_PROP "=" STUN_4 " " STUN_SERVER_PROP "=" STUN_5 " " TURN_SERVER_PROP "=" TURN_1 " " \
                    "v536videosrc sys-init=false push_mode=true device=1 channel=2 encoder=2 format=H264 width=640 height=480 ! video/x-h264, stream-format=byte-stream, alignment=au, profile=baseline ! queue name=videoqueue leaky=downstream max-size-buffers=25 ! h264parse ! rtph264pay name=vrtp ! capsfilter name=vrtpcaps caps=" RTP_CAPS_H264 "96 ! webrtc. " \
                    "alsasrc ! queue leaky=downstream ! audioconvert ! opusenc ! rtpopuspay ! capsfilter caps=" RTP_CAPS_OPUS "97 ! webrtc.  "

On other side I have iOS and Android clients. Generally mobile apps request camera app to send SDP offer and replies with SDP answer.
On iOS everything works fine but on Android I get incoming stream but with Audio track only. There is no Video track. Meanwhile I see that decoder on Android receives frames and decodes it. But because I was not notified about video track decoder is not linked with renderer.

Previously it worked on Android as well. But since I migrated from gstreamer version 1.16.0 to 1.18.2 android stopped working.

See the SDP offer/answer below:
Here is SDP Offer that camera send out:
Offer:
v=0
o=- 2727457112355043665 0 IN IP4 0.0.0.0
s=-
t=0 0
a=ice-options:trickle
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:ZNTy6MlyPzh048H1DdtsVdLo/XiW2Uqb
a=ice-pwd:KyTWeQnmhwO0/LyQA2LUP3FiYJGRoUVV
a=rtcp-mux
a=rtcp-rsize
a=sendrecv
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1
a=mid:video0
a=fingerprint:sha-256 9C:E7:D4:EB:D6:75:8A:3C:99:E3:98:EC:AC:FD:4D:B4:D3:23:DA:E0:57:FA:DD:69:3D:ED:3B:B5:62:1F:2D:01
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=setup:actpass
a=ice-ufrag:I2bN1TM/KmFz9xVo04t3uv3GTSvShDqK
a=ice-pwd:sISLhguA6rG6P8+dgO4Tzv83e0MFvhrB
a=rtcp-mux
a=rtcp-rsize
a=sendrecv
a=rtpmap:97 OPUS/48000/2
a=rtcp-fb:97 nack pli
a=fmtp:97 sprop-maxcapturerate=48000;sprop-stereo=0
a=ssrc:3322931031 msid:user1617078174@host-51211098 webrtctransceiver7
a=ssrc:3322931031 cname:user1617078174@host-51211098
a=mid:audio1
a=fingerprint:sha-256 9C:E7:D4:EB:D6:75:8A:3C:99:E3:98:EC:AC:FD:4D:B4:D3:23:DA:E0:57:FA:DD:69:3D:ED:3B:B5:62:1F:2D:01

Here is SDP answer Android replies:
v=0
o=- 5424858724479212163 2 IN IP4 127.0.0.1
s=-
t=0 0
a=msid-semantic: WMS 102
m=video 9 UDP/TLS/RTP/SAVPF 96
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:z3Lh
a=ice-pwd:xaQ5mx/UDmKhn2A8NGSkRHZH
a=ice-options:trickle renomination
a=fingerprint:sha-256 66:19:2B:54:26:FC:62:90:64:D9:23:87:7A:FD:D8:3A:7B:B8:BD:34:A4:17:33:F5:9F:74:C2:B1:67:A2:58:17
a=setup:active
a=mid:video0
a=sendrecv
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 H264/90000
a=rtcp-fb:96 nack pli
a=fmtp:96 level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f
a=ssrc:1087534905 cname:BC1cD7i5+42O33hI
a=ssrc:1087534905 msid:102 103
a=ssrc:1087534905 mslabel:102
a=ssrc:1087534905 label:103
m=audio 9 UDP/TLS/RTP/SAVPF 97
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:vO56
a=ice-pwd:6kXx3z6VR7D6T2HynYS23eIl
a=ice-options:trickle renomination
a=fingerprint:sha-256 66:19:2B:54:26:FC:62:90:64:D9:23:87:7A:FD:D8:3A:7B:B8:BD:34:A4:17:33:F5:9F:74:C2:B1:67:A2:58:17
a=setup:active
a=mid:audio1
a=sendrecv
a=rtcp-mux
a=rtpmap:97 OPUS/48000/2
a=fmtp:97 minptime=10;useinbandfec=1
a=ssrc:1933417375 cname:BC1cD7i5+42O33hI
a=ssrc:1933417375 msid:102 101
a=ssrc:1933417375 mslabel:102
a=ssrc:1933417375 label:101


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel