FFMPEG支持RTSP身份验证吗?

6
例如...
rtsp://user:pass@x.x.x.x/VideoString

3
在这里提出问题时,您应该选择其中一个回答,通过点击该答案旁边的大型复选标记将其选为“答案”。到目前为止,您已经提出了10个问题,并未标记任何问题为接受的答案。当人们看到这种情况时,他们会觉得回答您的问题不值得他们的时间。因此,请返回到您之前的问题,评估回答并尝试选择一个作为答案。如果您自己解决了问题,请随意回答您自己的问题并将其标记为接受的答案。如果您的问题最终没有得到答复,则可以不选中任何东西。 - Chris Haas
我想要解决方案。我有IP地址、端口和凭据。 - Nirav Jain
8个回答

19

相当长的一段时间过去了,不确定11年发生了什么故事,但是现在ffmpeg已经支持了。

ffmpeg -i rtsp://user:pass@x.x.x.x/VideoString

可以使用。


7

ffmpeg支持RTSP身份验证。我认为您可能错过了覆盖RTSP URL的引号。

例子

不起作用:

ffmpeg -i rtsp://user:pass@x.x.x.x/VideoString

工作中:

ffmpeg -i "rtsp://user:pass@x.x.x.x/VideoString"

1
谢谢,@AmitSharma。这个链接解决了我们的问题:https://dev59.com/sDcCtIcB2Jgan1znchrb - Alex

2

2
是的,我也遇到了这个问题。似乎缺少摘要身份验证。有一些邮件列表评论提到了添加它的方法。请参见http://web.archiveorange.com/archive/v/yR2T4nBtThzJs27hqDLb,但没有什么确定的结论。
请注意,HTTP基本身份验证是传递在URL字符串中,就像您的示例一样,但摘要是MD5编码,并作为HTTP请求中的单独元素传递。
此外,http://www.live555.com/库支持http /摘要身份验证,我已经进行了测试,它可以工作。
要测试连接,请使用live555中的testProgs。
live/testProgs/openRTSP -4 -u admin admin -w 1280 -h 720 -f 20 rtsp://192.168.0.2/defaultPrimary?streamType=u > testmovie.mp4

我认为你只需要使用ffplay命令就可以让它工作了。 - mchid

2

1
我发现应该使用单引号'而不是双引号",正如@AmitSharma所建议的解决方法。
原因是,如果密码包含任何特殊字符,您可能会得到奇怪的错误,因为shell可能会按照自己的方式解释它们。我尝试首先转义这些字符,这似乎解决了与shell的问题,但由于某种奇怪的原因,ffmpeg不能正确地读取密码了...所以让它正常工作的唯一方法是改用单引号,因为它告诉shell(在我的情况下是bash)不要解释引号之间的任何内容。
@AmitSharma的解决方案
ffmpeg -i "rtsp://user:pass@x.x.x.x/VideoString"

使用单引号的解决方案

ffmpeg -i 'rtsp://user:password!@x.x.x.x/VideoString'

0

0
我在整个周末都在处理它(ffmpeg 07/07/2014),可以说——不行!也许ffmpeg有用于摘要/身份验证的RTSP代码,但它们在那里不起作用。我总是从使用摘要/身份验证的IP摄像机那里得到401错误,并且在使用基本/身份验证时工作正常。
VLC与live555一起使用任何身份验证都能很好地工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接