summaryrefslogtreecommitdiff
path: root/libavcodec/indeo3.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2008-02-01 13:38:55 +0000
committerMichael Niedermayer <michaelni@gmx.at>2008-02-01 13:38:55 +0000
commit972c99c112977d9228845fae66eb104a730b58a8 (patch)
tree91f6147c871967b6174748b4d10f3318472a070a /libavcodec/indeo3.c
parent9bb5e9e945417f2de94a9db24914a3e5723baccf (diff)
Use bytestream.
Originally committed as revision 11730 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/indeo3.c')
-rw-r--r--libavcodec/indeo3.c30
1 files changed, 11 insertions, 19 deletions
diff --git a/libavcodec/indeo3.c b/libavcodec/indeo3.c
index ab221ddff9..7e814094e5 100644
--- a/libavcodec/indeo3.c
+++ b/libavcodec/indeo3.c
@@ -27,6 +27,7 @@
#include "avcodec.h"
#include "dsputil.h"
#include "mpegvideo.h"
+#include "bytestream.h"
#include "indeo3data.h"
@@ -186,28 +187,22 @@ static unsigned long iv_decode_frame(Indeo3DecodeContext *s,
buf_pos = buf;
buf_pos += 18;
- fflags1 = le2me_16(*(uint16_t *)buf_pos);
- buf_pos += 2;
- fflags3 = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 4;
+ fflags1 = bytestream_get_le16(&buf_pos);
+ fflags3 = bytestream_get_le32(&buf_pos);
fflags2 = *buf_pos++;
buf_pos += 3;
- hdr_height = le2me_16(*(uint16_t *)buf_pos);
- buf_pos += 2;
- hdr_width = le2me_16(*(uint16_t *)buf_pos);
+ hdr_height = bytestream_get_le16(&buf_pos);
+ hdr_width = bytestream_get_le16(&buf_pos);
if(avcodec_check_dimensions(NULL, hdr_width, hdr_height))
return -1;
- buf_pos += 2;
chroma_height = ((hdr_height >> 2) + 3) & 0x7ffc;
chroma_width = ((hdr_width >> 2) + 3) & 0x7ffc;
- offs1 = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 4;
- offs2 = le2me_32(*(uint32_t *)buf_pos);
+ offs1 = bytestream_get_le32(&buf_pos);
+ offs2 = bytestream_get_le32(&buf_pos);
+ offs3 = bytestream_get_le32(&buf_pos);
buf_pos += 4;
- offs3 = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 8;
hdr_pos = buf_pos;
if(fflags3 == 0x80) return 4;
@@ -220,8 +215,7 @@ static unsigned long iv_decode_frame(Indeo3DecodeContext *s,
}
buf_pos = buf + 16 + offs1;
- offs = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 4;
+ offs = bytestream_get_le32(&buf_pos);
iv_Decode_Chunk(s, s->cur_frame->Ybuf, s->ref_frame->Ybuf, hdr_width,
hdr_height, buf_pos + offs * 2, fflags2, hdr_pos, buf_pos,
@@ -231,16 +225,14 @@ static unsigned long iv_decode_frame(Indeo3DecodeContext *s,
{
buf_pos = buf + 16 + offs2;
- offs = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 4;
+ offs = bytestream_get_le32(&buf_pos);
iv_Decode_Chunk(s, s->cur_frame->Vbuf, s->ref_frame->Vbuf, chroma_width,
chroma_height, buf_pos + offs * 2, fflags2, hdr_pos, buf_pos,
FFMIN(chroma_width, 40));
buf_pos = buf + 16 + offs3;
- offs = le2me_32(*(uint32_t *)buf_pos);
- buf_pos += 4;
+ offs = bytestream_get_le32(&buf_pos);
iv_Decode_Chunk(s, s->cur_frame->Ubuf, s->ref_frame->Ubuf, chroma_width,
chroma_height, buf_pos + offs * 2, fflags2, hdr_pos, buf_pos,