[Bug 642942] New: adder: offset_end field of outgoing buffers is set to GST_BUFFER_OFFSET_NONE
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Feb 21 20:49:12 PST 2011
https://bugzilla.gnome.org/show_bug.cgi?id=642942
GStreamer | gst-plugins-base | git
Summary: adder: offset_end field of outgoing buffers is set to
GST_BUFFER_OFFSET_NONE
Classification: Desktop
Product: GStreamer
Version: git
OS/Version: All
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-base
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: lsinger at caltech.edu
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME target: ---
GNOME version: ---
Created an attachment (id=181555)
--> (https://bugzilla.gnome.org/attachment.cgi?id=181555)
proposed patch
adder does not set the offset_end field of its output buffers.
If the input buffers on the sink pads have exactly the same offsets and
offsets_end, then that's OK, because in gst_adder_collected, the call to
gst_collect_pads_take_buffer will return an unmodified input buffer from the
first sink pad -- and this will have the offset_end field filled in by the
upstream pipeline. That buffer is recycled as the output buffer, so it already
has all of its metadata set.
However, if the sink pads have offsets and offsets_end that don't exactly line
up, then gst_collect_pads_take_buffer will have to return a new buffer, either
by merging existing buffers or by creating a sub-buffer. This new buffer will
have the offset_end field set to GST_BUFFER_OFFSET_NONE.
The attached script reproduces this error. It consists of a pipeline with two
audiotestsrc's with different values of the "samplesperbuffer" property, both
attached to an adder. The timestamp, duration, offset, and offset_end fields
will look like this:
0 7812500 0 18446744073709551615
7812500 7812500 128 18446744073709551615
15625000 7812500 256 18446744073709551615
...
Either set both "samplesperbuffer" properties to the same value, or apply the
attached patch, and the offset_end fields get filled in:
0 7812500 0 128
7812500 7812500 128 256
15625000 7812500 256 384
...
The attached patch adds code to fill in the offset_end field.
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list