diff options
author | Tucker DiNapoli <T.DiNapoli42@gmail.com> | 2015-04-22 23:27:27 +0300 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-04-23 00:59:03 +0300 |
commit | cbe27006cee0099076d1d68af646f3ef914167d8 (patch) | |
tree | a9ef461ae8826333356b78c394ac55e4a98308c1 /libpostproc/postprocess_internal.h | |
parent | 6264b6227c779af9d2520722f6acb45a2c51cdfd (diff) |
postproc: Made QP, nonBQP, and pQPb arrays
Also pulled QP initialization out of inner loop, which removed some redundent code.
Added some dummy fields to PPContext to allow current code to work while
changing the rest of the postprocessing code to support the arrays.
I also increased alignment requirements for some fields in the PPContext struct to
support future avx2 code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libpostproc/postprocess_internal.h')
-rw-r--r-- | libpostproc/postprocess_internal.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libpostproc/postprocess_internal.h b/libpostproc/postprocess_internal.h index 1ebd974286..c1a306dd32 100644 --- a/libpostproc/postprocess_internal.h +++ b/libpostproc/postprocess_internal.h @@ -143,8 +143,11 @@ typedef struct PPContext{ DECLARE_ALIGNED(8, uint64_t, pQPb); DECLARE_ALIGNED(8, uint64_t, pQPb2); - DECLARE_ALIGNED(8, uint64_t, mmxDcOffset)[64]; - DECLARE_ALIGNED(8, uint64_t, mmxDcThreshold)[64]; + DECLARE_ALIGNED(32, uint64_t, pQPb_block)[4]; + DECLARE_ALIGNED(32, uint64_t, pQPb2_block)[4]; + + DECLARE_ALIGNED(32, uint64_t, mmxDcOffset)[64]; + DECLARE_ALIGNED(32, uint64_t, mmxDcThreshold)[64]; QP_STORE_T *stdQPTable; ///< used to fix MPEG2 style qscale QP_STORE_T *nonBQPTable; @@ -153,6 +156,9 @@ typedef struct PPContext{ int QP; int nonBQP; + DECLARE_ALIGNED(32, int, QP_block)[4]; + DECLARE_ALIGNED(32, int, nonBQP_block)[4]; + int frameNum; int cpuCaps; |