有什么办法可以使视频流在PHP中保持活动状态?

时间:2019-05-04 19:42:52

标签: php video-streaming

我正在建立一个视频流网站,供我和我的朋友一起在线观看电影。

我尝试使用https://codesamplez.com/programming/php-html5-video-streaming-tutorial,并且可以很好地加载视频。

//上面的链接中提供了所有代码。

我面临的问题是我希望流独立运行。没有所有人从0:00开始刷新或登录页面时。 PHP中有什么方法可以做到这一点?

1 个答案:

答案 0 :(得分:1)

您尝试使用的教程非常糟糕。在这种情况下,PHP需要。 Web服务器本身可以很好地处理远程请求。而且,从S3存储桶流式传输的想法是什么?只需签名一个URL!通过将S3中的数据代理回应用服务器,不要使带宽使用增加一倍,并且减慢一切速度。不要使用本教程,这很糟糕。更重要的是,它不能解决您的用例。

  

我面临的问题是我希望流独立运行。没有所有人从0:00开始刷新或登录页面时。 PHP中有什么方法可以做到这一点?

有几种方法可以解决此问题。一种方法是对视频文件使用静态文件托管,然后安排应在何时播放它们,并使用一些JavaScript在正确的位置搜索视频文件。

例如,假设我知道TheMatrix.mp4应该在12:00 PM开始,目前是12:15 PM。

const videoEl = document.querySelector('video');
videoEl.currentTime = 15 * 60; // 15 minutes

您可以创建某种形式的播放列表来对此进行跟踪。

或者,您可以对实时流进行编码,其中每个人都同时接收相同的数据包。为此,请以FFmpeg作为源编码器,以Icecast作为服务器。