restored circular looping when changing audio and video stream (previously broken)

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20970 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
nicodvb 2006-11-16 22:08:14 +00:00
parent 18d524f23e
commit 81173eeb6c
1 changed files with 6 additions and 2 deletions

View File

@ -3189,10 +3189,12 @@ static int demux_ts_control(demuxer_t *demuxer, int cmd, void *arg)
while(!sh_a)
{
i = (i+1) % 8192;
if(priv->ts.streams[i].type == TYPE_AUDIO)
{
if(priv->ts.streams[i].id == demuxer->audio->id) //we made a complete loop
break;
if(priv->ts.streams[i].type == TYPE_AUDIO)
sh_a = (sh_audio_t*)priv->ts.streams[i].sh;
}
}
}
else if(n <= priv->last_aid)
@ -3241,10 +3243,12 @@ static int demux_ts_control(demuxer_t *demuxer, int cmd, void *arg)
while(!sh_v)
{
i = (i+1) % 8192;
if(priv->ts.streams[i].type == TYPE_VIDEO)
{
if(priv->ts.streams[i].id == demuxer->video->id) //we made a complete loop
break;
if(priv->ts.streams[i].type == TYPE_VIDEO)
sh_v = (sh_video_t*)priv->ts.streams[i].sh;
}
}
}
else if(n <= priv->last_vid)