我正在寻找一种方法让我的客户(登录)在我的网站上观看mp4视频。
到目前为止,我正在做以下事情:
所以我找到的最佳解决方案是2个经典的Apache插件:“H264 Streaming Module”和“Mod Auth Token”。 好吧,它更好,但它是一个死胡同,因为为了有效率,auth令牌的超时需要非常短(不到5秒,很难在html源中找到混淆的url并将其复制/粘贴到下载应用程序或启动脚本或...)但这意味着客户必须在此时间范围内启动视频(在iOS上无法自动启动视频)。这也意味着客户无法在视频的“尚未下载”部分中进行搜索,因为播放器(我使用JWplayer)对网址进行了新的http调用,这显然不再有效,因为超时。
我在考虑一个视频flash播放器,它可以自己生成混淆的url(而不是在html源代码中输出php),但它不适用于iOS,因为它是基于flash的。如果我在计算机上使用它并在iOS上使用html5 / auth_token(基于用户代理),则很容易欺骗用户代理并下载视频。
其他解决方案似乎使用“真正的”视频流服务器,如Red5,但我发现的几乎所有教程都是关于直播,电视,网络摄像头,而不是简单的mp4文件,坐在硬盘上。它似乎也不是针对此类需求的应用程序。
所以我对所有建议持开放态度!
提前致谢
答案 0 :(得分:0)
答案 1 :(得分:0)
我发现自己处于同样的境地。
我正在使用flowplayer,我使用服务器端(PHP)脚本将FLV转换为伪流,类似于xmoov脚本,并提及您提到的所有验证。
我有1个提示: 我正在使用, IF $ start为0 ,令牌仅适用于 3秒(因此无法进行新请求),但 IF $ start是> 0 ,然后它可以工作10分钟,或者更多。
这样,人们就可以寻求视频的其他部分,但不能提出完整的请求。您还可以将此$起始限制设置为大于X字节,而不是> 0,以确保智能人员不会跳过您的验证。
现在,关于使用相同脚本的MP4伪流,我仍然遇到麻烦。 因为$ start值以秒为单位发送(即:?start = 32.125),而不是字节位置,我似乎无法制作视频伪流。
如果您找到了解决方案(不超过mod_h264_streaming),我会很高兴听到它。