This speeds up rendering a fair bit by not requiring colorspace
conversion, whether there is anything to overlay or not.
The blending code was nicked from textoverlay. I would think
this might be a helpful thing to put in, say, libgstvideo at
some point.
https://bugzilla.gnome.org/show_bug.cgi?id=660528
Sync both pads by waiting in the kate chain function.
Do not reset our internal segment from segment updates, in order
to be able to map video running time to kate running time, to
give libtiger the timestamp it expects. This allows us to use
running time to sync to video, which is The Right Way.
https://bugzilla.gnome.org/show_bug.cgi?id=600929
Don't leak source caps. Use GST_PTR_FORMAT to log caps, so
we don't need to leak strings from gst_caps_to_string().
No need to use GST_DEBUG_FUNCPTR for vfuncs where the base
class will never look them up (like property getters/setters).
Don't use g_return_*_if_fail() for things that aren't directly
programming errors (by the application developer).
Fixes kate unit test under valgrind.
When Totem switches streams, tiger will be reset, and start receiving
buffers from the middle of the stream, without being sent headers.
If this happens, try to get headers from the caps.
https://bugzilla.gnome.org/show_bug.cgi?id=638004
katedec: Kate decoder (text only)
kateenc: Kate encoder (text and DVD SPU only)
katetag: Kate tagger
kateparse: Kate parser
tiger: Kate renderer using the Tiger rendering library
Fixes#525743.