【发布时间】:2013-12-01 15:13:09
【问题描述】:
我正在尝试在我的网页中使用 Video Js 项目,到目前为止,我看到的所有示例都需要使用托管在服务器上某处的静态文件,因此如果用户查看网页的源代码,他们可以轻松下载视频文件。我不想像那样使用视频 js,而是想将视频文件存储在数据库中,我想通过 ajax 调用将它们流式传输到网页中。有没有办法做到这一点?
【问题讨论】:
标签: video-streaming html5-video video.js
我正在尝试在我的网页中使用 Video Js 项目,到目前为止,我看到的所有示例都需要使用托管在服务器上某处的静态文件,因此如果用户查看网页的源代码,他们可以轻松下载视频文件。我不想像那样使用视频 js,而是想将视频文件存储在数据库中,我想通过 ajax 调用将它们流式传输到网页中。有没有办法做到这一点?
【问题讨论】:
标签: video-streaming html5-video video.js
您可以在数据库中保存对视频的引用,然后将其动态加载到播放器中。例如,当您请求特定视频时,您的服务器可能会返回如下内容:
GET /videos/1234.json
{
"title": "some awesome video",
"mime_type": "video/mp4"
"source": "http://s3.amazonaws.com/your-bucket/video.mp4",
"tags": ["awesome", "hooray", "video"]
}
因此,当您通过 AJAX 请求视频时,您可以像这样将其加载到播放器中:
someAjaxFunction(response) {
videojs('your-player', {}, function() {
var myPlayer = this;
myPlayer.src({ type: response.mime_type, src: response.source });
})
}
但是,这并不能真正解决保护内容的问题。仍然有人可以从最终位置抓取文件,而 HTML5 视频目前还没有很好的答案。最简单的做法是使用 Cloud Front 之类的东西,但这仅意味着以后有人无法在不经过您的情况下返回下载视频。
【讨论】: