FFMpeg直接解码live555收到的网络数据包时错误解决方法
2012-05-11 14:35
260 查看
错误描述:
[h264 @ 003e4df0] non-existing PPS 0 referenced
[h264 @ 003e4df0] decode_slice_header error
[h264 @ 003e4df0] non-existing PPS 0 referenced
[h264 @ 003e4df0] decode_slice_header error
说明:上面的错误原因是PPS在解码的时候没有被设置
解决方法:
***CodecContext *pCodecCtx; //解码环境
pCodecCtx = avcodec_alloc_context();//分配解码环境
pCodecCtx->extradata = new uint8_t[32];//给extradata成员参数分配内存
pCodecCtx->extradata_size = 32;//extradata成员参数分配内存大小
//给extradata成员参数设置值
//00 00 00 01
pCodecCtx->extradata[0] = 0x00;
pCodecCtx->extradata[1] = 0x00;
pCodecCtx->extradata[2] = 0x00;
pCodecCtx->extradata[3] = 0x01;
//67 42 80 1e
pCodecCtx->extradata[4] = 0x67;
pCodecCtx->extradata[5] = 0x42;
pCodecCtx->extradata[6] = 0x80;
pCodecCtx->extradata[7] = 0x1e;
//88 8b 40 50
pCodecCtx->extradata[8] = 0x88;
pCodecCtx->extradata[9] = 0x8b;
pCodecCtx->extradata[10] = 0x40;
pCodecCtx->extradata[11] = 0x50;
//1e d0 80 00
pCodecCtx->extradata[12] = 0x1e;
pCodecCtx->extradata[13] = 0xd0;
pCodecCtx->extradata[14] = 0x80;
pCodecCtx->extradata[15] = 0x00;
//03 84 00 00
pCodecCtx->extradata[16] = 0x03;
pCodecCtx->extradata[17] = 0x84;
pCodecCtx->extradata[18] = 0x00;
pCodecCtx->extradata[19] = 0x00;
//af c8 02 00
pCodecCtx->extradata[20] = 0xaf;
pCodecCtx->extradata[21] = 0xc8;
pCodecCtx->extradata[22] = 0x02;
pCodecCtx->extradata[23] = 0x00;
//00 00 00 01
pCodecCtx->extradata[24] = 0x00;
pCodecCtx->extradata[25] = 0x00;
pCodecCtx->extradata[26] = 0x00;
pCodecCtx->extradata[27] = 0x01;
//68 ce 38 80
pCodecCtx->extradata[28] = 0x68;
pCodecCtx->extradata[29] = 0xce;
pCodecCtx->extradata[30] = 0x38;
pCodecCtx->extradata[31] = 0x80;
[h264 @ 003e4df0] non-existing PPS 0 referenced
[h264 @ 003e4df0] decode_slice_header error
[h264 @ 003e4df0] non-existing PPS 0 referenced
[h264 @ 003e4df0] decode_slice_header error
说明:上面的错误原因是PPS在解码的时候没有被设置
解决方法:
***CodecContext *pCodecCtx; //解码环境
pCodecCtx = avcodec_alloc_context();//分配解码环境
pCodecCtx->extradata = new uint8_t[32];//给extradata成员参数分配内存
pCodecCtx->extradata_size = 32;//extradata成员参数分配内存大小
//给extradata成员参数设置值
//00 00 00 01
pCodecCtx->extradata[0] = 0x00;
pCodecCtx->extradata[1] = 0x00;
pCodecCtx->extradata[2] = 0x00;
pCodecCtx->extradata[3] = 0x01;
//67 42 80 1e
pCodecCtx->extradata[4] = 0x67;
pCodecCtx->extradata[5] = 0x42;
pCodecCtx->extradata[6] = 0x80;
pCodecCtx->extradata[7] = 0x1e;
//88 8b 40 50
pCodecCtx->extradata[8] = 0x88;
pCodecCtx->extradata[9] = 0x8b;
pCodecCtx->extradata[10] = 0x40;
pCodecCtx->extradata[11] = 0x50;
//1e d0 80 00
pCodecCtx->extradata[12] = 0x1e;
pCodecCtx->extradata[13] = 0xd0;
pCodecCtx->extradata[14] = 0x80;
pCodecCtx->extradata[15] = 0x00;
//03 84 00 00
pCodecCtx->extradata[16] = 0x03;
pCodecCtx->extradata[17] = 0x84;
pCodecCtx->extradata[18] = 0x00;
pCodecCtx->extradata[19] = 0x00;
//af c8 02 00
pCodecCtx->extradata[20] = 0xaf;
pCodecCtx->extradata[21] = 0xc8;
pCodecCtx->extradata[22] = 0x02;
pCodecCtx->extradata[23] = 0x00;
//00 00 00 01
pCodecCtx->extradata[24] = 0x00;
pCodecCtx->extradata[25] = 0x00;
pCodecCtx->extradata[26] = 0x00;
pCodecCtx->extradata[27] = 0x01;
//68 ce 38 80
pCodecCtx->extradata[28] = 0x68;
pCodecCtx->extradata[29] = 0xce;
pCodecCtx->extradata[30] = 0x38;
pCodecCtx->extradata[31] = 0x80;
相关文章推荐
- FFMpeg直接解码live555收到的网络数据包时错误解决方法
- 开发ffmpeg/live555常见问题错误及解决方法
- linq to sql统一更新方法,直接返回更新的对象(解决更新后再刷新数据错误显示问题)
- 开发ffmpeg/live555常见问题错误及解决方法
- Excel2013直接对合并单元格进行数据运算结果错误的解决方法
- 开发ffmpeg/live555常见问题错误及解决方法
- 关于编译ffmpeg的output-example.c和api-example.c 错误的一些解决方法
- [转载] FFmpeg 错误 C4996: ‘avcodec_alloc_frame’: 被声明为已否决 解决方法
- 解决Visual C++ 编译器中混合 .c 文件时收到 C1853 预编译头错误的方法
- VS2015中DataGridView的DataGridViewComBoboxCell列值无效及数据绑定错误的解决方法
- 大数据之Hadoop平台(四)Centos6.5(64bit)Hadoop2.5.1、Zookeeper3.4.6、Hbase0.98.6.1安装使用过程中错误及解决方法
- 移动硬盘一个分区“数据循环冗余错误”要求格式化解决方法
- android ndk ffmpeg 用avformat_input_file 打开rtsp流,返回错误信息-5的解决方法
- FTP上传时数据Socket错误连接超时的解决方法
- ffmpeg 错误 解决方法 记录
- c#与sqlserver建立连接时出现与网络相关的或特定于实例的错误的解决方法
- android 获取网络数据,回传到本地用TextView显示乱码问题解决方法
- silverlight DataGrid 自定义控件 随鼠标滚动,数据发生更改的错误解决方法
- ajax传参数,后台收到的数据乱码解决方法
- SpringMVC + Spring + MyBatis 学习笔记:提交数据遭遇基础类型和日期类型报400错误解决方法