对海康28181摄像头PS流解码的支持(一)

  背景

  我们的项目是基于sip的IMS系统,需要添加对海康28181摄像头的支持,所以分为以下几步:

  1. 向海康摄像头发起点播请求,基于sip.
  2. PS流过来后,剥出h264流.
  3. 对h264流进行解码.

  一.发起sip请求

  按照GB28181的规范,sip头域必须携带subject字段,to字段必须是摄像头的视频编码通道ID,sdp中s行固定为play,需添加一个a行描述为PS流,sdp中不可携带audio信息,详细可见这里的描述:28181摄像头sip格式

  二.分析PS流结构

  由于之前没有接触过ps流的格式,所以在网上看了下mpeg-2 ps流的介绍,感觉还是模棱两可。突然想起live555是支持mpg文件,所以直接看live555的源码,发现live555中就支持对mpeg-2的解析,同sip终端将拉过来的海康摄像头PS流存文件,用live555进行调试,发现live555解析失败,通过打开日志查看,原来live555中没有对ps system map进行解析,所以当出现这种类型的包时,其认为是video sequence slice包,所以会解析失败。

  live555中有对整个解析过程都有日志打印,并且整个解析代码写的很清晰,通过对解析过程日志的分析,可以得出HK 28181摄像头 PS流的封包格式

     PSheader| PS system header | PS system Map | PES header | h264 raw data

  三.总结

  虽然网上也有很多对海康PS流格式的描述,但是对从来没有接触过的人来说,光看文字描述还是过于抽象。在音视频开发领域,协议和格式是有限的,有很多优秀的开源项目供提供了广泛的支持,对陌生的格式或协议,通过借鉴开源项目,可以加深自己对格式或协议的理解。

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mo4776

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值