Community
cancel
Showing results for 
Search instead for 
Did you mean: 
mehrotra_kk
Beginner
57 Views

is there any error concealment algoriths available for Mpeg 1/2/ & h264 decoders in ipp sample code

Hi,
I am using intel ipp sample code and libraries to decode a mpeg1 clip which has error. I found that ipp decoder decodes it with corruptions. I checked the same clip with other players like VLC version 1.1.7 and it can play well. it looks like thevlc which uses ffmpeg decoder has anerror concealment algorithm whichmakes decoded o/p look good even though input has a corrupted bitstream. Do you have any plans to integrate the error concealment algo into ipp decoders.


regards
abhishek
0 Kudos
6 Replies
mehrotra_kk
Beginner
57 Views

I would really appreciate a quick info on above query.


thanks
abhishek
Chao_Y_Intel
Employee
57 Views

Hi abhishek,

Basically, the decoder will try to find some error at bitstream, and also tries to substitute invalid area by copying from reference frame. But it does not have sophisticated error concealment algorithm on it.

We tracked this request on futureimprovement, but at this moment, still no schedule on when to add the feature.

Thanks,
Chao

mehrotra_kk
Beginner
57 Views

Hi chao,
thanks for the quick one. really appreciate the help


abhishek
mehrotra_kk
Beginner
57 Views

Hi chao,
can you please tell me the piece of code where this error checking and error MB replacement in done in mpeg 1 / 2 decoder code.

regards
Abhishek
mehrotra_kk
Beginner
57 Views

anyone there with an answer for my query above??

regards
abhishek
Chao_Y_Intel
Employee
57 Views

Hi abhishek,

Most of the recovery code are actually related to h.264 decoder. You can find the following function in H.264 decoder, and related function calls to this functions.

RestoreErrorRect(Ipp32s startMb, Ipp32s endMb, H264Slice * pSlice).

For MPEG2/1, no similar work. If you want to work on some improvement, I think you can start from the MPEG2VideoDecoderBase::DecodePicture() funciton, and if the decoder find some error, you can add some recovery code.

Thanks,
Chao

Reply