mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-19 00:01:23 +00:00
d2c02bcece
Original commit message from CVS: state_changed
107 lines
3.3 KiB
Text
107 lines
3.3 KiB
Text
|
|
|
|
API:
|
|
|
|
- replace object/structure set/get macros with actual functions.
|
|
|
|
- events should all use GstStructure
|
|
|
|
- reorganize headers (split app headers vs plugin headers maybe)
|
|
|
|
- make GstPadLinkReturn internal (to either plugins+core or just core)
|
|
and return gboolean to apps.
|
|
|
|
- rewrite GstIndex (it's gross)
|
|
|
|
- gst_init() et al. need to work correctly when called multiple times
|
|
and from libraries, etc.
|
|
|
|
- gst_pad_get_pad_template_caps -> gst_pad_get_template_caps()
|
|
|
|
- add ways for autopluggers to manage negotiation of their children.
|
|
This would allow autopluggers to no longer need helper identities.
|
|
|
|
- remove float support from dparams
|
|
|
|
- dparams: should be converted into some kind of special pad and
|
|
object property combination.
|
|
|
|
- remove gst_element_yield()
|
|
|
|
- read/write locks on buffers
|
|
|
|
- be able to send events to unlinked pads (bug #114442)
|
|
|
|
- caps should have a flag on fields to indicate that the field is optional
|
|
|
|
- remove gst_pad_select() and add gst_pad_pull_many(), which pulls one
|
|
buffer from one of many pads
|
|
|
|
- deprecate gst_buffer_merge() and replace with a function that takes
|
|
ownership of the buffers. (bug #136408)
|
|
|
|
- fakesrc handoff should be changed to return a GstData * or carry a
|
|
GstData **, wo the user can provide own buffers and events.
|
|
|
|
- remove GST_OBJECT_DESTROYED()
|
|
|
|
- fix plugin code to load plugins with RTLD_LOCAL
|
|
|
|
- don't install gstmarshal.h
|
|
|
|
- make GstPad and friends a real class heirarchy
|
|
|
|
- make GstBuffer/GstData a real class heirarchy, although maybe not
|
|
as a subclass of GObject.
|
|
|
|
- remove unnecessary headers from gst.h (gstqueue.h in particular)
|
|
|
|
caps:
|
|
|
|
(Company:)
|
|
|
|
"An idea I had once was to force registration of mimetypes and then
|
|
only allow caps with a registered mimetype - like it's done now with caps.
|
|
You could then add functions to those registrations like
|
|
- gchar *get_human_readable_string (caps);
|
|
should be kinda selfexplanatory. Would return stuff like "16bit signed
|
|
integer audio", "MPEG2 video" or "video format in RGB colorspace" (for
|
|
unfixed RGB)
|
|
- GstCaps *default_fixate (const GstCaps *caps);
|
|
A default fixation function, so we don't fixate to minimum integer
|
|
anymore but have the ability to fixate to 320x240 for video or 44100 for
|
|
audio rates
|
|
- gboolean validate (const GstCaps *caps);
|
|
check if the given caps are ok for this mimetype - debugging only function
|
|
I'd _really_ like to have - especially during gst_register.
|
|
|
|
But that's 0.10 material."
|
|
|
|
negotiation:
|
|
|
|
- autopluggers would be easier to write if there was a core method
|
|
to do what plugidentities do.
|
|
|
|
- there should be a way to hook into negotiation and be able to do something if
|
|
negotiation fails. Autopluggers would need that for exchanging elements when
|
|
they can't link.
|
|
|
|
bugs with interesting info:
|
|
|
|
XML descriptions of plugin information:
|
|
http://bugzilla.gnome.org/show_bug.cgi?id=114216
|
|
|
|
|
|
object hierarchy:
|
|
- state_change in GstElementClass should be renamed to state_changed, since
|
|
it's a signal triggered after state has changed
|
|
|
|
|
|
- a method for elements to know when downstream elements are ignoring
|
|
the data stream. This would allow automatic shutoff of pipelines
|
|
whose processing is being dumped.
|
|
|
|
- object properties:
|
|
- all bitrates should be bits per second, since they're specified
|
|
as integers
|
|
|