[FFmpeg-devel] [PATCH] libavcodec/vp9:reduce memory copy of prob.coef
xufuji456
839789740 at qq.com
Mon Feb 20 12:12:51 EET 2023
---
libavcodec/vp9.c | 14 +-------------
1 file changed, 1 insertion(+), 13 deletions(-)
diff --git a/libavcodec/vp9.c b/libavcodec/vp9.c
index ebb89a413c..4a9fed62e0 100644
--- a/libavcodec/vp9.c
+++ b/libavcodec/vp9.c
@@ -948,7 +948,7 @@ static int decode_frame_header(AVCodecContext *avctx,
break;
for (n = 0; n < 3; n++) {
if (vpx_rac_get_prob_branchy(&s->c, 252))
- p[n] = update_prob(&s->c, r[n]);
+ r[n] = p[n] = update_prob(&s->c, r[n]);
else
p[n] = r[n];
}
@@ -1661,18 +1661,6 @@ static int vp9_decode_frame(AVCodecContext *avctx, AVFrame *frame,
return ret;
}
if (s->s.h.refreshctx && s->s.h.parallelmode) {
- int j, k, l, m;
-
- for (i = 0; i < 4; i++) {
- for (j = 0; j < 2; j++)
- for (k = 0; k < 2; k++)
- for (l = 0; l < 6; l++)
- for (m = 0; m < 6; m++)
- memcpy(s->prob_ctx[s->s.h.framectxid].coef[i][j][k][l][m],
- s->prob.coef[i][j][k][l][m], 3);
- if (s->s.h.txfmmode == i)
- break;
- }
s->prob_ctx[s->s.h.framectxid].p = s->prob.p;
ff_thread_finish_setup(avctx);
} else if (!s->s.h.refreshctx) {
--
2.32.0 (Apple Git-132)
More information about the ffmpeg-devel
mailing list