mirror of
https://github.com/mpv-player/mpv.git
synced 2025-12-28 05:33:14 +00:00
player/playloop.c: Revert --loop-file and --start interaction
This reverts commit9513165c99and commit4efe330efb. I had changed --loop-file to interact with --start to work the same way that --loop-playlist does. (That is, --loop-file seeks to the --start time upon looping, not the beginning of the file.) However, the consensus is that the old behavior is preferred and the interaction with --loop-playlist is the one that is incorrect. In addition, this change introduced a bug in the interaction between Quit-Watch-Later and --loop-file, where upon reaching playback end it would seek to the resume timestamp, not the start of the file. As a result, this commit reverts that change.
This commit is contained in:
@@ -781,19 +781,11 @@ static void handle_loop_file(struct MPContext *mpctx)
|
||||
|
||||
// Do not attempt to loop-file if --ab-loop is active.
|
||||
else if (opts->loop_file && mpctx->stop_play == AT_END_OF_FILE) {
|
||||
double play_start_pts = get_play_start_pts(mpctx);
|
||||
if (play_start_pts == MP_NOPTS_VALUE)
|
||||
play_start_pts = 0;
|
||||
double play_end_pts = get_play_end_pts(mpctx);
|
||||
if (play_end_pts == MP_NOPTS_VALUE || play_start_pts < play_end_pts){
|
||||
mpctx->stop_play = KEEP_PLAYING;
|
||||
set_osd_function(mpctx, OSD_FFW);
|
||||
queue_seek(mpctx, MPSEEK_ABSOLUTE, play_start_pts, MPSEEK_EXACT,
|
||||
MPSEEK_FLAG_NOFLUSH);
|
||||
if (opts->loop_file > 0)
|
||||
opts->loop_file--;
|
||||
}
|
||||
|
||||
mpctx->stop_play = KEEP_PLAYING;
|
||||
set_osd_function(mpctx, OSD_FFW);
|
||||
queue_seek(mpctx, MPSEEK_ABSOLUTE, 0, MPSEEK_DEFAULT, MPSEEK_FLAG_NOFLUSH);
|
||||
if (opts->loop_file > 0)
|
||||
opts->loop_file--;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user