diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-12-01 14:55:58 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-12-01 14:55:58 +0000 |
commit | 744797543e1d81a6615609aa97fa5d591e0332e4 (patch) | |
tree | 8180b21506ab4394f136f5fa8d5b563d3bb56f12 /libmpdemux/demux_ogg.c | |
parent | 7f98fc4ad3e6e3bcdddd719d623b15cdbc37bb55 (diff) | |
download | mpv-744797543e1d81a6615609aa97fa5d591e0332e4.tar.bz2 mpv-744797543e1d81a6615609aa97fa5d591e0332e4.tar.xz |
Use a pointer variable for extradata to simplify init_avi_with_ogg
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@25230 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_ogg.c')
-rw-r--r-- | libmpdemux/demux_ogg.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/libmpdemux/demux_ogg.c b/libmpdemux/demux_ogg.c index 222a70a2a0..0b52a28a0f 100644 --- a/libmpdemux/demux_ogg.c +++ b/libmpdemux/demux_ogg.c @@ -1242,6 +1242,7 @@ demuxer_t* init_avi_with_ogg(demuxer_t* demuxer) { demux_packet_t *dp; sh_audio_t *sh_audio = demuxer->audio->sh; int np; + uint8_t *extradata = sh_audio->wf + 1; unsigned char *p = NULL,*buf; int plen; @@ -1251,7 +1252,9 @@ demuxer_t* init_avi_with_ogg(demuxer_t* demuxer) { goto fallback; } /// Get the size of the 3 header packet - memcpy(hdrsizes, ((unsigned char*)sh_audio->wf)+22+sizeof(WAVEFORMATEX), 3*sizeof(uint32_t)); + extradata += 22; + memcpy(hdrsizes, extradata, 3*sizeof(uint32_t)); + extradata += 3*sizeof(uint32_t); // printf("\n!!!!!! hdr sizes: %d %d %d \n",hdrsizes[0],hdrsizes[1],hdrsizes[2]); /// Check the size @@ -1295,15 +1298,17 @@ demuxer_t* init_avi_with_ogg(demuxer_t* demuxer) { /// Add the header packets in the ogg demuxer audio stream // Initial header dp = new_demux_packet(hdrsizes[0]); - memcpy(dp->buffer,((unsigned char*)sh_audio->wf)+22+sizeof(WAVEFORMATEX)+3*sizeof(uint32_t),hdrsizes[0]); + memcpy(dp->buffer,extradata,hdrsizes[0]); ds_add_packet(od->audio,dp); + extradata += hdrsizes[0]; /// Comments dp = new_demux_packet(hdrsizes[1]); - memcpy(dp->buffer,((unsigned char*)sh_audio->wf)+22+sizeof(WAVEFORMATEX)+3*sizeof(uint32_t)+hdrsizes[0],hdrsizes[1]); + memcpy(dp->buffer,extradata,hdrsizes[1]); ds_add_packet(od->audio,dp); + extradata += hdrsizes[1]; /// Code book dp = new_demux_packet(hdrsizes[2]); - memcpy(dp->buffer,((unsigned char*)sh_audio->wf)+22+sizeof(WAVEFORMATEX)+3*sizeof(uint32_t)+hdrsizes[0]+hdrsizes[1],hdrsizes[2]); + memcpy(dp->buffer,extradata,hdrsizes[2]); ds_add_packet(od->audio,dp); // Finish setting up the ogg demuxer |