
Por prueba y error pude mostrar la transmisión desde una cámara WiFi RTSP en VLC usando la URL:
rtsp://192.168.2.33:554?user=admin&password=&channel=2&stream=1.sdp
Sin embargo, todos los ejemplos que encuentro usan algo como:
rtsp://192.168.2.33:554/user=admin&password=&channel=2&stream=1.sdp
con el /
en lugar del ?
. El /
no me funciona. VLC no puede abrir la transmisión. ¿Alguien sabe cuál es la diferencia?
Respuesta1
El signo de interrogación se utiliza en URI como separador de una ruta al recurso y a los argumentos de consulta. PorRFC 3986:
foo://example.com:8042/over/there?name=ferret#nose
\_/ \______________/\_________/ \_________/ \__/
| | | | |
scheme authority path query fragment
Y ensección 3.3:
La ruta termina con el primer signo de interrogación ("?") o el signo numérico ("#"), o con el final del URI.
Entonces tu primer ejemplo es correcto.
El segundo (sin ?
) es incorrecto porque combina argumentos de consulta en una ruta al recurso solicitado.
Como nota al margen: los navegadores (al menos las versiones actuales de Chrome o Firefox) cambiarán automáticamente:
http://192.168.2.33:554?user=admin&password=&channel=2&stream=1.sdp
en:
http://192.168.2.33:554/?user=admin&password=&channel=2&stream=1.sdp
Respuesta2
Intentar
rtsp://user:[email protected]/
Esto debería proporcionarle al menos el primer canal, después de eso puede depender del dispositivo en cuanto a la sintaxis para el resto.
rtsp://user:[email protected]/cam/realmonitor?channel=1&subtype=1
Funciona para el mío pero su kilometraje puede variar.