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 |
Free forum by Nabble | Edit this page |