[gst-devel] Application events?
soto at informatik.uni-kl.de
Wed May 21 05:48:09 CEST 2003
Is there any way for an application to define new events? I ask because
I'm now trying to make the DVD subtitles work with the DXR3 card, and
there is color palette and color look-up table (clut) information that
must be carried from the DVD source (dvdnavsrc for example) to my
dxr3spusink element. I did a hack consisting of adding a couple
additional signals to dvdnavsrc, that fire whenever a new palette or
clut is available, and having corresponding signals in dxr3spusink that
can be invoked to set the palette and clut. It kind of works, but since
it is not synchronized with the normal flow of data (i. e. down the
GStreamer pipeline) it leads to some really strange behavior.
In my opinion, the obvious solution would be to have events that carry
the palettes and cluts down the pipeline, together with the standard
data buffers. This is, by the way, what Xine does, and seems to work
for them, but GStreamer seems to have a fixed set of events, and I
suppose there's a good reason for that too.
Any clues how I can solve this problem cleanly?
P. S. By the way, my DXR3 plugins are working nicely for video and audio
(both PCM, analog and digital, and direct AC3 output to the decoder are
supported) with very accurate hardware based synchronization. During
the last days, I've already watched several complete films, with rock
solid playback (using a hacked up python script as main application,
thanks David!) and no visible sync problems. I'm ready to release the
plugins as LGPL, and contribute them to GStreamer. What would be the
steps to have them integrated? +
Martin Soto <soto at informatik.uni-kl.de>
Universität Kaiserslautern - AG Software Engineering
More information about the gstreamer-devel