live555 + vlc视频直播,vlc播放时断断续续,帧率显示会是发送码流的2倍

ljzcom 2013-08-08 04:57:08
最近用live555做视频服务器开发,客户端用vlc播放,现在可以成功的直播H264码流。
但是在vlc播放一段时间后会报错,信息如下:
main debug: auto hiding mouse cursor
main debug: picture might be displayed late (missing 5 ms)
main debug: picture might be displayed late (missing 3 ms)
main debug: picture might be displayed late (missing 0 ms)
main debug: picture might be displayed late (missing 0 ms)
main warning: picture is too late to be displayed (missing 52 ms)
main debug: picture might be displayed late (missing 18 ms)
main error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1000 ms)
main error: ES_OUT_RESET_PCR called
main debug: Buffering 0%
main debug: Buffering 3%
main debug: Buffering 6%
main debug: Buffering 9%
main debug: Buffering 13%
main debug: Buffering 16%
main debug: Buffering 19%

重新bufering 100%后又能继续,然后过一会又重复需要buffering,周而复始。

还有看到另外一个现象,本来我live555的264码流配置的是30fps,但是vlc里面显示的是60。如果264码流改为20,15,相应的vlc会显示为40,30,正好是2倍。

自己怀疑是pts的问题,live555这端我并没有操作pts,使用的是live555的默认配置。
...全文
7216 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
杂家老周 2015-12-08
  • 打赏
  • 举报
回复
你要是能做安卓或苹果的APP,这个事就简单多了
sno_guo 2015-12-01
  • 打赏
  • 举报
回复
引用 6 楼 u011095744 的回复:
楼主的码流直播是怎么实现的啊?我最近在做这个,一头雾水。能给个思路吗 ?
你的是什么平台呢, 如果是android/ios平台, Wimbledon到是可以处理, 并可以设置这个buffering的缓冲区. 这个缓冲区是根据PES的duration来做, 就是时间戳, 在es_out.c文件中.
danyeee 2015-04-13
  • 打赏
  • 举报
回复
楼主的码流直播是怎么实现的啊?我最近在做这个,一头雾水。能给个思路吗 ?
subi2008 2014-06-13
  • 打赏
  • 举报
回复
引用 4 楼 ttxk 的回复:
数据发送速度没控制好
那该如何去控制呢?
Ryan裤子 2014-06-06
  • 打赏
  • 举报
回复
数据发送速度没控制好
random_2011 2014-05-29
  • 打赏
  • 举报
回复
我的问题和你一样唉,在哪里设置时间戳增量呢?
youzidan0 2014-03-16
  • 打赏
  • 举报
回复
我的问题和你一样唉,在哪里设置时间戳增量呢?
ljzcom 2013-08-13
  • 打赏
  • 举报
回复
测试中发现,通过修改时间戳的增量,vlc不会显示掉帧,也不会重新buffering。 原来的增量是1/30.0, 目前改为1/(30.0-1.5)是ok的。原因还不明。

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧