跳过fread ftp视频
问题描述:
我有这个代码,基本上使FTP服务器上的视频能够显示在另一个页面上的标签。但是当观看视频时,不可能返回并且及时返回,我已经尝试了一系列的事情,但是当我尝试从ftp服务器获取文件时,通常会出现错误,并带有普通文件(file.mp4 ex)它的工作原理,想了解我怎样才能使视频时间提前跳过fread ftp视频
$path = "http://cd1.animakai.tv/teste/hd/1031.mp4";
header('HTTP/1.1 206 Partial Content');
header('Content-type: video/mp4');
header("Content-Length: ".$size);
header("Accept-Ranges: bytes");
header("Content-Range bytes");
$handle = fopen($path, "rb");
while (!feof($handle)) {
echo fread($handle, 1000 * 1024);
}
fclose($handle);
答
与您的代码的问题是,你的整个文件发送给浏览器作为一个流,但不提供任何办法为它寻求向前或向后的视频内。对于这项工作,您需要让浏览器知道文件有多大(通过content-length
标题),您需要能够处理对文件任何部分的请求,而不是整个文件(通过阅读在'Range'
头和发送只有一块浏览器想要的文件。
+0
谢谢,它的工作原理,我用CURL来获取文件大小,我做了你所说的一切 –
所以在视频播放不麻烦,但如果你试图倒带有错误? – BeetleJuice
是的,我可以玩通常情况下,但一旦视频暂停播放,或者我尝试向前或向后移动,它将停止工作。 –