您的位置:首页 > 编程语言 > PHP开发

ffmpeg 接收解码rtp h264视频流

2015-09-25 15:58 549 查看
首先说明一下nalu的格式:

nalu由三个部分组成:开始码(0x01000000)+nalu头+nalu数据。

使用live555 testrtspclient那个例子来接收rtp流,接收到的nalu是没有开始码的,

需要自己加上起始码,然后喂个ffmepg的packet.data,然后就可以解码了,

将sps,pps补偿给ffmepg:

在ffmpeg解码其他nalu之前,需要将h264视频流的 sps,pps补偿给ffmepg,这两个东西也是nalu

在rtsp的连接过程中,describe命令响应那里,可以拿到sps,pps,拿到的是使用了base64编码的

需要进行base64解码,解码出来的sps,pps是没有起始码的nalu,需要自己加上起始码,

然后喂给ffmepg的packet.data,然后解码这两个nalu即可,这样ffmepg就知道了视频的宽度高度

这些信息了,这样就可以解码后面的nalu视频流数据了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: