From ff6007357f229caa43fe0807487096398e5af41e Mon Sep 17 00:00:00 2001 From: reimar Date: Tue, 27 May 2008 17:33:13 +0000 Subject: Simplify/make new_sh behaviour more consistent when a stream gets redefined. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@26907 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demuxer.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'libmpdemux') diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c index 463693a0bb..36b2ba2126 100644 --- a/libmpdemux/demuxer.c +++ b/libmpdemux/demuxer.c @@ -268,6 +268,7 @@ sh_audio_t* new_sh_audio_aid(demuxer_t *demuxer,int id,int aid){ sh_audio_t *sh = calloc(1, sizeof(sh_audio_t)); mp_msg(MSGT_DEMUXER,MSGL_V,MSGTR_FoundAudioStream,id); demuxer->a_streams[id] = sh; + sh->aid = aid; // set some defaults sh->samplesize=2; sh->sample_format=AF_FORMAT_S16_NE; @@ -275,7 +276,6 @@ sh_audio_t* new_sh_audio_aid(demuxer_t *demuxer,int id,int aid){ sh->pts=MP_NOPTS_VALUE; mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_AUDIO_ID=%d\n", aid); } - ((sh_audio_t *)demuxer->a_streams[id])->aid = aid; return demuxer->a_streams[id]; } @@ -299,11 +299,12 @@ sh_video_t* new_sh_video_vid(demuxer_t *demuxer,int id,int vid){ if(demuxer->v_streams[id]){ mp_msg(MSGT_DEMUXER,MSGL_WARN,MSGTR_VideoStreamRedefined,id); } else { + sh_video_t *sh = calloc(1, sizeof(sh_video_t)); mp_msg(MSGT_DEMUXER,MSGL_V,MSGTR_FoundVideoStream,id); - demuxer->v_streams[id]=calloc(1, sizeof(sh_video_t)); + demuxer->v_streams[id] = sh; + sh->vid = vid; mp_msg(MSGT_IDENTIFY, MSGL_INFO, "ID_VIDEO_ID=%d\n", vid); } - ((sh_video_t *)demuxer->v_streams[id])->vid = vid; return demuxer->v_streams[id]; } -- cgit v1.2.3