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

al subversion at mplayerhq.hu
Sat Apr 8 22:54:00 EEST 2023


Author: al
Date: Sat Apr  8 22:54:00 2023
New Revision: 38416

Log:
mplayer: Do not un-initialize components before exit_player_with_rc

After we finished all play tree items, we will call exit_player_with_rc.

When calling exit_player_with_rc, internally the routine will try
to uninit everything by itself.

More important: This way we unmute the AO if it's muted.

This avoids the regression introduced by the previous commit (r38415)
for typical usage, but it won't help for all potential cases. We still
fail to unmute correctly if one is using multiple AOs like this:

    mplayer file1 -ao pulse file2 -ao alsa file3 -ao pulse

It can even bite with one AO if there is a change to a file without
audio in as the last play tree item:

    ./mplayer file1 file2-without-audio-streams

Modified:
   trunk/mplayer.c

Modified: trunk/mplayer.c
==============================================================================
--- trunk/mplayer.c	Sat Apr  8 22:47:31 2023	(r38415)
+++ trunk/mplayer.c	Sat Apr  8 22:54:00 2023	(r38416)
@@ -4123,9 +4123,6 @@ goto_next_file:  // don't jump here afte
                    (total_time_usage > 0.5) ? (total_frame_cnt / total_time_usage) : 0);
     }
 
-    // time to uninit all, except global stuff:
-    uninit_player(INITIALIZED_ALL - (INITIALIZED_GUI + INITIALIZED_INPUT + (fixed_vo ? INITIALIZED_VO : 0)));
-
     if (mpctx->eof == PT_NEXT_ENTRY || mpctx->eof == PT_PREV_ENTRY) {
         mpctx->eof = mpctx->eof == PT_NEXT_ENTRY ? 1 : -1;
         if (play_tree_iter_step(mpctx->playtree_iter, mpctx->play_tree_step, 0) == PLAY_TREE_ITER_ENTRY) {
@@ -4179,6 +4176,10 @@ goto_next_file:  // don't jump here afte
         if (!mpctx->playtree_iter && !use_gui)
             filename = NULL;
         mpctx->eof = 0;
+
+        // time to uninit all, except global stuff:
+        uninit_player(INITIALIZED_ALL - (INITIALIZED_GUI + INITIALIZED_INPUT + (fixed_vo ? INITIALIZED_VO : 0)));
+
         goto play_next_file;
     }
 


More information about the MPlayer-cvslog mailing list