【问题标题】:Huge latency in HTTP streaming desktop to browserHTTP 流式桌面到浏览器的巨大延迟
【发布时间】:2019-06-15 21:25:07
【问题描述】:

我正在尝试为浏览器解决方案提供可靠、相当低 (

使用 FFMPEG 的客户端发送方:

ffmpeg -f gdigrab -i "title=notepad.exe" -r 10 -framerate 10  -c:v libx264 -g 50  -preset fast -tune zerolatency -f rtp rtp://192.168.1.85:1234

服务器使用 VLC 重新流式传输到 HTTP:

vlc -vv test.sdp  --sout=#transcode{vcodec=theo,vb=1600,scale=1,channels=1,acodec=none}:http{dst=:8080/webcam.ogg} :no-sout-rtp-sap :no-sout-standard-sap :sout-keep 

从 ffmpeg 命令的输出生成 sdp 文件的位置

客户端浏览器:

<video  id="video" autoplay loop muted preload="auto">
<source src="http://192.168.1.85:8080/webcam.ogg" type="video/ogg"/>
</video>

这很有效,而且质量很好。但是延迟很糟糕(大约 10 秒),我不知道如何调整它。我知道延迟存在于 VLC 转码/重新流式传输中 - 在服务器上显示来自客户端的 RTP 流只​​有大约 1 秒的延迟。

我想有两个问题 - 这种方法可以合理调整,还是方法一开始就错误?

【问题讨论】:

    标签: ffmpeg streaming vlc screensharing


    【解决方案1】:

    通过 http 短 2 秒几乎是不可能的。可以减少延迟,但您可能需要更换 http 源软件,将交付切换为分块传输,优化编码管道并管理播放器缓冲区。即使那样,我也怀疑你会达到 2 秒。

    【讨论】:

      猜你喜欢
      • 2011-12-03
      • 2011-12-28
      • 2018-08-12
      • 2012-01-25
      • 2016-07-29
      • 2012-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多