[MPlayer-cvslog] r37657 - trunk/mplayer.c

reimar subversion at mplayerhq.hu
Wed Feb 10 22:26:34 CET 2016


Author: reimar
Date: Wed Feb 10 22:26:33 2016
New Revision: 37657

Log:
Support playing late appearing video streams.

When we initially could not find a video stream
but later one appears, start playing it.
This matches the behaviour for audio streams.
This also avoids never getting any video if
we could not find a video stream during the
initial probe e.g. for DVD streams.

Modified:
   trunk/mplayer.c

Modified: trunk/mplayer.c
==============================================================================
--- trunk/mplayer.c	Wed Feb 10 22:19:52 2016	(r37656)
+++ trunk/mplayer.c	Wed Feb 10 22:26:33 2016	(r37657)
@@ -3691,7 +3691,7 @@ goto_enable_cache:
             mp_msg(MSGT_CPLAYER, MSGL_INFO, MSGTR_Video_NoVideo);
             mp_msg(MSGT_CPLAYER, MSGL_V, "Freeing %d unused video chunks.\n", mpctx->d_video->packs);
             ds_free_packs(mpctx->d_video);
-            mpctx->d_video->id = -2;
+            //mpctx->d_video->id = -2;
             //if(!fixed_vo) uninit_player(INITIALIZED_VO);
         }
 
@@ -3770,6 +3770,15 @@ goto_enable_cache:
                 mpctx->sh_audio->ds = mpctx->d_audio;
                 reinit_audio_chain();
             }
+            // Note: the video_id != -2 is only there because
+            // some demuxers do not have support for disabling
+            // video.
+            if (video_id != -2 && mpctx->d_video->id != -2 &&
+                !mpctx->sh_video && mpctx->d_video->sh) {
+                mpctx->sh_video     = mpctx->d_video->sh;
+                mpctx->sh_video->ds = mpctx->d_video;
+                reinit_video_chain();
+            }
 
 /*========================== PLAY AUDIO ============================*/
 


More information about the MPlayer-cvslog mailing list