资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

FFmpegavcodec_send_packet函数错误定位

场景
avcodec_send_packet函数返回-1094995529错误,根据FFmpeg的错误信息,得知为AVERROR_INVALIDDATA,这个时候,由于已经接收到I帧,实际上是可以解码的,难道是因为×××的内部缓冲区需要被填满,才会返回一帧图像,导致需要等待3秒钟,才能够出来图像

成都创新互联主要从事成都网站设计、成都做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务仙居,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

通过日志分析问题
使用av_log_set_callback函数设置av_log日志输出到文件,定位到问题
I:2017-12-29 09:52:41 ms:903:nal_unit_type: 1, nal_ref_idc: 3
I:2017-12-29 09:52:41 ms:941:nal_unit_type: 1, nal_ref_idc: 3
I:2017-12-29 09:52:41 ms:942:non-existing PPS 0 referenced
I:2017-12-29 09:52:41 ms:943:decode_slice_header error
I:2017-12-29 09:52:41 ms:943:no frame!

解决
回放的是PS流,由于没有调用av_find_stream_info函数,所以在调用avcodec_send_packet函数的时候,会去探测PPS和SPS
的相关参数,所以需要几秒去探测属性


当前名称:FFmpegavcodec_send_packet函数错误定位
路径分享:http://cdkjz.cn/article/pccpep.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220