视频在html和php中缓冲需要很长时间



我在谷歌云中托管了我的网站,还开发了类似视频博客的网站。我通过数据库上传视频,并使用mysql选择查询,我在前端中获取视频,如下

<?php
while($getSharePer01=mysqli_fetch_assoc($getPostStatus01)){
extract($getSharePer01);
?>
<video id="sampleMovie" class="embed-responsive-item" height="500" preload controls>
<source src="<?php echo $u_pvid; ?>" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'/>
<object type="application/x-shockwave-flash" data="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" width="640" height="360">
<param name="movie" value="http://releases.flowplayer.org/swf/flowplayer-3.2.1.swf" />
<param name="allowFullScreen" value="true" />
<param name="wmode" value="transparent" />
<param name="flashvars" value='config={"clip":{"url":"HTML5Sample_flv.flv","autoPlay":false,"autoBuffering":true}}' />
</object>
</video>
<?php
}
?>

在这种情况下,第一次缓冲很快就会发生,但在一个位置,它停止播放视频并缓冲平衡视频,这一次它需要很长时间来缓冲,比如2-3分钟我的问题是如何像其他社交网站一样加快视频缓冲时间任何人帮我解决这个问题。。。

如果不检查您的特定视频,很难确定,但它将归结为三件事中的一件(或多件(:

  • 视频优化
  • 服务器对字节范围请求的支持
  • 端到端性能

首先,您可以使用ffmpeg等免费工具做很多事情,然后使用其中的一些选项,看看什么最适合您的内容。

例如:

ffmpeg -i "my.mp4" -c:v libx264 -b 1M -preset slow -s 1080x720 -c:a aac -ab 128k -movflags faststart "my_reduced.mp4"

这将把my.mp4重新编码为my_reduced.mp4,作为h264,使用aac音频,视频比特率上限为1Mbps,将帧大小设置为1080x720,音频比特率上限在128kbps,使用较慢的(但创建较小的文件大小(压缩,并将元数据移到文件的开头,使流媒体能够更快地启动

对于第二个和第三个,您需要检查服务器的配置方式、可用带宽,以及服务器上的CPU和内存负载,以确保内容交付不会超出任何功能。如果您可以通过CDN提供内容,这也将有助于减轻负载并提高性能

最新更新