首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >“保护伪流”mp4视频(闪存、html5、pc、iOS.)的最佳方法是什么?

“保护伪流”mp4视频(闪存、html5、pc、iOS.)的最佳方法是什么?
EN

Stack Overflow用户
提问于 2012-11-12 22:31:29
回答 2查看 2.4K关注 0票数 2

我正在寻找一种方式,让我的客户(登录)在我的网站上观看mp4视频。

  • 我不希望他们能够下载视频,或至少使它非常困难。
  • 服务器是linux /应用程序是PHP
  • 我希望我的客户能够在电脑网络浏览器或iOS/Safari设备上观看视频(这意味着没有闪光灯)。
  • 我需要它是免费的或真正便宜的(例如,不要在云基础提供商上托管视频,每月花费数千美元)。

直到现在,我做了以下几件事:

  • flv文件的php伪流(称为xmoov)。使用php I能够在返回流的内容(会话变量、令牌、.)之前执行安全验证。但是它不能在iOS上工作,因为flv视频需要播放闪光灯。它也不是那么安全,因为像视频下载助手这样简单的firefox扩展可以下载它们。
  • 所以我用mp4对我的视频进行了编码,它可以很好地处理html5 5/iOS,但是使这个过程的“安全”方面变得更加困难:使php伪流看起来非常困难。我还没有找到任何可行的解决方案,而且似乎每个人都会远离它,因为它占用了太多的资源(在整个文件内容的流中,每个视频都需要一个php进程)。

所以我找到的最好的解决方案是两个经典的Apache插件:"H264流模块“和”Module“。好的,这样做更好,但它存在一个死胡同,因为为了提高效率,auth令牌的超时时间需要非常短(在不到5秒的时间内,很难在html源中找到模糊的url,并将其复制/粘贴到下载应用程序或启动脚本或.)但这意味着客户必须在这个时间框架内启动视频(在iOS上,无法自动启动视频)。这也意味着客户无法在视频的“未下载”部分查找,因为播放机(我使用JWplayer)对url进行了新的http调用,由于超时,它显然不再工作了。

我在考虑一个视频闪存播放器,它可以自己生成模糊化的url (而不是php,将它输出到html源代码中),但是它不能在iOS上工作,因为它是基于flash的。如果我在计算机和iOS (基于用户代理)上使用html5 5/auth_token,很容易欺骗用户代理并下载视频。

另一种解决方案似乎是使用“真正”的视频流服务器,比如Red5,但我发现的几乎所有教程都是关于实时流媒体、电视、摄像头,而不是放在硬盘上的简单的mp4文件。它似乎也不是为这类需要而提出的应用程序。

所以我愿意接受每一个建议!

提前感谢

EN

回答 2

Stack Overflow用户

发布于 2012-12-15 21:41:26

我使用亚马逊的S3对FLV文件进行了排序:

http://evolt.org/s3secure

我正在为MP4工作,但我的专业知识是网络,而不是视频。

票数 0
EN

Stack Overflow用户

发布于 2013-04-15 03:28:08

我发现自己也处于同样的境地。

我使用的是flowplayer,我使用服务器端(PHP)脚本(类似于xmoov )获得FLV到伪流的良好效果,您提到的所有验证都是这样。

我有一个提示:,如果$start是0,令牌只能工作3秒(所以不能发出新的请求),但是如果$start > 0,那么它可以工作10分钟,或者更长一点。

这样,人们就可以寻求其他部分的视频,但不提出一个完整的要求。您还可以使这个$start限制大于X字节,而不是>0,以确保聪明人不会跳过您的验证。

现在,对于使用相同脚本的MP4伪流,我仍然有麻烦。由于$start值是以秒(即:?start=32.125)的形式发送的,而不是字节位置,我似乎无法使视频成为伪流。

如果您找到了一个解决方案(没有超过mod_h264_streaming),我将很高兴听到它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13352661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档