Original commit message from CVS:
Reviewed by: Tim-Philipp Müller <tim at centricular dot net>
* gst/autoplug/gstspider.c: (gst_spider_identity_unplug),
(gst_spider_create_and_plug):
* gst/elements/gstbufferstore.c: (gst_buffer_store_add_buffer_func):
Do not silently discard return values of g_list_delete_link()
and g_list_append(). This would trigger gcc4 warnings that
are treated as errors in CVS builds (fixes: #324260). Also
ifdef out unused function while we are at it.
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_class_init),
(gst_spider_identity_plug):
add a template for spider's sink
* gst/gst.c: (gst_register_core_elements):
queue's rank should be NULL, we don't want spider to add it.
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_link_sometimes),
(gst_spider_identity_plug):
improve debugging messages
* gst/gstbin.c: (gst_bin_remove_func):
make sure the state_change function is only called with simple state
transitions
Original commit message from CVS:
* gst/autoplug/gstspider.c (gst_spider_request_new_pad): Fix typo
in debug message.
(gst_spider_create_and_plug): Improve debug message.
General: Replace while loops which iterates over GLists with for
loops. Which are much cleaner, improves readability, especially
for gst_spider_identity_plug
Original commit message from CVS:
* gst/autoplug/gstspider.c: (gst_spider_link_add):
don't ref the element, adding already reffed it. And we didn't unref
it later anyway... (huge memleak when you used many spider elements)
* gst/gstelement.c: (gst_element_base_class_finalize):
* gst/gstelementfactory.c: (gst_element_factory_cleanup),
(gst_element_register):
* gst/gsturi.c: (gst_element_make_from_uri):
use gst_object_(un)ref instead of g_object(un)ref
Original commit message from CVS:
Fix some memleaks:
* gst/autoplug/gstspider.c: (gst_spider_request_new_pad),
(gst_spider_plug_from_srcpad):
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_link):
Original commit message from CVS:
GST_DEBUG reorganization
This is a big diff (ca 450k), containing loads of stuff:
- gstinfo.[ch] complete rewrite
- changing of all GST_DEBUG messages to reflect that change
- reorganization of subsystem disabling
- addition of gstconfig.h.in so we can track the disablings
- <gst/gst.h> does not include <unistd.h> and <config.h> anymore
- documentation updated for gstinfo stuff (build the docs yourself to know what changed)
- bugfixes for making of the docs (files from CVS are not deleted anymore
- testsuite for debugging changes in testsuite/debug
expect breakage
Original commit message from CVS:
some minor improvements:
- better debugging output
- don't set state to paused when plugging anymore
- bugfix: set typefind caps on srcpad, not sinkpad
- remove unnecessary check for right caps
Original commit message from CVS:
general fixes:
- changed newly added locked_state API to work like GStreamer does
- added gst_element_sync_state_with_parent function
- revert: pad linking does not require non-playing state
- updated spider and pipeline parsing to link elements in playing state
- bugfix: pads are now activated when added to a playing element (broke above change)
Original commit message from CVS:
first phase of spider cleanup
- get rid of the buffer cache for type finding
- do type finding within spider identity instead of in seperate element
- currently doing type finding with the first buffer only. will eventually merge buffer until there is "enough" data to typefind with
- spider now only has 1 sink instead of many. I don't believe it would be possible to mux with spider anyway
- if type finding fails, gst_element_error is called. Its up to the app to catch the error signal and stop the pipeline
Original commit message from CVS:
the big autoplag coverup plus some further cleaning.
Can someone tell me if this change violates some sort of API stability, or
was this meant to be an internal function anyway (and thus should it be
somehow removed from the .h) ?
Original commit message from CVS:
- Make the return GList of gst_element_get_pad_list as const
- Pad scheduler refactoring
- Remove gst_pad_set/unset_scheduler as it's not needed
- Reimplement gst_pad_get_scheduler using the parent scheduler
- Remove gst_pad_peek as it cannot work reliably
- Remove the pad bufpen, replace with scheduler private gpointer
- Make queue use the new _get_scheduler implementation
- Remove _pad_unset_scheduler from GstScheduler
- Remove LOOP_SEEK mode from aggregator
- Other fixes for API changes.
Original commit message from CVS:
Totally rewritten registry handling.
- move the registry save/load code into a gstregistry subclass, this
will make it possible to use other registries (flat file, web based,
RDBMS type, etc..)
- a simple GMarkup xml registry is implemented
- use standard statically linked plugins for core elements.
- GstPlugin has a very well defined set of functions now
A little bytestream hack..
Added more info to -inspect.
Some more debugging info for clocking.
Small cleanups
I use ./gst-register --gst-plugin-path=/opt/src/sourceforge/gst-plugins/gst-libs:/opt/src/sourceforge/gst-plugins/
to register core and gst-plugins now.
Original commit message from CVS:
* a hack to work around intltool's brokenness
* a current check for mpeg2dec
* details->klass reorganizations
* an element browser that uses details->klass
* separated cdxa parse out from the avi directory
Original commit message from CVS:
commit to make gstreamer follow the gtk function/macro naming conventions:
GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE
and the same for *factory and typefind.
Original commit message from CVS:
* new parser that uses flex and bison
- doesn't do dynamic pipelines yet...
* added GErrors to the gst_parse_launch[v] api
* added --gst-mask-help command line option
* fixed -o option for gst-launch
* GstElement api change:
- gst_element_get_pad
- gst_element_get_request_pad, gst_element_get_static_pad
- gst_element_get_compatible_pad
- gst_element_get_compatible_static_pad, gst_element_get_compatible_request_pad
- gst_element_[dis]connect -> gst_element_[dis]connect_pads
- gst_element_[dis]connect_elements -> gst_element_[dis]connect
* manual update
* example, tool, and doc updates for the api changes
- no more plugin docs in the core docs, plugins require a more
extensive doc system
Original commit message from CVS:
* removal of //-style comments
* don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct,
and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory.
Original commit message from CVS:
* s/gst_element_install_std_props/gst_element_class_install_std_props/ -- it just makes more sense that way
* added jack element, doesn't quite work right yet but i didn't want to lose the work -- it does build, register,
and attempt to run though
* imposed some restrictions on the naming of request pads to better allow for reverse parsing
* added '%s' to reverse parsing
* added new bin flag to indicate that it is self-iterating, and some lame code in gst-launch to test it out
* fixen on launch-gui
* added pkg-config stuff for the editor's libs
Original commit message from CVS:
* document gst_caps_debug
* change gst_caps_debug to accept a label argument, assists greatly
in debugging capsnego
* better names from gst_object_name_default
* some more debugging in gstpad.c
* require caps to match padtemplates on both side of a connection
* gstspider uses default naming so that names are globally unique
* moved filesrc offset arg to the top -- show up first in a prop list.
in the future we should have flags on props indicating which ones
it might be interesting for the end-user to change.
* initialize cothreads in the more standard way, and provide some more debugging
Original commit message from CVS:
* changes to spider:
* add padtemplates so the connect functions can connect two request-pad
elements
* add a hack in gstelement.c. please look at this, Company, and see how
we can get around this
* add backwards caps-propagation support in identity, int2float, float2int,
adder, speed, volume
Original commit message from CVS:
major rewrite of the spider.
Now uses GstSpiderConnection to track current connections and remember the way they're plugged.
Advantages of this approach:
- function prototypes are now much cleaner.
- Allow event propagation (EOS) to elements that are not connected but plugged.
- Allow deconstruction of plugged pipes. (not implemented)
Disadvantage:
- I screwed up naming (always get src and sink the wrong way). It's very inconsistent in the gstspider.[ch] files
- a little more time and memory are needed to manage the structs
Original commit message from CVS:
- use autoplugging instead of predefined way on sometimes pads
- exchange plugtype with factories in the spider
- revamp the spider, now messier than before...
- bugfixing
- style corrections