如...
rtsp://user:[email protected]/VideoString
是的,我也有这个问题。似乎缺少摘要式身份验证。有一些关于添加它的邮件列表评论。请参阅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
ffmpeg支持rtsp身份验证我认为您可能会丢失覆盖rtsp URL的引号。
例子:
不工作:
ffmpeg -i rtsp:// user:[email protected]/VideoString
工作:
ffmpeg -i“rtsp:// user:[email protected]/VideoString”
是的,ffmpeg
确实支持使用ffplay
命令进行RTSP身份验证。
请尝试使用ffplay
命令:
ffplay rtsp://user:[email protected]/VideoString
这适合我。
来源(adapted from the commands used to authenticate ftp and others using the same syntax):
FFmpeg似乎支持摘要式身份验证,至少截至2010年3月25日提交:https://github.com/FFmpeg/FFmpeg/commit/855e7732c6bcc7d52cd0863407a721c2bf00fcf1
实现摘要计算的逻辑主要在这个文件中:https://github.com/FFmpeg/FFmpeg/blob/master/libavformat/httpauth.c
根据这个changelog,它使它成为0.6版本:
我花了整个周末(ffmpeg 07/07/2014)并且可以说-NO!也许ffmpeg具有digest / auth的RTSP代码,但它们在那里不起作用。我总是从带有摘要/身份验证的IP摄像头获得401错误,并且使用basic / auth工作得很好。
带有live555的VLC适用于任何身份验证。
在用ffmpeg挖掘了很多东西之后,我发现使用授权的长网址在ffmpeg中失败了,同时与VLC一起工作。使用auth的url lenght应该小于140.所以139个字符工作,而140个cazxswpoi失败
附:在挖掘源代码后,我找到了method SETUP failed: 401 Unauthorized
看起来像没有密码的网址是128个字符。