2

我正在使用 HTML5 播放器在网站上播放视频,视频是从 CDN 抓取的。通过使用 CURL,我从 CDN 获取文件,但是当我尝试在浏览器中播放该文件时,我无法播放它,所以我认为文件的标题设置不正确。

这是我的代码:

if (!empty($path) && $path != null)
        {
            $ch = curl_init($path);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_HEADER, true);
            $data = curl_exec($ch);
            curl_close($ch);
            if ($data === false)
            {
                echo 'CURL Failed';
                exit;
            }

            if (preg_match('/Content-Length: (\d+)/', $data, $matches))
            {
                $contentLength = (int) $matches[1];
            }

            header('Content-Transfer-Encoding: binary');
            header('Content-Type: video/mp4');
            header('Expires: 0');
            header('Cache-Control: must-revalidate');
            header('Content-Length: ' . $contentLength);
            ob_clean();
            flush();
            echo $data;
            exit;
        }

是否正确设置了标题以播放 MP4 文件?因为当我点击 URL 视频时没有播放。视频文件是 MP4,我正在尝试在 chrome 中播放这个文件(chrome 支持 mp4 文件)。对文件的直接 URL 访问是http://moviese.s3.amazonaws.com/videos/test7.mp4

4

0 回答 0