On Fri, Jan 30, 2009 at 12:45 PM, Daniel James Laird <daniel.j.laird at nxp.com> wrote: > Many thanks for the reply, > we are having similar discussions internally as well. > > My question back would be > > Could I do the following? > filesrc -> demux -> My plugin (Codec/Decoder) -> FakeSink > > This would mean I am more like the standard model. However the Fakesink does very little just satisfies the standard gstreamer model. But it means that the closed video pipe (that's handles avsync etc, hides all datapointers etc is all left as it is). > I just feed my Codec/Decoder plugin with encoded video (write to the device (+ metadata like timestamps)) and everytime I decode a frame I output something to keep the FakeSink (effectively /dev/null) happy. If you do that you'll loose A/V sync. Whatever sync you choose on the pipeline must receive proper timestamps. It's OK to write a dec+sink elements, that's what we use in Maemo, but they need to act as sinks (inherit from basesink) so that they handle pre-rolling and A/V sink, etc. -- Felipe Contreras