GNOME Bugzilla – Bug 796977
avwait: Start video and audio together if audio starts late
Last modified: 2018-08-17 12:02:55 UTC
See commit message
Created attachment 373359 [details] [review] avwait: Start video and audio together if audio starts late Also add test to meson
Review of attachment 373359 [details] [review]: ::: gst/timecode/gstavwait.c @@ +754,3 @@ } + while (self->mode == MODE_VIDEO_FIRST + && self->first_audio_running_time == GST_CLOCK_TIME_NONE) { Need to check for flushing flag here, and probably EOS too (and set such flags) Flushing the audio pad should not unblock the video pad, flushing the video pad should not unblock the audio pad. They should only unblock the corresponding pad itself. Shutting down the element should unblock both pads. @@ +873,3 @@ GST_TIME_ARGS (self->running_time_to_wait_for), inbuf); + if (self->mode != MODE_VIDEO_FIRST || + self->first_audio_running_time <= running_time) { Probably need to handle the case here where audio ended before the video running time?
Created attachment 373370 [details] [review] avwait: Start video and audio together if audio starts late Also add test to meson
Thanks, fixed. Please review again.
Review of attachment 373370 [details] [review]: ::: gst/timecode/gstavwait.c @@ +906,3 @@ } + } else { + /* First audio buffer arrived too late */ Please add a comment here about the actual condition when we get in here, all those boolean flags above are not too easy to decipher. And it's not that the first audio buffer is too late, just that it's after the video
Created attachment 373376 [details] [review] avwait: Start video and audio together if audio starts late Also add test to meson
Review of attachment 373376 [details] [review]: commit ff952374b5b7961fd45bc3fb5218e212cae9f434 (HEAD -> upstream_master, upstream/master) Author: Vivia Nikolaidou <vivia@ahiru.eu> Date: Thu Aug 16 17:47:55 2018 +0300 avwait: Start video and audio together if audio starts late Also add test to meson https://bugzilla.gnome.org/show_bug.cgi?id=796977