ts流转化为h264码流

  • ts流是由长度固定的ts包组成的(每个ts包占188字节),没有别的数据,就是一个个的ts包
  • 每个ts包包含ts包头和数据
    • 包头长度固定:4字节,在实际的ts流中,发现前六个字节都不是数据部分,删掉就可以了
    • 需要根据包头判断包的类型和属性,然后处理数据
      • ts包头各位的具体含义参见ts和ps
      • 在实际的判断中
        • 比如前四个字节为47 40 65 10
        • 第一个字节:同步位置,一般都是47,不用管
        • 第二个字节(40、20、00)
          • 传输错误指示占一位:正确为0,错误为1
          • 负载开始标志占一位:这里表示一组数据中的第一块数据(40、 60)比如h264视频流中的第一块数据,或者pat、pmt的第一块数据,视频数据前面会有非h264数据,要根据h264分隔符判断,然后删除这些无效数据
          • 传输优先级占一位:这里表示一组数据的最后一块数据(20、60),比如h264中的最后一块数据,数据前面会加上ffffffff的填充
          • pid占了剩下的五位(总共13位):一般这个字段是0
        • 第三个字节
          • 前面的五位pid一般都是0,后面的这八位决定了ts包是什么包
            • 65:h264视频
            • 00:pat(ts流中的第一个数据包)
            • 10:pmt(ts流中的第二个数据包)
        • 第四个字节
  • PAT和PMT
    • 节目:由节目元组成,节目元可以对应pes
    • pat
      • ts中有不同的节目,pat对应着节目到pmt
    • pmt:
      • pmt对应着一个节目中具体的节目元
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值