我正在尝试以最可能的方式保护我的视频,所以我知道将它们放在 red5 媒体服务器上会使它们流式传输,因此 flv 文件不会被下载到用户缓存中,但我主要担心的是可能保护视频不被嵌入?所以它只会从我指定的域运行?
而且,是否有可能以某种方式加密流媒体视频文件?并在下载时将其加密在我的 Flash 播放器中?
我正在尝试以最可能的方式保护我的视频,所以我知道将它们放在 red5 媒体服务器上会使它们流式传输,因此 flv 文件不会被下载到用户缓存中,但我主要担心的是可能保护视频不被嵌入?所以它只会从我指定的域运行?
而且,是否有可能以某种方式加密流媒体视频文件?并在下载时将其加密在我的 Flash 播放器中?
为了保护您的流,您可以编辑文件:red5-web.properties(在 $red5/webapps/$your-app/WEB-INF/ 中)
webapp.virtualHosts=*,localhost, 127.0.0.1
webapp.virtualHosts 定义了允许连接到 Red5 应用程序的 IP/域。
因此,如果您的应用程序托管在 myserver.com 上,并且您只希望从 myserver.com 加载的 SWF 能够连接到您的流,那么您可以配置 red5-web.properties。
AFAIK:这里的“安全性”是每个 SWF 都会自动向 RTMP 服务器发送一个从中加载它的 IP/域。因此,出于某种动机,您可以使用 Java 或 C++ 构建一个 RTMP 客户端,以模拟来自另一个域的连接。
但是,对于简单的场景,例如保护您的流不被其他网站中的某些 FLV 播放器嵌入,这应该已经有所帮助。
塞巴斯蒂安
为防止视频被嵌入,请勿使用可嵌入播放器(即,如果您使用的是商业播放器,请禁用嵌入选项)。如果您不希望他们找到流然后将视频嵌入到他们自己的播放器中,您必须隐藏电影的 URL。有很多方法可以做到这一点。最流行的是使用 php 文件通过 readfile 输出视频。您还可以使用符号链接或一些类似的解决方案。
回复:加密,有一些像 iTunes 使用的 DRM 解决方案,但我认为如果你在这里问这对你来说可能是矫枉过正。