mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-17 11:45:25 +00:00
gst/mxf/mxfdemux.c: In push mode skip the run in again if we get buffers with an offset before the run in. This can h...
Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_chain): In push mode skip the run in again if we get buffers with an offset before the run in. This can happen on seeks for example.
This commit is contained in:
parent
1ea02b7a38
commit
b050e06170
2 changed files with 15 additions and 4 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2008-12-17 Sebastian Dröge <sebastian.droege@collabora.co.uk>
|
||||||
|
|
||||||
|
* gst/mxf/mxfdemux.c: (gst_mxf_demux_chain):
|
||||||
|
In push mode skip the run in again if we get buffers with
|
||||||
|
an offset before the run in. This can happen on seeks for example.
|
||||||
|
|
||||||
2008-12-16 Stefan Kost <ensonic@users.sf.net>
|
2008-12-16 Stefan Kost <ensonic@users.sf.net>
|
||||||
|
|
||||||
* ext/celt/gstceltenc.c:
|
* ext/celt/gstceltenc.c:
|
||||||
|
|
|
@ -554,11 +554,11 @@ gst_mxf_demux_choose_package (GstMXFDemux * demux)
|
||||||
|
|
||||||
for (i = 0; i < demux->preface->content_storage->n_packages; i++) {
|
for (i = 0; i < demux->preface->content_storage->n_packages; i++) {
|
||||||
if (demux->preface->content_storage->packages[i] &&
|
if (demux->preface->content_storage->packages[i] &&
|
||||||
MXF_IS_METADATA_MATERIAL_PACKAGE (demux->preface->
|
MXF_IS_METADATA_MATERIAL_PACKAGE (demux->preface->content_storage->
|
||||||
content_storage->packages[i])) {
|
packages[i])) {
|
||||||
ret =
|
ret =
|
||||||
MXF_METADATA_GENERIC_PACKAGE (demux->preface->
|
MXF_METADATA_GENERIC_PACKAGE (demux->preface->content_storage->
|
||||||
content_storage->packages[i]);
|
packages[i]);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1666,6 +1666,11 @@ gst_mxf_demux_chain (GstPad * pad, GstBuffer * inbuf)
|
||||||
}
|
}
|
||||||
gst_adapter_flush (demux->adapter, 1);
|
gst_adapter_flush (demux->adapter, 1);
|
||||||
}
|
}
|
||||||
|
} else if (demux->offset < demux->run_in) {
|
||||||
|
gst_adapter_flush (demux->adapter,
|
||||||
|
MIN (gst_adapter_available (demux->adapter),
|
||||||
|
demux->run_in - demux->offset));
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (G_UNLIKELY (ret != GST_FLOW_OK))
|
if (G_UNLIKELY (ret != GST_FLOW_OK))
|
||||||
|
|
Loading…
Reference in a new issue