# HG changeset patch # User aurel # Date 1182601939 0 # Node ID 7dd08e645d92c261e37173024d9daaabe4af5f97 # Parent 38dd9318e1a69fcf81767abd6f6906927a549b24 use intreadwrite functions in matroskadec based on a patch by Ronald S. Bultje rsbultje gmail com diff -r 38dd9318e1a6 -r 7dd08e645d92 matroskadec.c --- a/matroskadec.c Sat Jun 23 12:30:40 2007 +0000 +++ b/matroskadec.c Sat Jun 23 12:32:19 2007 +0000 @@ -860,8 +860,7 @@ uint8_t probe_data[] = { 'm', 'a', 't', 'r', 'o', 's', 'k', 'a' }; /* ebml header? */ - if ((p->buf[0] << 24 | p->buf[1] << 16 | - p->buf[2] << 8 | p->buf[3]) != EBML_ID_HEADER) + if (AV_RB32(p->buf) != EBML_ID_HEADER) return 0; /* length of header */ @@ -2044,13 +2043,11 @@ MATROSKA_CODEC_ID_VIDEO_VFW_FOURCC) && (track->codec_priv_size >= 40) && (track->codec_priv != NULL)) { - unsigned char *p; + MatroskaVideoTrack *vtrack = (MatroskaVideoTrack *) track; /* Offset of biCompression. Stored in LE. */ - p = (unsigned char *)track->codec_priv + 16; - ((MatroskaVideoTrack *)track)->fourcc = (p[3] << 24) | - (p[2] << 16) | (p[1] << 8) | p[0]; - codec_id = codec_get_id(codec_bmp_tags, ((MatroskaVideoTrack *)track)->fourcc); + vtrack->fourcc = AV_RL32(track->codec_priv + 16); + codec_id = codec_get_id(codec_bmp_tags, vtrack->fourcc); } @@ -2060,12 +2057,10 @@ MATROSKA_CODEC_ID_AUDIO_ACM) && (track->codec_priv_size >= 18) && (track->codec_priv != NULL)) { - unsigned char *p; uint16_t tag; /* Offset of wFormatTag. Stored in LE. */ - p = (unsigned char *)track->codec_priv; - tag = (p[1] << 8) | p[0]; + tag = AV_RL16(track->codec_priv); codec_id = codec_get_id(codec_wav_tags, tag); } @@ -2274,7 +2269,7 @@ duration = matroska->tracks[track]->default_duration; /* block_time (relative to cluster time) */ - block_time = (data[0] << 8) | data[1]; + block_time = AV_RB16(data); data += 2; size -= 2; flags = *data;