gstreamer/docs/design/part-TODO.txt
Wim Taymans 88be8ba00f docs/design/: Add doc about synchronisation
Original commit message from CVS:
* docs/design/Makefile.am:
* docs/design/part-synchronisation.txt:
Add doc about synchronisation
* docs/design/draft-latency.txt:
* docs/design/part-TODO.txt:
* docs/design/part-clocks.txt:
* docs/design/part-events.txt:
* docs/design/part-gstbus.txt:
* docs/design/part-gstpipeline.txt:
* docs/design/part-live-source.txt:
* docs/design/part-messages.txt:
* docs/design/part-overview.txt:
* docs/design/part-streams.txt:
* docs/design/part-trickmodes.txt:
Documentation updates.
2007-03-07 17:13:17 +00:00

43 lines
1.4 KiB
Plaintext

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.
- GstEvent, GstMessage register like GstFormat or GstQuery.
- 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.
- use | instead of + as divider in serialization of Flags
(gstvalue/gststructure)
IMPLEMENTATION
--------------
- implement more QOS, see part-qos.txt.
- implement BUFFERSIZE.
- implement pad_block with probes.
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?