summaryrefslogtreecommitdiff
path: root/src/libffmpeg/libavcodec/mjpeg.c
diff options
context:
space:
mode:
authorGuenter Bartsch <guenter@users.sourceforge.net>2001-08-07 23:59:50 +0000
committerGuenter Bartsch <guenter@users.sourceforge.net>2001-08-07 23:59:50 +0000
commit4c0836e8f1504db9bbb329a1351050a8ff2cf469 (patch)
tree5a15df1f39b66be829da3641336d0cac1b846e34 /src/libffmpeg/libavcodec/mjpeg.c
parent116de8566118cae73b42132985c174c372ed6c41 (diff)
downloadxine-lib-4c0836e8f1504db9bbb329a1351050a8ff2cf469.tar.gz
xine-lib-4c0836e8f1504db9bbb329a1351050a8ff2cf469.tar.bz2
latest ffmpeg updates - mmx works\! :-)
CVS patchset: 400 CVS date: 2001/08/07 23:59:50
Diffstat (limited to 'src/libffmpeg/libavcodec/mjpeg.c')
-rw-r--r--src/libffmpeg/libavcodec/mjpeg.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/libffmpeg/libavcodec/mjpeg.c b/src/libffmpeg/libavcodec/mjpeg.c
index e119df66f..df7415b81 100644
--- a/src/libffmpeg/libavcodec/mjpeg.c
+++ b/src/libffmpeg/libavcodec/mjpeg.c
@@ -220,7 +220,7 @@ static int put_huffman_table(MpegEncContext *s, int table_class, int table_id,
static void jpeg_table_header(MpegEncContext *s)
{
PutBitContext *p = &s->pb;
- int i, size;
+ int i, j, size;
UINT8 *ptr;
/* quant matrixes */
@@ -229,13 +229,15 @@ static void jpeg_table_header(MpegEncContext *s)
put_bits(p, 4, 0); /* 8 bit precision */
put_bits(p, 4, 0); /* table 0 */
for(i=0;i<64;i++) {
- put_bits(p, 8, s->intra_matrix[i]);
+ j = zigzag_direct[i];
+ put_bits(p, 8, s->intra_matrix[j]);
}
#if 0
put_bits(p, 4, 0); /* 8 bit precision */
put_bits(p, 4, 1); /* table 1 */
for(i=0;i<64;i++) {
- put_bits(p, 8, s->chroma_intra_matrix[i]);
+ j = zigzag_direct[i];
+ put_bits(p, 8, s->chroma_intra_matrix[j]);
}
#endif
@@ -489,7 +491,7 @@ static int mjpeg_decode_init(AVCodecContext *avctx)
static int mjpeg_decode_dqt(MJpegDecodeContext *s,
UINT8 *buf, int buf_size)
{
- int len, index, i;
+ int len, index, i, j;
init_get_bits(&s->gb, buf, buf_size);
len = get_bits(&s->gb, 16);
@@ -504,8 +506,10 @@ static int mjpeg_decode_dqt(MJpegDecodeContext *s,
return -1;
dprintf("index=%d\n", index);
/* read quant table */
- for(i=0;i<64;i++)
- s->quant_matrixes[index][i] = get_bits(&s->gb, 8);
+ for(i=0;i<64;i++) {
+ j = zigzag_direct[i];
+ s->quant_matrixes[index][j] = get_bits(&s->gb, 8);
+ }
len -= 65;
}
return 0;