我想搭建一个支持Http协议的视频点播服务器。它就像 Youtube,托管大量视频,最终用户可以从浏览器播放它们(通过使用 Flash 或 Html 5)。
两个简单的问题,
提前致谢, 乔治
如果您只想有一个链接到您的视频文件的 HTML 页面 - 没问题,但大多数浏览器会在您的系统考虑播放之前下载整个文件。
如果您想流式传输文件(像 YouTube 和其他人一样),那么您实际上并没有对视频本身使用 HTTP。 HTTP 用于获取有关流的信息,以便您的播放器可以直接流式传输和播放,而无需先下载整个文件。
流视频使用 RTSP(或其他一些流协议)来传输音频和视频数据。
最接近“流”视频的 HTTP 协议是使用单个图像帧的服务器推送,每个帧都标记为替换前一帧。并非所有浏览器都可以直接处理此问题,但可能需要 ActiveX 控件或 Java Applet。最初的 QuickTime 在服务器上实现流协议之前就这样做了。
回复:YouTube 如何处理大视频文件
我怀疑它们在需要之前都在磁盘上。仅根据需要移入内存。当不再需要时从记忆中清除。
回复:是否有适合我目的的开源视频服务器
是的!查看 http://www.videolan.org/
-杰西
另一种方法是使用 HTTP Live Streaming - HLS - Web 服务器只是一个标准的 httpd 服务器 - 视频/音频在服务器端预处理为一组比特率播放列表。 繁重的逻辑位于客户端,根据带宽适当的播放列表以一系列 6 秒文件的形式检索媒体...自动校准以获得最佳带宽的客户端的奖励点
所以: