[gst-devel] do events need a pipeline and iteration to propagate?

Ákos Maróy darkeye at tyrell.hu
Tue Jun 7 05:49:08 CEST 2005


Ronald S. Bultje wrote:
> I won't fix it, but I'll probably accept patches.

the issue is even even stranger with playing ogg vorbis. there, the
new-pad event of oggdemux needs to be called by gstreamer so that
vorbisdec can be attached to it. the strange thing is, this happens only
after quite a few (for me, 16) calls to gst_bin_iterate(). I'm not sure
what happens during these 16 calls, but clearly, I can't actually play
ogg vorbis without a significant number of iterations.


thus, as a workaround, I'd rather connect the decoder (either mad or
vorbisdec) to a fakesink, and iterate on it until it actually seeks to
where I wanted to. but, as I wrote in an earlier e-mail, mad won't seek
with a fakesink attached to it - but why won't it?



also, looking at the mad plugin, the accuracy of seeking is quite bad.
it's based on an estimate of the average calculated bitrate. whereas
madplay, the player app coming with libmad actually goes through all the
frames when seeking, ignoring their contents (returns MAD_FLOW_IGNORE
values until it reaches parts it's interested in), but using accurate
times from the frames.



Akos




More information about the gstreamer-devel mailing list