This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit fb72a3d567f3300b69b2f45227a3e8a6b75314ac Author: Andreas Rheinhardt <[email protected]> AuthorDate: Tue Dec 30 14:13:41 2025 +0100 Commit: Andreas Rheinhardt <[email protected]> CommitDate: Fri Jan 2 18:39:48 2026 +0100 avcodec/vc1_block: Simplify vc1_coded_block_pred() Make it already apply the prediction, avoiding the pointer indirection. Signed-off-by: Andreas Rheinhardt <[email protected]> --- libavcodec/vc1_block.c | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/libavcodec/vc1_block.c b/libavcodec/vc1_block.c index 4fa03f287a..10cb459082 100644 --- a/libavcodec/vc1_block.c +++ b/libavcodec/vc1_block.c @@ -476,8 +476,7 @@ static inline int ff_vc1_pred_dc(MpegEncContext *s, int overlap, int pq, int n, * @{ */ -static inline int vc1_coded_block_pred(MpegEncContext * s, int n, - uint8_t **coded_block_ptr) +static inline int vc1_coded_block_pred(MPVContext *const s, int n, int diff) { int xy, wrap, pred, a, b, c; @@ -498,9 +497,9 @@ static inline int vc1_coded_block_pred(MpegEncContext * s, int n, } /* store value */ - *coded_block_ptr = &s->coded_block[xy]; + s->coded_block[xy] = pred ^ diff; - return pred; + return pred ^ diff; } /** @@ -2507,7 +2506,6 @@ static void vc1_decode_i_blocks(VC1Context *v) int k, j; MpegEncContext *s = &v->s; int cbp, val; - uint8_t *coded_val; int mb_pos; /* select coding mode used for VLC tables selection */ @@ -2566,11 +2564,8 @@ static void vc1_decode_i_blocks(VC1Context *v) val = ((cbp >> (5 - k)) & 1); - if (k < 4) { - int pred = vc1_coded_block_pred(&v->s, k, &coded_val); - val = val ^ pred; - *coded_val = val; - } + if (k < 4) + val = vc1_coded_block_pred(&v->s, k, val); cbp |= val << (5 - k); vc1_decode_i_block(v, v->block[v->cur_blk_idx][block_map[k]], k, val, (k < 4) ? v->codingset : v->codingset2); @@ -2627,7 +2622,6 @@ static int vc1_decode_i_blocks_adv(VC1Context *v) MpegEncContext *s = &v->s; GetBitContext *const gb = &v->gb; int cbp, val; - uint8_t *coded_val; int mb_pos; int mquant; int mqdiff; @@ -2712,11 +2706,8 @@ static int vc1_decode_i_blocks_adv(VC1Context *v) val = ((cbp >> (5 - k)) & 1); - if (k < 4) { - int pred = vc1_coded_block_pred(&v->s, k, &coded_val); - val = val ^ pred; - *coded_val = val; - } + if (k < 4) + val = vc1_coded_block_pred(&v->s, k, val); cbp |= val << (5 - k); v->a_avail = !s->first_slice_line || (k == 2 || k == 3); _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
