【发布时间】:2021-02-15 09:56:13
【问题描述】:
我的服务器上有一个图像文件,其内容每 100 毫秒更改一次。
我可以像往常一样加载和提供这张图片:
$image = file_get_contents('path/to/image.jpg');
header('Content-type: image/jpeg');
echo $image;
<img src="image.php">
因此,每次用户更新屏幕(例如按 F5)时,服务器都会回复不同的图像。我还可以使用 Java Script(例如使用setInterval)来不断更新图像,这样用户就不需要自己更新屏幕了。
但是,我需要将此图像作为连续流(例如 LIVE VIDEO STREAM)提供,以便显示为 HTML5 视频而不是静态图像。
到目前为止,我发现的一些示例使用 PHP-FFMpeg 库来处理流视频。事实证明,这些示例要求我手头有一个视频文件(操作系统中的文件或文件的 URL),而不是我上面描述的单个(动态)图像。
我找到了this example,了解如何使用 PHP 进行流式传输。看起来很有希望。但是代码再次假设我有一个我没有的视频文件 url。
我想知道是否可以根据我的需要调整此代码。比如setHeader()方法如何适配到没有begin和end的场景?考虑到我已经使用file_get_contents左右加载了图像内容,如何正确更改stream()?或者,是否有其他方法可以将此图像作为视频流提供?
【问题讨论】:
标签: php video-streaming