Closed Kevin111369 closed 3 months ago
使用ffmpeg读取h264文件,然后进行分帧,将每一帧送入mpp_decode进行解码。
将ffmpeg分帧后的数据送入mpp_packet之后,提示decode_put_packet failed,返回的错误信息如下
mpp_log: data size is: 154045 mpp_log: 0x21af7ec0 decode_put_packet failed ret -1002
以下是关键代码
AVPacket* av_packet = av_data->packet; MppPacket mpp_packet = mpp_data->packet; mpp_log("data size is: %d\n", av_packet->size); mpp_packet_set_data(mpp_packet, av_packet->data); mpp_packet_set_size(mpp_packet, av_packet->size); mpp_packet_set_pos(mpp_packet, av_packet->data); mpp_packet_set_length(mpp_packet, av_packet->size); mpp_packet_set_pts(mpp_packet, av_packet->pts); do { RK_U32 frm_eos = 0; RK_S32 times = 30; // send the packet first if packet is not done if (!pkt_done) { ret = mpp_mpi->decode_put_packet(mpp_ctx, mpp_packet); if (MPP_OK == ret) { pkt_done = 1; if (!mpp_data->first_pkt) mpp_data->first_pkt = mpp_time(); } else { mpp_err("%p decode_put_packet failed ret %d\n", mpp_ctx, ret); break; } } /* frame process code */ }while(1);
请问我现在如何根据返回的错误码去定位错误呢?
我仔细检查了代码,缺少了mpp_init的步骤,现在已经解决了
使用ffmpeg读取h264文件,然后进行分帧,将每一帧送入mpp_decode进行解码。
将ffmpeg分帧后的数据送入mpp_packet之后,提示decode_put_packet failed,返回的错误信息如下
以下是关键代码
请问我现在如何根据返回的错误码去定位错误呢?