mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 19:51:11 +00:00
wavparse: ensure that any pending segment is sent before an EOS event is sent
Specifically fixes seqnum handling when an aggregator-based element (audiomixer et al) is downstream and a seek is performed that immediately causes an EOS from wavparse. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2356>
This commit is contained in:
parent
17aa70b888
commit
f4f342aa78
1 changed files with 7 additions and 0 deletions
|
@ -2289,6 +2289,13 @@ pause:
|
||||||
if (G_UNLIKELY (wav->first)) {
|
if (G_UNLIKELY (wav->first)) {
|
||||||
wav->first = FALSE;
|
wav->first = FALSE;
|
||||||
gst_wavparse_add_src_pad (wav, NULL);
|
gst_wavparse_add_src_pad (wav, NULL);
|
||||||
|
} else {
|
||||||
|
/* If we have a pending start segment, send it now. Can happen if a seek
|
||||||
|
* causes an immediate EOS */
|
||||||
|
if (G_UNLIKELY (wav->start_segment != NULL)) {
|
||||||
|
gst_pad_push_event (wav->srcpad, wav->start_segment);
|
||||||
|
wav->start_segment = NULL;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* perform EOS logic */
|
/* perform EOS logic */
|
||||||
|
|
Loading…
Reference in a new issue