On Sat, May 19, 2018 at 08:23:59PM -0300, James Almer wrote:
> On 5/19/2018 6:40 PM, Michael Niedermayer wrote:
> > On Fri, May 18, 2018 at 05:06:36PM +0200, Jerome Borsboom wrote:
> >> Direct prediction for interlace frame B pictures references the mv in the
> >> second block in an MB in the backward reference frame for the twomv case.
> >> When the backward reference frame is an I frame, this value may be unset.
> >>
> >> Signed-off-by: Jerome Borsboom <jerome.borsb...@carpalis.nl>
> >> ---
> >>  libavcodec/vc1_block.c | 6 ++++--
> >>  1 file changed, 4 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/libavcodec/vc1_block.c b/libavcodec/vc1_block.c
> >> index 74935ec9e9..9c170a1e3c 100644
> >> --- a/libavcodec/vc1_block.c
> >> +++ b/libavcodec/vc1_block.c
> >> @@ -2678,8 +2678,10 @@ static void vc1_decode_i_blocks_adv(VC1Context *v)
> >>              s->bdsp.clear_blocks(block[0]);
> >>              mb_pos = s->mb_x + s->mb_y * s->mb_stride;
> >>              s->current_picture.mb_type[mb_pos + v->mb_off]                
> >>          = MB_TYPE_INTRA;
> >> -            s->current_picture.motion_val[1][s->block_index[0] + 
> >> v->blocks_off][0] = 0;
> >> -            s->current_picture.motion_val[1][s->block_index[0] + 
> >> v->blocks_off][1] = 0;
> >> +            for (int i = 0; i < 4; i++) {
> >> +                s->current_picture.motion_val[1][s->block_index[i] + 
> >> v->blocks_off][0] = 0;
> >> +                s->current_picture.motion_val[1][s->block_index[i] + 
> >> v->blocks_off][1] = 0;
> >> +            }
> > 
> > see AV_ZERO*
> 
> Those may use mmx instructions, which may require calling emms_c() after
> the loop.
> memset() may be a better choice here. For a small amount of bytes the
> compiler should be able to optimize it into an inlined mov/xor on its own.

This calls clear_blocks() a few lines before which can use mmx too unless iam
missing something


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Why not whip the teacher when the pupil misbehaves? -- Diogenes of Sinope

Attachment: signature.asc
Description: PGP signature

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to