diff options
author | arpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-04-15 03:40:37 +0000 |
---|---|---|
committer | arpi_esp <arpi_esp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-04-15 03:40:37 +0000 |
commit | 2ba092874905669f0f8e8fda1b043c73e50db716 (patch) | |
tree | f6fb6813964153e16bad3a110c330a3f57ca7f5f /demux_asf.c | |
parent | 4eca33639f3d69767e15c92b35fc7387453ae126 (diff) | |
download | mpv-2ba092874905669f0f8e8fda1b043c73e50db716.tar.bz2 mpv-2ba092874905669f0f8e8fda1b043c73e50db716.tar.xz |
new stream selection code
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@427 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'demux_asf.c')
-rw-r--r-- | demux_asf.c | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/demux_asf.c b/demux_asf.c index 5f30496eab..9d9fed7c8c 100644 --- a/demux_asf.c +++ b/demux_asf.c @@ -21,25 +21,29 @@ static int demux_asf_read_packet(demuxer_t *demux,unsigned char *data,int len,in if(verbose>=4) printf("demux_asf.read_packet: id=%d seq=%d len=%d\n",id,seq,len); -#if 0 - if(demux->video->id==-1) { - demux->video->id=asf_video_id; - if(verbose) printf("ASF video ID = %d\n",demux->video->id); - } + if(demux->video->id==-1) + if(avi_header.v_streams[id]) + demux->video->id=id; + if(demux->audio->id==-1) - if(id!=asf_video_id && id!=demux->video->id){ - demux->audio->id=id; - if(verbose) printf("ASF audio ID = %d\n",demux->audio->id); - } -#endif + if(avi_header.a_streams[id]) + demux->audio->id=id; if(id==demux->audio->id){ // audio ds=demux->audio; + if(!ds->sh){ + ds->sh=avi_header.a_streams[id]; + if(verbose) printf("Auto-selected ASF audio ID = %d\n",ds->id); + } } else if(id==demux->video->id){ // video ds=demux->video; + if(!ds->sh){ + ds->sh=avi_header.v_streams[id]; + if(verbose) printf("Auto-selected ASF video ID = %d\n",ds->id); + } } if(ds){ |