我们说密码是'密码?'。 RTSP URL可能如下所示:
rtsp://admin:password?@192.168.1.12:554/path/to/stream.sdp
问题是,当我在以下命令中使用它时:
ffmpeg -t 00:00:05 -i rtsp://admin:password?@192.168.1.12:554/path/to/stream.sdp out.mp4
我总是收到错误:
[tcp @ 0x7fa03a700160] Port missing in uri
rtsp://admin:admin\?@192.168.1.13:554/live/0/h264.sdp: Invalid argument
我认为这是因为问号,但我不能让错误消失。我尝试用双引号,单引号括起来,然后通过\?
转义问号,但似乎没有任何效果。
答案 0 :(得分:3)
我明白了。您需要对其进行URI转义,因此请像对URL参数一样对其进行编码。
所以
rtsp://admin:password?@192.168.1.33/live/0/h264.sdp
变成了
rtsp://admin:password%3F@192.168.1.33/live/0/h264.sdp