FFMPEG是否支持RTSP身份验证?

时间:2011-02-16 09:59:10

标签: ffmpeg rtsp rtsp-client

比如......

rtsp://user:pass@x.x.x.x/VideoString

7 个答案:

答案 0 :(得分:12)

一直很流行,不知道11岁的故事是什么,但是,ffmpeg现在支持了。

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

作品。

答案 1 :(得分: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

答案 2 :(得分:1)

是的,ffmpeg使用ffplay命令支持RTSP身份验证。

请尝试使用ffplay命令:

ffplay rtsp://user:pass@x.x.x.x/VideoString

这适合我。

来源(adapted from the commands used to authenticate ftp and others using the same syntax):

ffmpeg.org

答案 3 :(得分:0)

FFmpeg似乎支持摘要式身份验证,至少从2010年3月25日提交时开始: https://github.com/FFmpeg/FFmpeg/commit/855e7732c6bcc7d52cd0863407a721c2bf00fcf1

实现摘要计算的逻辑主要在这个文件中: https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/httpauth.c

根据这个changelog,它进入版本0.6版本:

  • HTTP摘要式身份验证

答案 4 :(得分:0)

我整个周末都花了它(ffmpeg 07/07/2014)并且可以说-NO!也许ffmpeg具有digest / auth的RTSP代码,但它们在那里不起作用。我总是从带有摘要/身份验证的IP摄像头获得401错误,并且使用basic / auth工作得很好。

带有live555的VLC适用于任何身份验证。

答案 5 :(得分:0)

在用ffmpeg挖掘了很多东西之后,我发现使用授权的长网址在ffmpeg中失败了,同时与VLC一起工作。 使用身份验证的URL长度应小于140。 所以139个字符有效,而140个字符method SETUP failed: 401 Unauthorized

失败

P.S。 在挖掘源代码后,我找到了https://github.com/FFmpeg/FFmpeg/blob/415f907ce8dcca87c9e7cfdc954b92df399d3d80/libavformat/rtsp.h#L423

对于没有密码的网址,它看起来是128个字符。

答案 6 :(得分:0)

ffmpeg支持rtsp身份验证,我认为您可能缺少包含rstp URL的引号。

示例:

不起作用:

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

工作:

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