如何使用PHP流媒体文件?

Che*_*rma 7 php file-io buffering

我正在尝试构建一个应用程序,我必须将媒体文件(音频和视频)流式传输到浏览器.我正在通过php读取文件并将数据发送到浏览器.我使用以下代码.

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past
header("Content-Type: {$file->getMimetype()}");
header("Content-Disposition: inline; filename=".$filename.";");
header("Content-Length: ".strlen($file_content));

echo $file_content;
Run Code Online (Sandbox Code Playgroud)

除了我尝试转发视频或音频时(我的意思是假设当前播放位置为0:15并且它直接转到1:25),媒体停止并且当我再次按下播放按钮时,每件事情都工作得很好从头开始.

我认为问题在于缓冲,但无法弄清楚.我在标题中做错了什么或需要别的东西.

谢谢.

Sjo*_*erd 5

我认为您需要实现Range标头,以便客户端可以跳到文件中的特定位置.您可以通过嗅探播放器发送的请求来找出问题所在.