gstreamer/docs/design/part-TODO.txt
Wim Taymans 8d46970ed8 Add type to quark and type to string conversions.
Original commit message from CVS:
* docs/design/part-TODO.txt:
* gst/gstformat.c: (_gst_format_initialize), (gst_format_get_name),
(gst_format_to_quark), (gst_format_register):
* gst/gstformat.h:
* gst/gstquery.c: (_gst_query_initialize),
(gst_query_type_get_name), (gst_query_type_to_quark),
(gst_query_type_register):
* gst/gstquery.h:
Add type to quark and type to string conversions.
2005-11-19 18:57:00 +00:00

56 lines
1.9 KiB
Text

API/ABI
-------
- implement return values from events in addition to the gboolean. This should be
done by making the event contain a GstStructure with input/output values, similar
to GstQuery. A typical use case is performing a non-accurate seek to a keyframe,
after the seek you want to get the new stream time that will actually be used to
update the slider bar.
- convert framerate to GstFraction in GstCaps.
- make it possible to seek on other formats than bytes in basesrc.
- GstEvent, GstMessage register like GstFormat or GstQuery.
- unblocking while seeking. gst_element_flush_pads (GstElement, gboolean);
- make GstCapsFlags instead of the #define for GST_CAPS_FLAGS_ANY.
- query POSITION/DURATION return accuracy. Just a flag or accuracy percentage.
- add some sort of time/frame stepping functionality, either with a flag on the seek
event or some new seek event type. The idea would be to operate on the current
playback position instead of the current configured segment when doing the seek.
Idea is that frame stepping forwards can be done in the sinks, ie, just dropping
N frames/time, sending more complicated queries upstream which can ideally handle
those cases more efficiently too.
- GstClockFlags should use the gstobject flags field instead of inventing its own.
- Add gstsegment.[ch].
IMPLEMENTATION
--------------
- implement latency calculation for live sources.
- implement master/slave clocks.
- implement QOS.
- implement BUFFERSIZE.
DESIGN
------
- unlinking pads in the PAUSED state needs to make sure the stream thread is not
executing code. Can this be done with a flush to unlock all downstream chain
functions? Do we do this automatically or let the app handle this?
- when a pipeline with a live source goes to PAUSED again, a sample is prerolled
in the sinks. This sample should be discarded, possibly with a flush event
started from the source.