View Issue Details

IDProjectCategoryView StatusLast Update
0000272JVT JM H.264/AVC reference softwaredecoderpublic2011-07-21 05:23
Reportergbs Assigned To 
PriorityhighSeverityminorReproducibilitysometimes
Status newResolutionopen 
Product VersionJM 17.2 
Summary0000272: Error concealment fails in P-frame
DescriptionFirst, I encode the Container sequence, and add some errors in frame 1 (base 0). The decoded picture(without EC) is errpattern.jpg in the attachment.
 
Then, I try to conceal the decoded picture by JM method. But I get a more erroneous picture as shown in the attachment named errEC.jpg. In errEC.jpg, I find that the concealed parts do not match the missing Marcoblocks. I guess there is something wrong happened in EC procedure.
Steps To Reproduce1. Encode the Container sequence.
2. Add some errors indicated in errpattern.jpg.
3. Turn on the error concealment procedure.
4. Docode the .264 file using decode profile in the attachment.
Additional InformationI checke the EC procedure and find out that the function named "copyBetweenFrames" in file "erc_do_p.c" causes the EC failure.

The solution is:
Replace
 recfr->yptr[location] = refPic->imgY[j][k];
 recfr->uptr[location] = refPic->imgUV[0][j][k];
 recfr->vptr[location] = refPic->imgUV[1][j][k];
in "copyBetweenFrames" with
 dec_picture->imgY[j][k] = refPic->imgY[j][k];
 dec_picture->imgUV[0][j][k] = refPic->imgUV[0][j][k];
 dec_picture->imgUV[1][j][k] = refPic->imgUV[1][j][k];

It works well.

I have checked another subroutine called "copyPredMB" and
it does not have the same problem.
TagsNo tags attached.

Activities

gbs

2011-07-21 05:17

reporter  

gbs

2011-07-21 05:23

reporter   ~0000496

Sorry, I mistype "Docode", "checke".

Issue History

Date Modified Username Field Change
2011-07-21 05:17 gbs New Issue
2011-07-21 05:17 gbs File Added: Bug report in H.264AVC Reference Software(JM).zip
2011-07-21 05:23 gbs Note Added: 0000496