[vlc-devel] [PATCH 0/6] Trying to fix the big one: Frame threading regressions

Thomas Guillem thomas at gllm.fr
Thu Sep 26 16:38:08 CEST 2019


cf. https://mailman.videolan.org/pipermail/vlc-devel/2019-September/127432.html

I chose to solve this issue with:
 "- Have a way to report decoder delay.. but that would mean no playback
until data decodes (what if only bogus data ? mutiple decs ?..)."

Yes, no playback until data decodes, that is why we have a jitter delay in the
output clock (80ms minimum).

The solution I propose (explained commits by commits) will work on most case
but won't work if the video is started late. In that case, threaded decoding
will be disabled by avcodec. I guess it's OK since it's a corner case.

Thomas Guillem (6):
  clock: remove unused variable
  clock: store the full list of clocks on the main one
  clock: add vlc_clock_SetDecoderLatency
  decoder: add decoder_UpdateVideoFrameLatency
  avcodec: re-indent for the next commit
  avcodec: use decoder_UpdateVideoFrameLatency()

 include/vlc_codec.h           | 22 +++++++++
 modules/codec/avcodec/video.c | 69 ++++++++++++++++++---------
 src/clock/clock.c             | 88 ++++++++++++++++++++++++++++++++++-
 src/clock/clock.h             | 13 ++++++
 src/input/decoder.c           | 30 ++++++++++++
 5 files changed, 197 insertions(+), 25 deletions(-)

-- 
2.20.1



More information about the vlc-devel mailing list