[FFmpeg-cvslog] intrax8: Use a constant buffer instead of a ScratchpadContext

Vittorio Giovara git at videolan.org
Sun Apr 24 13:47:41 CEST 2016


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Fri Feb 19 20:50:00 2016 -0500| [65f14128c4bcf8fcd9d3ba1e20b7a22057c9cfb0] | committer: Vittorio Giovara

intrax8: Use a constant buffer instead of a ScratchpadContext

The size of the block is fixed (8x8 plus padding).

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=65f14128c4bcf8fcd9d3ba1e20b7a22057c9cfb0
---

 libavcodec/intrax8.c |    5 ++---
 libavcodec/intrax8.h |    1 +
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavcodec/intrax8.c b/libavcodec/intrax8.c
index a05c533..f5bf795 100644
--- a/libavcodec/intrax8.c
+++ b/libavcodec/intrax8.c
@@ -330,12 +330,11 @@ static int x8_get_dc_rlf(IntraX8Context *const w, const int mode,
 
 static int x8_setup_spatial_predictor(IntraX8Context *const w, const int chroma)
 {
-    MpegEncContext *const s = w->s;
     int range;
     int sum;
     int quant;
 
-    w->dsp.setup_spatial_compensation(w->dest[chroma], s->sc.edge_emu_buffer,
+    w->dsp.setup_spatial_compensation(w->dest[chroma], w->scratchpad,
                                       w->frame->linesize[chroma > 0],
                                       &range, &sum, w->edges);
     if (chroma) {
@@ -699,7 +698,7 @@ static int x8_decode_intra_mb(IntraX8Context *const w, const int chroma)
         dsp_x8_put_solidcolor(w->predicted_dc, w->dest[chroma],
                               w->frame->linesize[!!chroma]);
     } else {
-        w->dsp.spatial_compensation[w->orient](s->sc.edge_emu_buffer,
+        w->dsp.spatial_compensation[w->orient](w->scratchpad,
                                                w->dest[chroma],
                                                w->frame->linesize[!!chroma]);
     }
diff --git a/libavcodec/intrax8.h b/libavcodec/intrax8.h
index f087b9f..f30801e 100644
--- a/libavcodec/intrax8.h
+++ b/libavcodec/intrax8.h
@@ -51,6 +51,7 @@ typedef struct IntraX8Context {
     int divide_quant_dc_luma;
     int divide_quant_dc_chroma;
     uint8_t *dest[3];
+    uint8_t scratchpad[42]; // size of the block is fixed (8x8 plus padding)
 
     // changed per block
     int edges;



More information about the ffmpeg-cvslog mailing list