Osk*_*pov 5 ffmpeg streaming video-streaming hls
这些隔离的日子里,我打算将我的桌面分享给朋友们,向他们解释什么是 git 实践。问题是:
我决定使用的是共享我的桌面并将ffmpeg -f x11grab
输出流到任何端口。由于我们可以在一个虚拟网络中,朋友们可以使用任何 VLC、MPV 或网络浏览器毫无问题地观看此流。当我了解到 ffmpeg 无法直接输出到 http 时,问题就出现了。我尝试了很多解决方案,例如通过 rtmp 发送到 YouTube Live Streaming(开销,而不是免费服务)以及使用 HLS 协议和 HTTP 服务器进行分割和共享,并在 HLS 处停止。
我的 ffmpeg 启动:
ffmpeg -f x11grab -video_size 1920x1080 -i :0 -c:v h264 -f hls -hls_time 1 -g 15 stream.m3u8
Run Code Online (Sandbox Code Playgroud)
以及我正在测试的 mpv:
mpv --no-cache --no-resume-playback stream.m3u8
Run Code Online (Sandbox Code Playgroud)
我发现有大约 10-15 秒的延迟。即使我将视频比特率设置为半兆字节,也会有类似的延迟(当然质量也很差),因此这可能意味着问题不在于带宽[而且我什至没有开始在比我的本地更远的地方广播它个人电脑!]。
我找到了一个SO 答案,其中用户说 HLS 是低延迟的错误协议。我阅读了很多博客、维基百科文章和 ffmpeg 维基百科(StreamingGuide),但找不到解决方案。我怎样才能减少延迟,或者我可以使用什么软件(最好是 ffmpeg)让我的朋友像 Discord 和 Skype 那样以几秒的延迟看到我的桌面?值得一提的是:我不需要好的质量,滴也可以,因为我要共享一个终端窗口。
归档时间: |
|
查看次数: |
2515 次 |
最近记录: |