我正在尝试开发一个视频流平台。我在S3上花了很多预算,现在想获取视频。我想缓存视频,并找到了一些教程,其中用户可以使用可读流、缓存和管道发送存储在本地主机上的视频的数据块。我如何对存储在S3上的视频做同样的事情?我将react用于前端,将node js用于后端我能够缓冲存储在我的主目录中的视频。我想弄清楚我们如何才能对来自S3的Vidos做同样的事情。
t2a7ltrp1#
对于任何支持范围请求的普通HTTP服务器(包括S3),您不必做任何特殊的操作。浏览器将自动请求播放视频所需的数据,如果视频未被观看,则不会下载整个视频。此外,当您查找视频时,浏览器将跳过文件的后面部分并请求所需的数据。在初始连接时,您会看到浏览器从服务器获取数据的速度比播放速度快,但这是正常的,并确保了良好的播放体验。如果浏览器的缓冲区非常满,它会对流施加反压力,这会将TCP窗口大小关闭为零0,向服务器发出信号,让其停止发送数据一段时间。在这种状态下几分钟后,服务器可能会关闭连接。2当浏览器认为它想要更多的数据时,它只会无缝地重新连接。TL;DR;,别担心,它已经为你计算好了,并且会自动工作!
0
1条答案
按热度按时间t2a7ltrp1#
对于任何支持范围请求的普通HTTP服务器(包括S3),您不必做任何特殊的操作。
浏览器将自动请求播放视频所需的数据,如果视频未被观看,则不会下载整个视频。此外,当您查找视频时,浏览器将跳过文件的后面部分并请求所需的数据。
在初始连接时,您会看到浏览器从服务器获取数据的速度比播放速度快,但这是正常的,并确保了良好的播放体验。如果浏览器的缓冲区非常满,它会对流施加反压力,这会将TCP窗口大小关闭为零
0
,向服务器发出信号,让其停止发送数据一段时间。在这种状态下几分钟后,服务器可能会关闭连接。2当浏览器认为它想要更多的数据时,它只会无缝地重新连接。TL;DR;,别担心,它已经为你计算好了,并且会自动工作!