Skip to content

url can not use & symbol #217

Closed as not planned
Closed as not planned

Description

@sansarus

decoder translate & as \u0026

               rtsp://192.168.1.86:554/H264?ch=1&subtype=0&proto=Onvif

"url": "rtsp://***@192.168.1.86:554/h264?ch=1\u0026subtype=0"

Activity

  1. compot-dev commented on Oct 16, 2026

    @compot-dev
    Collaborator

    Thanks for the report.

    & is how JSON writes &: the debug page escapes <, > and & in strings, and any JSON reader turns it back into &. The app itself keeps the URL exactly as typed.

    We checked this on our test box (2.13) with rtsp://…@<camera>/stream=0?ch=1&subtype=0&proto=Onvif. The full query, & included, reaches the camera (it comes back unchanged in the Content-Base header), and the stream plays.

    Two things in your report differ, though. You typed …/H264?ch=1&subtype=0&proto=Onvif, but the saved slot shows …/h264?ch=1&subtype=0, with a lowercase h264 and without &proto=Onvif. The app doesn't lowercase or drop anything, so maybe it was typed that way in another attempt? Some cameras treat the path as case-sensitive.

    Could you tell us:

    1. Does the stream fail with the URL exactly as typed (/H264?ch=1&subtype=0&proto=Onvif)? What does the screen show: an error, a black picture, or the status line?
    2. The camera brand and model.
    3. If possible, http://<device>:8085/log right after a failed attempt (passwords are masked in it).
  2. compot-dev commented on Oct 20, 2026

    @compot-dev
    Collaborator

    @sansarus, a gentle reminder about this one. We still can't reproduce it: on our side the URL with & reaches the camera unchanged, and & in the debug JSON is only how JSON writes &.

    To go further we need three things from you:

    1. Does the stream fail with the URL typed exactly as rtsp://…/H264?ch=1&subtype=0&proto=Onvif (uppercase H264, with &proto=Onvif)? What does the screen show: an error, a black picture, or the status line?
    2. The camera brand and model.
    3. http://<device>:8085/log right after a failed attempt (passwords are masked in it).

    If it works for you now, just say so and we'll close the issue.

  3. removed
    holdOn hold: waiting for a decision
    on Oct 20, 2026
  4. compot-dev commented on Oct 20, 2026

    @compot-dev
    Collaborator

    @sansarus, thanks, your report from #166 (2026-10-20 11:07) answers this one too: the & reaches the camera intact.

    • In the log, your camera at 192.168.1.86 sends back Content-Base: rtsp://192.168.1.86:554/H264?ch=1&subtype=0, with the & in place, so it got the full query.
    • The stream from that URL plays: H.264 1920×1080 on the hardware decoder (OMX.rk.video_decoder.avc).
    • & appears only inside stats.json: it is how JSON writes &, and any JSON reader turns it back into &. The URL in the app is stored exactly as typed.

    So the app has no bug here, and I'm closing the issue. If a URL with & ever fails for you, please reopen it with the log of the failed attempt.

  5. sansarus commented on Oct 20, 2026

    @sansarus
    MemberAuthor

    & works well. it was my mistake with upper "H" and old fw.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions