[vlc-commits] [Git][videolan/vlc][master] video_output: remove wait misfire hazard margin

Romain Vimont (@rom1v) gitlab at videolan.org
Thu Jul 22 14:54:31 UTC 2021



Romain Vimont pushed to branch master at VideoLAN / VLC


Commits:
832b8519 by Alexandre Janniaux at 2021-07-22T13:19:41+00:00
video_output: remove wait misfire hazard margin

The time taken by the prepare is compound of measurements taken in
actual preparation steps. It's made of the time needed to execute the
static filters, the interactive filters, and the time needed for the
display to prepare.

VOUT_MWAIT_TOLERANCE is the margin of error accepted when the scheduler
wakes up the vout_control_Pop deadline late compared to the deadline we
choosed, or wakes up the vlc_clock_Wait late. It's supposed to move the
deadline back wherever relevant to display a frame, to wait a little
less that in the ideal instantaneous or real time case.

It doesn't represent "time spent" so there's no need to account it in
the duration of the prepare as a discriminator for late frames. In
addition, it's hardcoded time not dependant on whether the media or the
system running the video output and accounts for 1/4 of the time budget
for rendering a frame with 60fps.

Regression from a5d85a5f248b12a2ef78041cf2dfa14a6106d66d.

- - - - -


1 changed file:

- src/video_output/video_output.c


Changes:

=====================================
src/video_output/video_output.c
=====================================
@@ -955,7 +955,6 @@ static bool IsPictureLate(vout_thread_sys_t *vout, picture_t *decoded,
     vout_thread_sys_t *sys = vout;
 
     const vlc_tick_t prepare_decoded_duration = vout_chrono_GetHigh(&sys->render) +
-                                                VOUT_MWAIT_TOLERANCE +
                                                 vout_chrono_GetHigh(&sys->static_filter);
     vlc_tick_t late = system_now + prepare_decoded_duration - system_pts;
 



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/832b85190ea234c776a8b2f3023701d17b5f1a82

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/832b85190ea234c776a8b2f3023701d17b5f1a82
You're receiving this email because of your account on code.videolan.org.




More information about the vlc-commits mailing list