当前位置: 首页 > 知识库问答 >
问题:

带摘要身份验证的android mediaplayer中的rtsp实时流

易书
2023-03-14

我需要一个android应用程序,以实时流rtsp网址使用videoview或媒体播放器与摘要验证。我不知道如何使用摘要身份验证和rtsp URL。是否可以在MediaPlayer中使用摘要验证。如有任何帮助,我们将不胜感激。

共有1个答案

姬俊驰
2023-03-14

在我看来,这是一个主要的问题,因为似乎也没有办法将流直接连接到MediaPlayer(也就是说,让一些“shim”为您完成这一工作,否则可能会工作--这也将使在某个远程站点的SSL连接上隧道RTSP成为可能,同时解决“广泛开放的视频”问题。)

问题是,虽然MediaPlayer将为RTSP请求的身份验证发布摘要,但它发送的内容是中断的--具体地说,它传回的URI末尾有一个额外的空间:

 D13.Denninger.Net.51291 > 192.168.4.211.rtsp: Flags [P.], cksum 0x069b (correct), seq 166:526, ack 143, win 256, length 360: RTSP, length: 360
    DESCRIBE rtsp://192.168.4.211:554/cam/realmonitor?channel=1&subtype=0 RTSP/1.0
    Accept: application/sdp
    Authorization: Digest nonce="a2732278fba530ed26e2a278a866fa13", username="karl", uri="rtsp://192.168.4.211:554/cam/realmonitor?channel=1&subtype=0 ", response="311b3d4ea28e643ed0d7e61820d43588"
    User-Agent: stagefright/1.2 (Linux;Android 6.0)
    CSeq: 2

传递给Android Mediaplayer代码的实际URI中没有该空间,从而导致身份验证失败。

这里有一个AOSP bug(我在上面的跟踪中提供了更多的细节),但除非Google修复了它,否则唯一的选择就是找到其他的播放器,(1)使用RTSP,(2)正确地处理摘要验证,或者(2a)可以连接到一个套接字上,允许您编写一个shim,无论是远程还是本地,来处理摘要工作。

我还没有找到一个,但希望有一个指针,如果有人解决了这一点。

 类似资料:
  • Dropwizard是否也支持摘要验证?我只找到了基本的身份验证和OAuth。这方面的示例代码会很好。 null

  • 如何在邮递员中设置curl摘要身份验证? 例如 curl 命令: 我尝试在邮递员中使用摘要式身份验证以及基本身份验证。摘要身份验证返回 401,而基本身份验证返回 500。所以我想说基本身份验证不是正确的。 在digest auth中,我设置了以下选项。 其他一切都保持默认。我还选中了“将帮助程序数据保存到请求”复选框和“更新请求”按钮。 仍然得到401。 根据响应,我得到了一个、和一个。我以前没

  • 是否可以使用WLST脚本或通过其他自动化方式启用WebLogic摘要身份验证? 我正在使用正式的Oracle WebLogic docker映像,并在映像构建期间使用WLST脚本对其进行配置。但是,我没有找到使用WLST启用摘要密码的方法。此外,在管理控制台上手动启用它需要重新启动,这实际上会破坏容器,因为WebLogic进程是入口点。 如何在图像生成期间自动启用摘要?

  • 我想在Docker上设置一个配置了身份验证的Cassandra容器。目前我使用的是官方的Cassandra Docker图像,但它似乎没有提供启用认证模式的选项(通过ENV thingies)。 一种可能性是设置一个自己的存储库,从Cassandra Docker GitHub克隆并修改此文件,以便它也接受与身份验证相关的选项,但对于我非常简单的任务来说,这似乎有点复杂。有没有人知道一个更简单的解

  • 问题内容: 如何在Elasticsearch中定义安全性访问?我有elasticsearch-head插件,但是您的访问不需要任何安全性。 问题答案: 不再积极支持此答案中提到的插件。 elasticsearch中没有内置的访问控制。因此,您需要设置一个反向代理(这是一个博客文章,介绍如何设置nginx),使用第三方的Elasticsearch插件之一,例如https://github.com/A