Unable to view the Stream on Android 8.1 Chrome browser #3428
Replies: 3 comments
-
Does HLS (:8888) work? |
Beta Was this translation helpful? Give feedback.
-
Hello, no it gave me a black screen with the player button (like it's playing but with black screen) however, it worked on chromium in Ubuntu but not on the android chrome.
…-------- Original message --------
From: moenodedev ***@***.***>
Date: 06/06/2024 11:48 pm (GMT+01:00)
To: bluenviron/mediamtx ***@***.***>
Cc: PerlaSammour ***@***.***>, Author ***@***.***>
Subject: Re: [bluenviron/mediamtx] Unable to view the Stream on Android 8.1 Chrome browser (Discussion #3428)
Does HLS (:8888) work?
http://localhost:8888/mystream
—
Reply to this email directly, view it on GitHub<#3428 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/BDXA3TSA22NVDKIIPG6PSJDZGDKKPAVCNFSM6AAAAABI44VSTGVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4TMOJUGM2DG>.
You are receiving this because you authored the thread.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Hello, from the logs you posted, it seems like your Android device doesn't support reading H264 tracks with WebRTC. In the SDP you posted there's not trace of H264, while support for VP8 and VP9 is present:
The tool you linked checks the list of supported codecs through This is something that is unfortunately related to the device and not to the server. A possible explanation is here: |
Beta Was this translation helpful? Give feedback.
-
Question
I am running the server mediamtx v8.1.2 on a BOXER-8622AI-JP511N-A11 (Jetson Orin Nano), I am publishing the stream using this pipeline in Gstreamer: launch the pipeline: gst-launch-1.0 videotestsrc ! queue ! x264enc tune="zerolatency" speed-preset="ultrafast" ! rtspclientsink location=rtsp://localhost:8554/mystream protocols="tcp"
When i open http://:8889/mystream in the chrome browser of an android tablet, I am unable to see the stream, with the error : "Error: bad status code 400, retrying in some seconds". However, if I open it on Windows or Ubuntu chromium, It is working perfectly.
The server is saying that the "codec is not supported on remote", however, using this tool: https://jsfiddle.net/g1qyf4ea shows that
the Android Chrome browser supports AV1, VP9, H264, H265, Opus and MPEG-4 Audio (AAC).
The tablet chrome version is:
Chrome 125.0.6442.147
The operating system is:
Android 8.1.0; rk3288 Build/OPM8.181105.002
The debug log shows:
2024/06/07 16:17:18 DEB [WebRTC] [conn 20.21.4.7:46796] [c->s] OPTIONS /mystream/whep HTTP/1.1
Host: 20.21.4.2:8889
Accept: /
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Origin: http://20.21.4.2:8889
Referer: http://20.21.4.2:8889/mystream/
User-Agent: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36
2024/06/07 16:17:18 DEB [WebRTC] [conn 20.21.4.7:46796] [s->c] HTTP/1.1 204 No Content
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Authorization, Content-Type, If-Match
Access-Control-Allow-Methods: OPTIONS, GET, POST, PATCH, DELETE
Access-Control-Allow-Origin: *
Access-Control-Expose-Headers: Link
Server: mediamtx
2024/06/07 16:17:18 DEB [WebRTC] [conn 20.21.4.7:46796] [c->s] POST /mystream/whep HTTP/1.1
Host: 20.21.4.2:8889
Accept: /
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Content-Length: 3035
Content-Type: application/sdp
Origin: http://20.21.4.2:8889
Referer: http://20.21.4.2:8889/mystream/
User-Agent: Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36
v=0
o=- 8684613618210739765 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE 0 1
a=extmap-allow-mixed
a=msid-semantic: WMS
m=video 9 UDP/TLS/RTP/SAVPF 96 97 98 99 114 115 116
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:TpXA
a=ice-pwd:yhGcJzhpVn8a0LK2kr3wUXgR
a=ice-options:trickle
a=fingerprint:sha-256 DA:3A:45:69:53:6D:04:61:48:0F:44:C9:0F:C0:05:A1:8C:0E:C8:EE:1A:D2:D7:35:6E:AC:49:11:C4:DE:7F:E1
a=setup:actpass
a=mid:0
a=extmap:1 urn:ietf:params:rtp-hdrext:toffset
a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:3 urn:3gpp:video-orientation
a=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:5 http://www.webrtc.org/experiments/rtp-hdrext/playout-delay
a=extmap:6 http://www.webrtc.org/experiments/rtp-hdrext/video-content-type
a=extmap:7 http://www.webrtc.org/experiments/rtp-hdrext/video-timing
a=extmap:8 http://www.webrtc.org/experiments/rtp-hdrext/color-space
a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid
a=extmap:10 urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id
a=extmap:11 urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id
a=sendrecv
a=msid:- 0a210340-157f-461d-a6dc-70f7d789fae4
a=rtcp-mux
a=rtcp-rsize
a=rtpmap:96 VP8/90000
a=rtcp-fb:96 goog-remb
a=rtcp-fb:96 transport-cc
a=rtcp-fb:96 ccm fir
a=rtcp-fb:96 nack
a=rtcp-fb:96 nack pli
a=rtpmap:97 rtx/90000
a=fmtp:97 apt=96
a=rtpmap:98 VP9/90000
a=rtcp-fb:98 goog-remb
a=rtcp-fb:98 transport-cc
a=rtcp-fb:98 ccm fir
a=rtcp-fb:98 nack
a=rtcp-fb:98 nack pli
a=fmtp:98 profile-id=0
a=rtpmap:99 rtx/90000
a=fmtp:99 apt=98
a=rtpmap:114 red/90000
a=rtpmap:115 rtx/90000
a=fmtp:115 apt=114
a=rtpmap:116 ulpfec/90000
a=ssrc-group:FID 3502138345 3598839886
a=ssrc:3502138345 cname:+P0tmd7dntZyT7OX
a=ssrc:3502138345 msid:- 0a210340-157f-461d-a6dc-70f7d789fae4
a=ssrc:3598839886 cname:+P0tmd7dntZyT7OX
a=ssrc:3598839886 msid:- 0a210340-157f-461d-a6dc-70f7d789fae4
m=audio 9 UDP/TLS/RTP/SAVPF 111 63 9 0 8 13 110 126
c=IN IP4 0.0.0.0
a=rtcp:9 IN IP4 0.0.0.0
a=ice-ufrag:TpXA
a=ice-pwd:yhGcJzhpVn8a0LK2kr3wUXgR
a=ice-options:trickle
a=fingerprint:sha-256 DA:3A:45:69:53:6D:04:61:48:0F:44:C9:0F:C0:05:A1:8C:0E:C8:EE:1A:D2:D7:35:6E:AC:49:11:C4:DE:7F:E1
a=setup:actpass
a=mid:1
a=extmap:14 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=extmap:4 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01
a=extmap:9 urn:ietf:params:rtp-hdrext:sdes:mid
a=sendrecv
a=msid:- 5073ad46-ac7a-4109-a5e5-1316bc90bc65
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=rtcp-fb:111 transport-cc
a=fmtp:111 minptime=10;useinbandfec=1;stereo=1;sprop-stereo=1
a=rtpmap:63 red/48000/2
a=fmtp:63 111/111
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:13 CN/8000
a=rtpmap:110 telephone-event/48000
a=rtpmap:126 telephone-event/8000
a=ssrc:2032969246 cname:+P0tmd7dntZyT7OX
a=ssrc:2032969246 msid:- 5073ad46-ac7a-4109-a5e5-1316bc90bc65
2024/06/07 16:17:18 INF [WebRTC] [session 97e6de86] created by 20.21.4.7:46796
2024/06/07 16:17:18 DEB [WebRTC] [session 97e6de86] peer connection state: connecting
2024/06/07 16:17:18 DEB [WebRTC] [session 97e6de86] peer connection state: closed
2024/06/07 16:17:18 INF [WebRTC] [session 97e6de86] closed: unable to start track, codec is not supported by remote
2024/06/07 16:17:18 DEB [WebRTC] [conn 20.21.4.7:46796] [s->c] HTTP/1.1 400 Bad Request
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Type: application/json; charset=utf-8
Server: mediamtx
(body of 67 bytes)
launch mediamtx: ./mediamtx
launch the pipeline: gst-launch-1.0 videotestsrc ! queue ! x264enc tune="zerolatency" speed-preset="ultrafast" ! rtspclientsink location=rtsp://localhost:8554/mystream protocols="tcp"
open http://:8889/mystream in the chrome android browser
Do you have any suggestion on how to make it work on the android browser? Is there a parameter in the webrtc or broser that can be changed? I even tested it using other browsers on the android tablet like Firefox Nighty and the same error occurs.
Beta Was this translation helpful? Give feedback.
All reactions