mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-10-07 10:00:55 +08:00
[vpu_legacy]:eos set no contain in frame, return in ret
[mpp_dec]:when flush lock codec signal, fixed dead loop in seek status [mpp_dec]:when flush check first packet if is config keep this packet to decoder avoid extract data has been flush cause decoder err [h265d]: mark h265 dec error use check ref has error if ref error mark current dec frame error git-svn-id: https://10.10.10.66:8443/svn/MediaProcessPlatform/trunk/mpp@524 6e48237b-75ef-9749-8fc9-41990f28c85a
This commit is contained in:
@@ -32,6 +32,7 @@ VpuApi::VpuApi()
|
||||
#endif
|
||||
mpp_construct(&mpp_ctx, &mpi);
|
||||
frame_count = 0;
|
||||
set_eos = 0;
|
||||
mpp_log_f("ok\n");
|
||||
|
||||
}
|
||||
@@ -129,6 +130,10 @@ RK_S32 VpuApi:: decode_getoutframe(DecoderOut_t *aDecOut)
|
||||
aDecOut->size = 0;
|
||||
return 0;
|
||||
}
|
||||
if(set_eos){
|
||||
aDecOut->size = 0;
|
||||
return VPU_API_EOS_STREAM_REACHED;
|
||||
}
|
||||
if (MPP_OK == mpi->decode_get_frame(mpp_ctx, &mframe)) {
|
||||
MppBuffer buf;
|
||||
RK_U64 pts;
|
||||
@@ -189,7 +194,10 @@ RK_S32 VpuApi:: decode_getoutframe(DecoderOut_t *aDecOut)
|
||||
vframe->vpumem.offset = (RK_U32*)buf;
|
||||
}
|
||||
if (mpp_frame_get_eos(mframe)) {
|
||||
aDecOut->nFlags = VPU_API_EOS_STREAM_REACHED;
|
||||
set_eos = 1;
|
||||
if(buf == NULL){
|
||||
aDecOut->size = 0;
|
||||
}
|
||||
}
|
||||
mpp_free(mframe);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user