diff options
author | Loren Merritt <lorenm@u.washington.edu> | 2008-12-10 21:26:00 +0000 |
---|---|---|
committer | Loren Merritt <lorenm@u.washington.edu> | 2008-12-10 21:26:00 +0000 |
commit | 5fac277602ebab5990c4d20342a4e55bb7c43b93 (patch) | |
tree | 4372e8a189c0a2c919bd5e6c8e012b533df59305 /libavcodec/mjpegdec.h | |
parent | 8153f14444519e0aec299678ad9bc4268d55acff (diff) | |
download | ffmpeg-5fac277602ebab5990c4d20342a4e55bb7c43b93.tar.gz |
fix progressive jpeg:
support refinement passes
remove intermediate clipping
remove redundant idct
Originally committed as revision 16044 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/mjpegdec.h')
-rw-r--r-- | libavcodec/mjpegdec.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/mjpegdec.h b/libavcodec/mjpegdec.h index c973a9c2a2..e90d864937 100644 --- a/libavcodec/mjpegdec.h +++ b/libavcodec/mjpegdec.h @@ -67,6 +67,7 @@ typedef struct MJpegDecodeContext { int width, height; int mb_width, mb_height; int nb_components; + int block_stride[MAX_COMPONENTS]; int component_id[MAX_COMPONENTS]; int h_count[MAX_COMPONENTS]; /* horizontal and vertical count for each component */ int v_count[MAX_COMPONENTS]; @@ -83,6 +84,9 @@ typedef struct MJpegDecodeContext { int linesize[MAX_COMPONENTS]; ///< linesize << interlaced int8_t *qscale_table; DECLARE_ALIGNED_16(DCTELEM, block[64]); + DCTELEM (*blocks[MAX_COMPONENTS])[64]; ///< intermediate sums (progressive mode) + uint8_t *last_nnz[MAX_COMPONENTS]; + uint64_t coefs_finished[MAX_COMPONENTS]; ///< bitmask of which coefs have been completely decoded (progressive mode) ScanTable scantable; DSPContext dsp; |