剑痴乎

  • 首页
  • 文章分类
    • 音视频
    • WebRTC
    • 编程之美
    • Linux
    • Windows
    • 生活点滴
    • 校园生活
  • 参考
    • API参考
    • 实用工具
    • 测试音视频
    • 文档
  • 留言板
  • 关于
剑痴乎
代码为剑,如痴如醉
  1. 首页
  2. 音视频
  3. 正文

VLC播放h264头几秒花屏问题

2016年5月5日 814点热度 0人点赞 0条评论

原来测试解析mp4文件得到的h264码流都是用ffplay,没遇到什么问题,今天用vlc测试了下,发现刚开始时会有点花屏,后面就正常了。
vlc花屏

看了下h264码流,sps与pps后第一个nalu类型为sei(附加增强信息),也就是0x00000106起始码开头的,不是I帧,所以会出现这个情况。vlc没有对sei信息做处理,导致把sei与后面数据混在一起解码处理,出现丢数据的假象,而导致花屏。vlc处理首帧的正确姿势是:SPS+ PPS + I frame。后面碰到sei类型nalu数据直接丢掉,然后送给vlc播放,就正常了。后面又测了其他mp4文件,发现这些mp4文件mdat box存储的第一个nalu类型都为sei。所以可以采取丢掉sei,读取完SPS+PPS后送给vlc后,跳过sei,从I帧开始继续送给vlc播放就可以避免播放出现花屏。

本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
标签: 音视频
最后更新:2020年5月6日

Jeff

管理员——代码为剑,如痴如醉

打赏 点赞
< 上一篇
下一篇 >

文章评论

取消回复

我的其它小窝

公众号:码上Play(基本不更新,回答问题用。如果没回复就多发几次,忙的时候可能会看不到。)

近期评论
  • 头像lingjzhang on WebRTC研究:Trendline滤波器-TrendlineEstimator我个人一直很好奇threshold_gain_参数…
  • 头像lingjzhang on WebRTC研究:Trendline滤波器-TrendlineEstimator你好,我这边看modified_trend的计算公…
  • 头像Jeff on 大话WebRTC是的
  • 头像tube on 大话WebRTC这个人抄袭你的吧:https://develope…
  • 头像vivi on WebRTC 安卓Native code编译问题sudo update-alternatives…
版权声明

为支持原创,创作更好的文章,未经许可,禁止任何形式的转载与抄袭,如需转载请邮件私信!本人保留所有法定权利。违者必究!

相关文章推荐
  • 音视频开发入门:视频基础
  • 大话WebRTC
  • WebRTC研究:Transport-cc之RTP及RTCP
  • WebRTC音视频传输基础:NAT穿透
  • Intel平台硬件加速视频编解码开发

COPYRIGHT © 2021 剑痴乎. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS