diff options
author | Anton Khirnov <anton@khirnov.net> | 2015-01-17 22:28:46 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2015-03-21 11:27:13 +0100 |
commit | bf03a878a76dea29b36f368759e9f66102b39a5f (patch) | |
tree | 4644eed6af1b02ccdba42dab655f3740f0b0fd33 /libavcodec/h264.h | |
parent | b063582e0c4f775a8ba377488bd085595e0e7fae (diff) | |
download | ffmpeg-bf03a878a76dea29b36f368759e9f66102b39a5f.tar.gz |
h264: move mb[_{padding,luma_dc}] into the per-slice context
Diffstat (limited to 'libavcodec/h264.h')
-rw-r--r-- | libavcodec/h264.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 83c99622bf..e9ce68a869 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -389,6 +389,13 @@ typedef struct H264SliceContext { DECLARE_ALIGNED(8, int8_t, ref_cache)[2][5 * 8]; DECLARE_ALIGNED(8, uint16_t, sub_mb_type)[4]; + + ///< as a dct coeffecient is int32_t in high depth, we need to reserve twice the space. + DECLARE_ALIGNED(16, int16_t, mb)[16 * 48 * 2]; + DECLARE_ALIGNED(16, int16_t, mb_luma_dc)[3][16 * 2]; + ///< as mb is addressed by scantable[i] and scantable is uint8_t we can either + ///< check that i is not too large or ensure that there is some unused stuff after mb + int16_t mb_padding[256 * 2]; } H264SliceContext; /** @@ -469,10 +476,6 @@ typedef struct H264Context { GetBitContext *intra_gb_ptr; GetBitContext *inter_gb_ptr; - DECLARE_ALIGNED(16, int16_t, mb)[16 * 48 * 2]; ///< as a dct coeffecient is int32_t in high depth, we need to reserve twice the space. - DECLARE_ALIGNED(16, int16_t, mb_luma_dc)[3][16 * 2]; - int16_t mb_padding[256 * 2]; ///< as mb is addressed by scantable[i] and scantable is uint8_t we can either check that i is not too large or ensure that there is some unused stuff after mb - /** * Cabac */ |