【问题标题】:HTML5 Video - Playing low fps videoHTML5 视频 - 播放低 fps 视频
【发布时间】:2018-09-18 01:34:50
【问题描述】:

我正在将低 fps 视频实时流式传输到网页并使用 html5 视频元素。我面临的问题是低 fps (1fps) 视频的加载时间约为 50 秒。当我以 24fps 的速度流式传输时,加载时间非常短。我已经检查过了,我的 1fps 流在视频实际显示之前已经过了很长时间 - 一旦视频开始,我可以加快视频速度并赶上实时时间戳。这里发生了什么?视频元素在开始播放之前是否需要一定数量的帧?流准备好后,我该怎么做才能让我的 1fps 视频在播放器中显示?

我在html中使用的代码如下...

<video src="localhost:44375/GetVideoAsync"; type="video/webm" 
autoplay="autoplay"></video> 

GetVideoAsync 是对返回实时视频流的 .Net api 的调用。

[HttpGet("[action]")]
public async Task<Stream> GetVideoAsync() {
  return await _streamingService.GetVideoAsync();
}

所以 - 视频的来源实际上并不那么重要 - 问题是让低 fps 视频 (1fps) 更快开始播放 - 或者与 24fps 视频一样快

【问题讨论】:

  • 您的问题非常广泛-您能否提供有关进行下载的 html 代码以及视频流来源的更具体的详细信息。 (另见stackoverflow.com/help/mcve)。谢谢。
  • 更新了问题...

标签: html video frame-rate live-streaming


【解决方案1】:

沿途有一些硬设置缓冲区未针对低比特率视频进行优化。这些实际上是错误,但除了报告问题之外,您无能为力。

【讨论】:

  • 我想做的是在我的流之前以更高的帧速率添加 48 帧 - 以“初始化”流。我通过在流中从快速切换到低帧速率来进行概念验证。有点破解......但正如你提到的 - 这实际上是一个错误 - 所以必须找到解决方法。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-08
  • 2019-05-15
相关资源
最近更新 更多