我有一个场景,我尝试使用 RTSP 方法从 IP 摄像头读取数据。
在我的开发 PC 上一切正常,rtsp url 类似于:
rtsp://admin:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="cafbf8f9feff8afbf3f8e4fbfcf2e4fbe4fcfa" rel="noreferrer noopener nofollow">[email protected]</a>:554
但是当我尝试在 friend 的地方测试它时,他有不同的摄像头(Axis IP 摄像头),并且 url 无法打开。 自生成的日志类似于:
Error: avformat_open_input()
error message: Server returned 5XX Server Error reply
我尝试使用 HTTP 隧道打开它,但这次我收到了不同的错误:
error message: Error number -5 occurred
后一条错误消息甚至出现在我的开发 PC 上(仅提及我也尝试过此操作);所以 HTTP 隧道不好。
有人知道如何修复 5XX 服务器错误吗?
谢谢
最佳答案
实际上我最终知道他的相机不是Axis Q6045-S,而是P3346-VE版本。
整个问题是由于 URL 不正确造成的。从 RTSP 读取的正确 URL(对于此特定模型)如下:
rtsp://uname:<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="5929382a2a1968606b77686f617768776a" rel="noreferrer noopener nofollow">[email protected]</a>:554/axis-media/media.amp?videocodec=h264
然后一切正常。
关于c++ - 使用 FFmpeg 从 IP 摄像机 (RTSP) 读取会导致 5xx 服务器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34175140/