diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-08-02 22:25:07 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-08-02 23:34:01 +0200 |
commit | 9c6e23f5d2f9fa58d54adf35b4cde4e351fb7d64 (patch) | |
tree | 51e742dd00ad34c80a40e60e8fa4ff7a05adef8f /libavcodec/vp8.h | |
parent | 9f14cd91b5195e2beba7213e855c0d36b787ab85 (diff) | |
parent | c728518b3cbb0daf0d0a65ba7adfcb48c5629b93 (diff) | |
download | ffmpeg-9c6e23f5d2f9fa58d54adf35b4cde4e351fb7d64.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
x86: fft: fix imdct_half() for AVX
rtmppkt: Add missing libavcodec/bytestream.h include.
rtmp: add functions for reading AMF values
vc1dec: remove useless #include simple_idct.h
dct-test: always link with aandcttab.o
vp8: pack struct VP8ThreadData more efficiently
x86: remove libmpeg2 mmx(ext) idct functions
eamad: Use dsputils instead of a custom bswap16_buf
Canopus Lossless decoder
Conflicts:
Changelog
LICENSE
libavcodec/avcodec.h
libavcodec/cllc.c
libavcodec/eamad.c
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/vp8.h')
-rw-r--r-- | libavcodec/vp8.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/libavcodec/vp8.h b/libavcodec/vp8.h index 23d62af7fa..4f026dfe8d 100644 --- a/libavcodec/vp8.h +++ b/libavcodec/vp8.h @@ -94,21 +94,8 @@ typedef struct { } VP8Macroblock; typedef struct { -#if HAVE_THREADS - pthread_mutex_t lock; - pthread_cond_t cond; -#endif - int thread_nr; - int thread_mb_pos; // (mb_y << 16) | (mb_x & 0xFFFF) - int wait_mb_pos; // What the current thread is waiting on. - uint8_t *edge_emu_buffer; - /** - * For coeff decode, we need to know whether the above block had non-zero - * coefficients. This means for each macroblock, we need data for 4 luma - * blocks, 2 u blocks, 2 v blocks, and the luma dc block, for a total of 9 - * per macroblock. We keep the last row in top_nnz. - */ - DECLARE_ALIGNED(8, uint8_t, left_nnz)[9]; + DECLARE_ALIGNED(16, DCTELEM, block)[6][4][16]; + DECLARE_ALIGNED(16, DCTELEM, block_dc)[16]; /** * This is the index plus one of the last non-zero coeff * for each of the blocks in the current macroblock. @@ -117,8 +104,21 @@ typedef struct { * 2+-> full transform */ DECLARE_ALIGNED(16, uint8_t, non_zero_count_cache)[6][4]; - DECLARE_ALIGNED(16, DCTELEM, block)[6][4][16]; - DECLARE_ALIGNED(16, DCTELEM, block_dc)[16]; + /** + * For coeff decode, we need to know whether the above block had non-zero + * coefficients. This means for each macroblock, we need data for 4 luma + * blocks, 2 u blocks, 2 v blocks, and the luma dc block, for a total of 9 + * per macroblock. We keep the last row in top_nnz. + */ + DECLARE_ALIGNED(8, uint8_t, left_nnz)[9]; + int thread_nr; +#if HAVE_THREADS + pthread_mutex_t lock; + pthread_cond_t cond; +#endif + int thread_mb_pos; // (mb_y << 16) | (mb_x & 0xFFFF) + int wait_mb_pos; // What the current thread is waiting on. + uint8_t *edge_emu_buffer; VP8FilterStrength *filter_strength; } VP8ThreadData; |