CNode

关于在线视频播放的问题

Zzhs077发布于12 年前最后回复12 年前12 回复6615 浏览0 收藏

我在网页上通过video控件在线播放视频 “

服务端用nodejs简单搭建,根据uri返回一个视频

res.writeHead(200,{"Content-Type": mime.types[type],'Content-Length': fs.statSync(file_path).size}); res.end(fs.readFileSync(file_path));

问题:在网页上我拖动video下面的快进,发现没用。于是我将视频的src改为本地存在的路径发现可以。请问,我的服务端要怎么做才能快进的效果呢?谢谢!!!

查看回复

回复 (12)

N
nodejser#3·12 年前
引用 ringtail我觉得是数据流的原因,但是我不能肯定,因为你在用这种方式的时候,你向后拖动进度条的时候,此时文件没有下载完毕,可能会有这个问题。

@ringtail

一般这种视频文件都比较大,这种同步读取会返回一个很大的buffer对象,也就是说必须将整个视频加载到buffer后,才会将响应发回到客户端。。

据我所知,我认为比较好的方法是,res是一个可写流,而视频文件是一个可读流,所以创建视频文件的一个可读流然后pipe到res就可以了。。这个方法 会处理内部很多的事务。。。比如流量控制。。

Y
youxiachai#4·12 年前

用nodejs 写一个媒体服务器...不太靠谱吧..这种东西应该找专门的媒体服务器吧.

R
ringtail#6·12 年前

我觉得是数据流的原因,但是我不能肯定,因为你在用这种方式的时候,你向后拖动进度条的时候,此时文件没有下载完毕,可能会有这个问题。

Z
zhs077#12·12 年前
参与回复
登录后即可参与回复。登录