实时流媒体桌面到安卓平板电脑和延迟



我正在尝试将桌面直播到安卓平板电脑。以下是我做的

1) 使用ffmpeg 捕获屏幕

ffmpeg -y -f x11grab -s 800x600 -r 20 -i :0 http://x.x.x.x:8090/feed1.ffm

2) 使用ffserver 进行流式传输

这是部分ffserver.conf文件

<Stream test>
Feed feed1.ffm
Format flv
NoAudio                                                
VideoSize 800x600                                      
</Stream>

3) 使用URL在平板电脑(Android 4.3)上播放流http://x.x.x.x:8090/test"

我可以在平板电脑上看到桌面,几乎没有问题1) 视频中大约有6到8秒的延迟2) 玩家显示警告"第一帧没有关键帧"

当我在"ffserver.conf"文件中将"Format flv"更改为"Format mpegts"时,警告就消失了。但延迟仍然存在。

有没有办法减少延误?

我使用的格式正确吗?

我想为我的桌面流媒体实现最大2秒的延迟。

您在android设备上使用什么来观看视频?这个问题看起来很普通。

  1. 你只是把原始帧发送到接收器吗?在这种情况下,它们可能有点重,处理它们需要一些时间。看看你们是否真的可以对它们进行编码并流式传输到网络。

  2. 其次,它还取决于网络延迟,你的网络有多好?先在WLAN中进行尝试,然后在两个公共IP号码之间进行尝试。

  3. 接收器上的抖动缓冲区大小是多少?如果你有很大的抖动缓冲区,玩家会设置一些百分比限制来填充,然后才能真正开始游戏。显然,如果你有大的抖动缓冲区,它可能需要很长时间来填充,所以视频的初始延迟。因此,在测试情况下关闭抖动缓冲区。

  4. 我也可以责怪你的接收设备的解码能力。

相关内容

  • 没有找到相关文章

最新更新