alexeyvasilyev / rtsp-client-android

Lightweight low-latency RTSP client library for Android
Apache License 2.0
245 stars 67 forks source link

404 Stream Not Found, but url does work #48

Closed pergolafabio closed 1 month ago

pergolafabio commented 2 years ago

Hey @alexeyvasilyev

I have an issue displaying the video, i think its because of the Uri.Parse

The first one doesnt display, while the second one works is it maybe because of the strang characters in the url , the "=" or the "." ?

Any idea how i can solve that?

appreciated

        val uri = Uri.parse("rtsp://192.168.0.70:554/Sms=24.unicast")
        val username = "syno"
        val password = "xxx"

        val uri = Uri.parse("rtsp://192.168.0.70:554/Streaming/Channels/102")
        val username = "admin"
        val password = "xxx"
pergolafabio commented 2 years ago

I also see an 404 in the logcat:

2022-06-08 14:26:58.723 8261-8261/org.linphone.debug E/Linphone: URI:rtsp://192.168.0.14:554/Sms=24.unicast
2022-06-08 14:26:58.759 8261-8494/org.linphone.debug I/RtspClient: Video: H264
2022-06-08 14:26:58.771 8261-8494/org.linphone.debug W/System.err: java.io.IOException: Invalid status code 404
2022-06-08 14:26:58.771 8261-8494/org.linphone.debug W/System.err:     at com.alexvas.rtsp.RtspClient.checkStatusCode(RtspClient.java:570)
2022-06-08 14:26:58.771 8261-8494/org.linphone.debug W/System.err:     at com.alexvas.rtsp.RtspClient.execute(RtspClient.java:463)
2022-06-08 14:26:58.771 8261-8494/org.linphone.debug W/System.err:     at com.alexvas.rtsp.widget.RtspSurfaceView$RtspThread.run(RtspSurfaceView.kt:228
pergolafabio commented 2 years ago

Now also tried with your test rtsp app, and get the same 404 error , it must be something in the string url format, but i dont know how to fix

pergolafabio commented 2 years ago

hey @alexeyvasilyev , already got a chance to look at my issue?

thnx in advance

pergolafabio commented 2 years ago

Hey @alexeyvasilyev , sorry to tag you, but I have still issues with the string I used, alltough it works correct with vlc or other rtsp clients...

What could be wrong? How can I debug it?

pergolafabio commented 2 years ago

here is a logcat:

2022-11-17 10:53:10.377 8756-8756/com.alexvas.rtsp.demo V/LiveFragment: onResume()
2022-11-17 10:53:10.377 8756-8756/com.alexvas.rtsp.demo V/LiveViewModel: loadParams()
2022-11-17 10:53:10.465 8756-8779/com.alexvas.rtsp.demo D/DecorView: onWindowFocusChangedFromViewRoot hasFocus: true, DecorView@2ab9e98[MainActivity]
2022-11-17 10:53:12.117 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: OPTIONS rtsp://xxx:554/Sms=24.unicast RTSP/1.0
2022-11-17 10:53:12.117 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 1
2022-11-17 10:53:12.117 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 10:53:12.183 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 10:53:12.183 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 10:53:12.184 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 1
2022-11-17 10:53:12.186 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 09:53:13 GMT
2022-11-17 10:53:12.190 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER
2022-11-17 10:53:12.191 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: DESCRIBE rtsp://xxx:554/Sms=24.unicast RTSP/1.0
2022-11-17 10:53:12.191 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Accept: application/sdp
2022-11-17 10:53:12.191 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 2
2022-11-17 10:53:12.191 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 10:53:12.234 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: 401 Unauthorized
2022-11-17 10:53:12.234 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 401
2022-11-17 10:53:12.235 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 2
2022-11-17 10:53:12.236 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 09:53:13 GMT
2022-11-17 10:53:12.238 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: WWW-Authenticate: Digest realm="LIVE555 Streaming Media", nonce="72b15d45870dbf0423832c0adf8f5bda"
2022-11-17 10:53:12.248 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: DESCRIBE rtsp://xxx:554/Sms=24.unicast RTSP/1.0
2022-11-17 10:53:12.249 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Accept: application/sdp
2022-11-17 10:53:12.249 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="syno", realm="LIVE555 Streaming Media", nonce="72b15d45870dbf0423832c0adf8f5bda", uri="rtsp://xxx:554/Sms=24.unicast", response="9c4e5e25c60a9b4421c46920074ab554"
2022-11-17 10:53:12.249 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 3
2022-11-17 10:53:12.249 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 10:53:12.304 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 10:53:12.304 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 10:53:12.305 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 3
2022-11-17 10:53:12.306 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 09:53:13 GMT
2022-11-17 10:53:12.307 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Base: rtsp://192.168.0.14/devType=1&devId=24/1,24_medium.unicast/
2022-11-17 10:53:12.308 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Type: application/sdp
2022-11-17 10:53:12.308 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Length: 486
2022-11-17 10:53:12.309 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: v=0
    o=- 1665059400530465 1 IN IP4 192.168.0.14
    s=Session streamed by "ssrtspd"
    i=1,24_medium.unicast
    t=0 0
    a=tool:LIVE555 Streaming Media v2015.05.03
    a=type:broadcast
    a=control:*
    a=range:npt=0-
    a=x-qt-text-nam:Session streamed by "ssrtspd"
    a=x-qt-text-inf:1,24_medium.unicast
    m=video 0 RTP/AVP 96
    c=IN IP4 0.0.0.0
    b=AS:500
    a=rtpmap:96 H264/90000
    a=fmtp:96 packetization-mode=1;profile-level-id=42001E;sprop-parameter-sets=Z0IAHpY1QWB7TcBAQECA,aM48gA==
    a=control:track1
2022-11-17 10:53:12.310 8756-9296/com.alexvas.rtsp.demo I/RtspClient: Video: H264
2022-11-17 10:53:12.328 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: SETUP rtsp://xxx:554/Sms=24.unicast/track1 RTSP/1.0
2022-11-17 10:53:12.328 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Transport: RTP/AVP/TCP;unicast;interleaved=0-1
2022-11-17 10:53:12.328 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="syno", realm="LIVE555 Streaming Media", nonce="72b15d45870dbf0423832c0adf8f5bda", uri="rtsp://xxx:554/Sms=24.unicast/track1", response="344a3ecee92a597167b5068d557cc7b3"
2022-11-17 10:53:12.328 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 4
2022-11-17 10:53:12.328 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 10:53:12.372 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 10:53:12.372 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 10:53:12.372 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 4
2022-11-17 10:53:12.372 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 09:53:13 GMT
2022-11-17 10:53:12.373 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Transport: RTP/AVP/TCP;unicast;destination=xx.xxx.xx.xxx;source=192.168.0.14;interleaved=0-1
2022-11-17 10:53:12.373 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Session: 6BE8A4EE
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: PLAY rtsp://xxx:554/Sms=24.unicast RTSP/1.0
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Range: npt=0.000-
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="syno", realm="LIVE555 Streaming Media", nonce="72b15d45870dbf0423832c0adf8f5bda", uri="rtsp://xxx:554/Sms=24.unicast", response="a7c0b3af848507dd09d561a47bf20453"
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 5
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: Session: 6BE8A4EE
2022-11-17 10:53:12.378 8756-9296/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 10:53:12.412 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: 404 Stream Not Found
2022-11-17 10:53:12.413 8756-9296/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 404
2022-11-17 10:53:12.413 8756-9296/com.alexvas.rtsp.demo W/System.err: java.io.IOException: Invalid status code 404
2022-11-17 10:53:12.413 8756-9296/com.alexvas.rtsp.demo W/System.err:     at com.alexvas.rtsp.RtspClient.checkStatusCode(RtspClient.java:570)
2022-11-17 10:53:12.413 8756-9296/com.alexvas.rtsp.demo W/System.err:     at com.alexvas.rtsp.RtspClient.execute(RtspClient.java:463)
2022-11-17 10:53:12.413 8756-9296/com.alexvas.rtsp.demo W/System.err:     at com.alexvas.rtsp.widget.RtspSurfaceView$RtspThread.run(RtspSurfaceView.kt:228)
2022-11-17 10:53:12.495 8756-8756/com.alexvas.rtsp.demo V/ViewRootImpl: The specified message queue synchronization  barrier token has not been posted or has already been removed
2022-11-17 10:53:12.517 8756-8756/com.alexvas.rtsp.demo W/Choreographer: Already have a pending vsync event.  There should only be one at a time.
pergolafabio commented 2 years ago

What i noticed in the logcat, as RTSP url in your app i used:

rtsp://xxx.com:554/Sms=24.unicast

and i see in log cat its responding with internal ip:

o=- 1665059400530465 1 IN IP4 192.168.0.14 , not sure if its related

also tried inputting IP directly, but doesnt help, i always get:

PLAY rtsp://192.168.0.14:554/Sms=24.unicast RTSP/1.0
2022-11-17 11:03:58.963 10536-10780/com.alexvas.rtsp.demo I/RtspClient DBG: Range: npt=0.000-
2022-11-17 11:03:58.963 10536-10780/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="syno", realm="LIVE555 Streaming Media", nonce="652512808777b1f771904721ac208bd0", uri="rtsp://192.168.0.14:554/Sms=24.unicast", response="e391ba5c89f2085a233dbd4917f2994d"
2022-11-17 11:03:58.964 10536-10780/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 5
2022-11-17 11:03:58.964 10536-10780/com.alexvas.rtsp.demo I/RtspClient DBG: Session: 63E05387
2022-11-17 11:03:58.964 10536-10780/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 11:03:58.985 10536-10780/com.alexvas.rtsp.demo D/RtspClient DBG: 404 Stream Not Found
pergolafabio commented 2 years ago

see also here : https://github.com/snowzach/hassio-addons/issues/25

i i proxy the same rtsp url, then it works, by using the same source rtsp stream:

2022-11-17 14:36:51.116 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: OPTIONS from rtsp://192.168.0.17:5554/Synology RTSP/1.0
2022-11-17 14:36:51.116 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 1
2022-11-17 14:36:51.116 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 14:36:51.143 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 14:36:51.143 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 14:36:51.144 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 1
2022-11-17 14:36:51.145 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 13:36:52 GMT
2022-11-17 14:36:51.149 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Public: OPTIONS, DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, GET_PARAMETER, SET_PARAMETER
2022-11-17 14:36:51.150 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: DESCRIBE from rtsp://192.168.0.17:5554/Synology RTSP/1.0
2022-11-17 14:36:51.151 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Accept: application/sdp
2022-11-17 14:36:51.151 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 2
2022-11-17 14:36:51.151 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 14:36:51.173 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: 401 Unauthorized
2022-11-17 14:36:51.173 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 401
2022-11-17 14:36:51.173 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 2
2022-11-17 14:36:51.173 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 13:36:52 GMT
2022-11-17 14:36:51.174 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: WWW-Authenticate: Digest realm="LIVE555 Streaming Media", nonce="a36e29ecb9ce7d2f0170ba22756ac8e2"
2022-11-17 14:36:51.181 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: DESCRIBE from rtsp://192.168.0.17:5554/Synology RTSP/1.0
2022-11-17 14:36:51.181 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Accept: application/sdp
2022-11-17 14:36:51.181 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="username", realm="LIVE555 Streaming Media", nonce="a36e29ecb9ce7d2f0170ba22756ac8e2", uri="from rtsp://192.168.0.17:5554/Synology", response="d6eb784d2a1b406250d033837b4d7e2b"
2022-11-17 14:36:51.181 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 3
2022-11-17 14:36:51.181 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 14:36:51.204 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 14:36:51.204 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 14:36:51.205 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 3
2022-11-17 14:36:51.207 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 13:36:52 GMT
2022-11-17 14:36:51.209 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Base: rtsp://172.30.33.3:5554/Synology/
2022-11-17 14:36:51.211 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Type: application/sdp
2022-11-17 14:36:51.212 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Content-Length: 619
2022-11-17 14:36:51.213 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: v=0
    o=- 1668692047528439 1 IN IP4 172.30.33.3
    s=LIVE555 Streaming Media v2020.03.06
    i=LIVE555 Streaming Media v2020.03.06
    t=0 0
    a=tool:LIVE555 Streaming Media v2020.03.06
    a=type:broadcast
    a=control:*
    a=range:npt=0-
    a=x-qt-text-nam:LIVE555 Streaming Media v2020.03.06
    a=x-qt-text-inf:LIVE555 Streaming Media v2020.03.06
    m=video 0 RTP/AVP 96
    c=IN IP4 0.0.0.0
    b=AS:500
    a=rtpmap:96 H264/90000
    a=fmtp:96 packetization-mode=1;profile-level-id=42001E;sprop-parameter-sets=Z0IAHpY1QWB7TcBAQECA,aM48gA==
    a=control:track1
    m=audio 0 RTP/AVP 97
    c=IN IP4 0.0.0.0
    b=AS:64
    a=rtpmap:97 PCMU/8000
    a=control:track2
2022-11-17 14:36:51.215 2295-2554/com.alexvas.rtsp.demo I/RtspClient: Video: H264
2022-11-17 14:36:51.216 2295-2554/com.alexvas.rtsp.demo W/RtspClient: Unknown audio codec "PCMU"
2022-11-17 14:36:51.216 2295-2554/com.alexvas.rtsp.demo I/RtspClient: Audio: n/a, sample rate: 8000 Hz, channels: 1
2022-11-17 14:36:51.232 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: SETUP from rtsp://192.168.0.17:5554/Synology/track1 RTSP/1.0
2022-11-17 14:36:51.232 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Transport: RTP/AVP/TCP;unicast;interleaved=0-1
2022-11-17 14:36:51.233 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="username", realm="LIVE555 Streaming Media", nonce="a36e29ecb9ce7d2f0170ba22756ac8e2", uri="from rtsp://192.168.0.17:5554/Synology/track1", response="f1aff749d8bafda1634c5cdf48ab008c"
2022-11-17 14:36:51.233 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 4
2022-11-17 14:36:51.233 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 14:36:51.255 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 14:36:51.255 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 14:36:51.256 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 4
2022-11-17 14:36:51.256 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 13:36:52 GMT
2022-11-17 14:36:51.258 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Transport: RTP/AVP/TCP;unicast;destination=10.8.0.3;source=172.30.33.3;interleaved=0-1
2022-11-17 14:36:51.258 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Session: B888637B;timeout=65
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: PLAY from rtsp://192.168.0.17:5554/Synology RTSP/1.0
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Range: npt=0.000-
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Authorization: Digest username="username", realm="LIVE555 Streaming Media", nonce="a36e29ecb9ce7d2f0170ba22756ac8e2", uri="from rtsp://192.168.0.17:5554/Synology", response="48e3de1db499e23c07e64c5a7f72eb35"
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: CSeq: 5
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: Session: B888637B
2022-11-17 14:36:51.268 2295-2554/com.alexvas.rtsp.demo I/RtspClient DBG: 
2022-11-17 14:36:51.294 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: 200 OK
2022-11-17 14:36:51.294 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Status code: 200
2022-11-17 14:36:51.294 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: CSeq: 5
2022-11-17 14:36:51.294 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Date: Thu, Nov 17 2022 13:36:52 GMT
2022-11-17 14:36:51.295 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Range: npt=0.000-
2022-11-17 14:36:51.295 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: Session: B888637B
2022-11-17 14:36:51.297 2295-2554/com.alexvas.rtsp.demo D/RtspClient DBG: RTP-Info: url=rtsp://172.30.33.3:5554/Synology/track1;seq=24197;rtptime=3886467331,url=rtsp://172.30.33.3:5554/Synology/track2;seq=0;rtptime=0
2022-11-17 14:36:51.297 2295-2554/com.alexvas.rtsp.demo I/RtspSurfaceView: Starting video decoder with mime type "video/avc"
chjmichel commented 1 month ago

Hi I had also the same problem with an action cam. It was added a "track1" to the URL. I changed this, but be careful - it is form of hardcoded.

In file RTSPClient.java:

@Nullable
private static String getUriForSetup(@NonNull String uriRtsp, @Nullable Track track) {
    if (track == null)
        return null;
    if (track.request == null) {
        // a=control:trackID=1 is missed
        Log.w(TAG, "Track request is empty. Skipping it.");
        track.request = uriRtsp;
    }
    String uriRtspSetup = uriRtsp;
    if (track.request.startsWith("rtsp://") || track.request.startsWith("rtsps://")) {
        // Absolute URL
        uriRtspSetup = track.request;
    } else {
        // Relative URL
        if (!track.request.startsWith("/")) {
            track.request = "/" + track.request;
        }
        uriRtspSetup += track.request;
    }
    return uriRtsp;

I change "return uriRtspSetup" to "return uriRtsp" (last line) than no "track1" will be added. Maybe a solution.

pergolafabio commented 1 month ago

Hi I had also the same problem with an action cam. It was added a "track1" to the URL. I changed this, but be careful - it is form of hardcoded.

In file RTSPClient.java:

@Nullable
private static String getUriForSetup(@NonNull String uriRtsp, @Nullable Track track) {
    if (track == null)
        return null;
    if (track.request == null) {
        // a=control:trackID=1 is missed
        Log.w(TAG, "Track request is empty. Skipping it.");
        track.request = uriRtsp;
    }
    String uriRtspSetup = uriRtsp;
    if (track.request.startsWith("rtsp://") || track.request.startsWith("rtsps://")) {
        // Absolute URL
        uriRtspSetup = track.request;
    } else {
        // Relative URL
        if (!track.request.startsWith("/")) {
            track.request = "/" + track.request;
        }
        uriRtspSetup += track.request;
    }
    return uriRtsp;

I change "return uriRtspSetup" to "return uriRtsp" (last line) than no "track1" will be added. Maybe a solution.

Aha! Interesting! Allrough I don't use this project anymore, but that's indeed the bug!! I now indeed see "track1" was added to the string indeed

alexeyvasilyev commented 1 month ago

Issue is fixed in this commit in 5.1.2.

pergolafabio commented 1 month ago

Thank you