Original commit message from CVS:
* gst/gst-types.defs:
Added GstStaticCaps and GstStaticPadTemplate, using the new GType.
* gst/gst.defs:
Doesn't return a const anymore.
* gst/gstelementfactory.override:
Wrapped gst_element_factory_get_static_pad_templates()
Original commit message from CVS:
2005-12-19 Martin Soto <martinsoto@users.sourceforge.net>
* gst/gstbus.override (_wrap_gst_bus_add_watch): This function
incorrectly returned self, which was causing the message bus to
get prematurely destroyed by the Python interpreter. Now returns
Py_None.
Original commit message from CVS:
* gst/gst.override:
ignore gst_plugin_get_module, GModule aren't wrapped in
pygtk anyway.
wrap gst_clock_get_calibration
* gst/gstbus.override:
Ignore the following:
gst_bus_create_watch, since GSource aren't wrapped in pygtk
gst_bus_sync_signal_handler and gst_bus_async_signal_func since
these functions are used by the default bus handler anyway.
* gst/gstevent.override:
wrapped gst_event_parse_buffer_size
* gst/libs.defs:
Replace all guint8* for gst_dp_ functions by gchar * since they
are the same, but at least get generated properly by the code
generator.
Original commit message from CVS:
* gst/gst.defs:
gst_object_sink is a method of GstObject
const of enums is a stupidity (_element_make_from_uri)
* gst/gst.override:
Ignore more functions that have no place in bindings or have better
python equivalents (list filtering for example)
Wrapped gst_version() and gst_type_find_factory_get_list()
* gst/gststructure.override:
More ignores
* gst/gsttaglist.override:
ignore gst_is_tag_list.
* gst/interfaces.override:
wrap gst_mixer_options_get_values()
Original commit message from CVS:
2005-12-16 Andy Wingo <wingo@pobox.com>
* gst/gstpad.override (handle_event_function_exception)
(handle_chain_function_exception): GCC told me I needed braces
here.
Original commit message from CVS:
* examples/gstfile.py:
Moved the Discoverer class to gst.extend
Now works asynchronous... bl**dy fast :)
* gst/extend/Makefile.am:
* gst/extend/discoverer.py:
Discoverer has landed in extend and is now asynchronous.
It emits a 'discovered' signal when it has finished.
Original commit message from CVS:
* gst/arg-types.py:
This covers for the codegenerator not being able to handle
(unsigned) int64 as parameters and return values.
Original commit message from CVS:
* gst/arg-types.py:
Added (reverse_)wrapper for GBoxed and GstMiniObject
* gst/gst.defs:
push_event() and chain() takes the reference on the
MiniObject.
Original commit message from CVS:
* gst/gst.defs: (alloc_buffer_and_set_caps):
Wrapped last pre-0.10 API update (I hope...)
* examples/gstfile.py: (Discoverer._new_decoded_pad_cb):
Fix for fractional framerates.
Original commit message from CVS:
2005-12-01 Andy Wingo <wingo@pobox.com>
* configure.ac (GST_PLUGINS_BASE_LIBS): Check for
gstreamer-plugins-base.pc, the one that has the interfaces etc.
* gst/Makefile.am (interfaces_la_CFLAGS, interfaces_la_LDFLAGS):
PLUGINS_BASE, not BASE.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
gst-interfaces-0.9.pc is no more, update to new use
* testsuite/test_element.py:
Fix for queue modification
Original commit message from CVS:
* gst/gst.override:
Ignore all *_full functions/methods
* gst/gstbus.override:
Wrapper for gst_bus_add_signal_watch that now takes an optional
priority argument
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
API updates
* gst/pygstvalue.c: (pygst_value_as_pyobject),
(pygst_value_from_pyobject):
Fixes for gst_value_array and GST_FOURCC_FORMAT
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
Update for latest API changes
Still have to make GstSegment properly wrappable (GBoxed?)
Original commit message from CVS:
* gst/gst.defs:
Keep refcount for the message of gst_bus_post()
* gst/gststructure.override:
Don't free a structure on dealloc (the parent does that)
* testsuite/test_message.py:
Proper testing of bus functionnality with a mainloop
Original commit message from CVS:
* gst/gstmodule.c: (init_gst):
Added GST_TAG_* string constants
* gst/gstpad.override:
Make probe handler return TRUE if the Python callback doesn't return
anything.
* gst/gsttaglist.override:
Cleaned up gst.TagList, works as a dictionnary.
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
Added new function gst.TIME_ARGS which returns the string
representation of a GstClockTime
Original commit message from CVS:
* gst/gstpad.override:
Use proper GValue <-> MiniObject conversion function
* examples/Makefile.am:
* examples/sinkelement.py:
New example showing how to create a sink element in python.
Original commit message from CVS:
* gst/gstelement.override:
added wrapper for gst_element_query_duration()
* gst/gstpad.override:
added wrapper for gst_pad_query_duration()
Also converted some functions using fixed size PyList to use
PyList_SetItem instead of PyList_Append
Closes bug #320357
Original commit message from CVS:
* gst/gst-types.defs:
Updated modification from API
* gst/gstquery.override:
Added gst_query_parse_duration override
* examples/gstfile.py:
Now use duration query
Cleanups
Original commit message from CVS:
* gst/gstelement.override:
* gst/pygstexception.c:
* gst/pygstexception.h:
* testsuite/test_element.py:
add gst.QueryError and use it
* testsuite/test_pad.py:
add some tests that show comparison between two different
Python objects wrapping the same MiniObject
Original commit message from CVS:
* gst/gst.override:
* gst/pygstminiobject.c:
remove the hash table for miniobjects - since we can't get notified
when they get destroyed, we shouldn't be caching pointer mappings
* testsuite/test_pad.py:
update refcount tests because mini objects now have a ref for
each time an object is made for it
Original commit message from CVS:
* gst/gst.defs:
Cleaned-up symbols which still had the gst_ prefix
* gst/gst.override:
add gst_deinit to the ignore list
Original commit message from CVS:
2005-10-20 Andy Wingo <wingo@pobox.com>
* gst/gstbin.override (_wrap_gst_bin_get_by_name): Dude, like
totally don't unref NULL objects.
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
Update (hopefully) final API modifications
* gst/gstelement.override:
* gst/gstpad.override:
* gst/gstquery.override:
Updated position querying/parsing
Removed useless debug line
* testsuite/test_element.py:
Updated test for new API
Original commit message from CVS:
* gst/gstmessage.override:
Added wrappers for parsing CLOCK_PROVIDE, CLOCK_LOST, NEW_CLOCK and
DURATION messages
Fixed a few Tuple constructors
Last commit from me unless huge breakage, got better things to do now
(and it doesn't involve 'my little pony' comics) !
Original commit message from CVS:
* gst/gst.defs:
* gst/gst-types.defs:
Updated API
* gst/gstelement.override:
_wrap_gst_element_get_state: made wrapper behave more like codegen-ed
functions.
It now only takes an int or long as optional timeout argument, and if
there's no argument it will use GST_CLOCK_TIME_NONE
* testsuite/test_bin.py:
* testsuite/test_event.py:
* testsuite/test_ghostpad.py:
* testsuite/test_pipeline.py:
Updated testsuites for element.get_state() modifications
Added event parsing checks
Commented out test_ghostpad.PipeTest.testProbedLink til I find out why
"while self._handoffs < 10: pass" doesn't exit although it reaches
values way over 10
Original commit message from CVS:
* gst/gst.defs:
* gst/gstmessage.override:
update for latest API changes
* gst/gstelement.override:
use GstClockTime for get_state
* testsuite/test_pad.py:
add logging
Original commit message from CVS:
2005-10-18 Andy Wingo <wingo@pobox.com>
* gst/gstmessage.override (_wrap_gst_message_tp_repr): Add a repr
for messages.
Original commit message from CVS:
* gst/gst-types.defs:
Added GstDate boxed type
* gst/gst.override:
Added setters and getters for GstDate's day/month/year
Added tp_repr for GstDate
Original commit message from CVS:
* gst/gst.defs:
Update for new API
* gst/gst.override:
Added unreffing for gst.Registry.get_plugin_list and .get_feature_list
* testsuite/common.py:
removed crude hack for gst.Registry and gst.Plugin
* testsuite/test_interface.py:
* testsuite/test_caps.py:
* testsuite/test_struct.py:
* testsuite/test_xml.py:
converted to using common's TestCase class
* testsuite/test_event.py:
Enabled/fixed previously non working test
* testsuite/test_registry.py:
Now uses common's TestCase class,
added special case setUp()
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
Updated to new API
* gst/gstbus.override:
bus.add_watch() now uses gst_bus_add_watch_full() using
pyg_destroy_notify as the DestroyNotify function, thus enabling
proper python garbage collection.
* testsuite/common.py:
Let's check refcounting of ALL gst.Object
* testsuite/test_bin.py:
Added debug
* testsuite/test_bus.py:
Added "message" signal version of test
Original commit message from CVS:
Reviewed by Edward Hervey <edward@fluendo.com>
* gst/gst.override:
* gst/gstevent.override:
* gst/gstpad.override:
* gst/gstquery.override:
Use PyList_SetItem() instead of PyList_Append() for faster list creation
and proper python refcounting.
Closes bug #318684
Original commit message from CVS:
Reviewed by Edward Hervey <edward@fluendo.com>
* gst/gstobject.override: (_wrap_gst_object_tp_traverse):
Py_VISIT() might make code cleaner... but it doesn't work with
python < 2.4
Closes bug #318692
Original commit message from CVS:
2005-10-12 Andy Wingo <wingo@pobox.com>
* gst/gst-extrafuncs.defs (flags, set_flag, unset_flag): Fix for
core updates.
* gst/gstmodule.c (init_gst): Give a better error message.
(also fix the changelog)
Original commit message from CVS:
2005-10-12 Julien MOUTTE <julien@moutte.net>
* gst/gst-argtypes.c:
* gst/pygstminiobject.c:
* testsuite/testhelpermodule.c: Reordering header inclusion
order to
fix build on my machine.
Original commit message from CVS:
* gst/gst.defs:
* gst/gstmessage.override:
fix for pending state being added to state message
* testsuite/test_buffer.py:
* testsuite/test_pipeline.py:
update
Original commit message from CVS:
2005-10-07 Andy Wingo <wingo@pobox.com>
* gst/gstelement.override (_wrap_gst_element_get_state): Drop the
python lock while in get_state.
* gst/__init__.py: Check the right module (i.e., the same check as
pygtk does).
Original commit message from CVS:
* gst/pygstiterator.c:
Unref the return value, since the iterator refs them.
* testsuite/test_iterator.py:
Added more test cases, re-enabled gcverify now the bug is fixed
* gst/pygstminiobject.c: (pygstminiobject_register_wrapper),
(pygstminiobject_new), (pygstminiobject_dealloc):
Comments to better track the creation/destruction of PyGstMiniObject
Fixed naming (gst.GstMiniObject => gst.MiniObject)
* testsuite/python.supp:
Updated python specific valgrind suppressions to latest version and
added x86_64 cases
* testsuite/gstpython.supp:
Series of suppressions for errors/leaks not solvable within gst-python
* testsuite/Makefile.am:
Added gstpython.supp
Original commit message from CVS:
* gst/pygstminiobject.c: (pygstminiobject_register_wrapper),
(pygstminiobject_new), (pygstminiobject_dealloc):
Comments to better track the creation/destruction of PyGstMiniObject
Fixed naming (gst.GstMiniObject => gst.MiniObject)
* testsuite/python.supp:
Updated python specific valgrind suppressions to latest version and
added x86_64 cases
* testsuite/gstpython.supp:
Series of suppressions for errors/leaks not solvable within gst-python
* testsuite/Makefile.am:
Added gstpython.supp
Original commit message from CVS:
* gst/common.h:
* gst/gstmodule.c: (init_gst):
* gst/pygstiterator.c: (pygst_iterator_iter_next),
(pygst_iterator_next), (pygst_iterator_push),
(pygst_iterator_resync):
Even more bored tonight: Implement next/resync/push.
Register type so we can call methods and so.
Original commit message from CVS:
* gst/gstbuffer.override: (_wrap_gst_buffer__get_caps):
Proper wrapping of the GstBuffer.caps attribute
* gst/gstmodule.c: (init_gst):
* gst/pygstminiobject.c: (pygstminiobject_register_class):
gst-debug initialisation should happen before anything else if we
want the debugging functions to work.
Original commit message from CVS:
* configure.ac:
need at least 2.6.3, because that contains the code that
converts signal closure arguments to the correct Gst
types
* gst/gstpad.override:
log name of probe handlers we call
* testsuite/test_pad.py:
fix up tests; use TestCase base class methods
Original commit message from CVS:
* gst/gst.override:
accurate line numbers for logging
* testsuite/common.py:
log when TestCase.setUp() and .tearDown() get called
* testsuite/test_ghostpad.py:
rework
Original commit message from CVS:
* gst/gst.defs:
gst.Bin constructor can take no arguments
* testsuite/test_bin.py:
add constructor tests
* testsuite/test_element.py:
add same link test with no pads
Original commit message from CVS:
* gst/gstobject.override:
don't try and unref objects that are already finalizing
* gst/gstpad.override:
fix up the set_chainfunc method
* testsuite/common.py:
* testsuite/test_pad.py:
add linked/unlinked tests with no/true/false bufferprobes
Original commit message from CVS:
* gst/gstbuffer.override:
a buffer is not a boxed
* gst/gstobject.override:
use Py_VISIT for cleaner and more pythonic code
do not visit GstObjects that still have a parent
Original commit message from CVS:
* codegen/argtypes.py:
* codegen/codegen.py:
* codegen/definitions.py:
* gst/arg-types.py:
Added 'keeprefcount' argument for function/method parameters in order to
cope with functions/methods that decrement the refcount of the given
parameter
* gst/gst.defs:
Added 'keeprefcount' for buffer argument of gst_pad_push() wrapper.
Original commit message from CVS:
* gst/__init__.py:
don't import gobject
revert ltihooks change from Johan - if it throws an exception
there is a bug and I want to fix it
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/extend/Makefile.am:
* gst/extend/__init__.py:
* gst/extend/pygobject.py:
* gst/extend/utils.py:
move over some of the extend stuff that I want to use right now
Original commit message from CVS:
* gst/gstpad.override:
Removed overriding of gst_caps_get_negotiated_caps, the codegenerator
handles it much better (hint:don't copy)
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
* gst/gstbin.override:
deprecate add_many/remove_many, fold into add/remove
* gst/gstmodule.c: (init_gst):
add AddError and RemoveError
* testsuite/Makefile.am:
remove fatal warnings, until we can wrap log handlers
and catch our expected add/remove errors
* testsuite/test_bin.py:
add tests for new add/remove semantics
* testsuite/test_pad.py:
* testsuite/test_pipeline.py:
fix up
Original commit message from CVS:
* gst/gst.override:
* gst/gstlibs.override:
Proper wrapping of GstController
* examples/Makefile.am:
* examples/audio-controller.py:
Example to show how to use gst.Controller
Original commit message from CVS:
* gst/gst.defs:
* gst/gstbus.override:
* testsuite/test_bus.py:
* testsuite/test_pipeline.py:
Updated definitions, wrapper and testsuite for changes in GstBus API
Original commit message from CVS:
* gst/gst.defs:
* gst/libs.defs:
Updated definitions
* gst/gst.override:
* gst/gststructure.override:
Added functions not to be used from python, or that have better
existing equivalents, to the ignore list.
Original commit message from CVS:
* gst/gst.override:
* gst/gstbin.override:
* gst/gstbuffer.override:
* gst/gstevent.override:
Remove dead code
* gst/gstelement.override:
Remove dead code and re-enable link with filtering and _send_event()
Original commit message from CVS:
* gst/gst.defs:
parse_launch also owns the return ref
* gst/gstbin.override:
fix a leak in get_by_name()
* testsuite/common.py:
loop when garbage collecting; necessary when deleting, say,
a pipeline, that contains elements, to ensure the elements
also get collected
* testsuite/test_element.py:
* testsuite/test_pipeline.py:
test for garbage collection
Original commit message from CVS:
* gst/Makefile.am:
* gst/common.h:
* gst/pygstobject.c: (pygstobject_sink), (pygstobject_new),
(pygst_object_unref):
* gst/pygstobject.h:
* gst/gstmodule.c: (init_gst):
add/move some code to handle wrapping/refcounting of possible
GstObject
* codegen/argtypes.py:
* gst/gstbin.override:
* gst/gstbus.override:
* gst/gstelement.override:
* gst/gstpad.override:
* gst/interfaces.override:
use this reffing code
* gst/gst-types.defs:
* gst/gst.override:
add a __gstrefcount__ field to GstObject types
add tp_traverse, tp_dealloc and tp_clear, so we handle refcounting
properly related to garbage collection
* testsuite/test_element.py:
* testsuite/test_pad.py:
add more tests, add some refcount checks
Original commit message from CVS:
* gst/__init__.py:
require pygtk 2.0 when importing gst
it only works with 2.0, and it sets up the path correctly
when running against a pygtk compiled into a different prefix
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
add another registry method
* testsuite/Makefile.am:
add check-verbose
* testsuite/runtests.py:
check for VERBOSE env var
* testsuite/test_pad.py:
refactor a test and add one more for probes
Original commit message from CVS:
* gst/gstbuffer.override:
Increment the refcount when fetching GST_BUFFER_CAPS.
Python gurus, please fix if there's a better way this should be done.
Original commit message from CVS:
2005-09-21 Andy Wingo <wingo@pobox.com>
* gst/gst.defs: Update for probe removal api
* gst/gstpad.override (_wrap_gst_pad_remove_data_probe)
(_wrap_gst_pad_remove_event_probe)
(_wrap_gst_pad_remove_buffer_probe): Removed, upstream does the
right thing now.
(_wrap_gst_pad_add_data_probe, _wrap_gst_pad_add_event_probe)
(_wrap_gst_pad_add_buffer_probe): Indent.
Original commit message from CVS:
* gst/gst.defs:
* gst/gststructure.override:
* testsuite/test_struct.py:
add a .keys() method to gst.Structure, plus test
Original commit message from CVS:
2005-09-16 Andy Wingo <wingo@pobox.com>
* gst/gst.defs (registry_get_default): Renamed from
gst_registry_get_default.
Original commit message from CVS:
2005-09-15 Andy Wingo <wingo@pobox.com>
* gst/gst-types.defs:
* gst/gst.defs: Update for registry/plugin/pluginfeature API changes.
Original commit message from CVS:
* examples/vumeter.py:
update for property name change
* gst/gst.override:
* testsuite/test_element.py:
actually log on objects, yay
Original commit message from CVS:
* gst/gst.defs:
add gst.ghost_pad_new_notarget
* gst/gstpad.override:
change wrap_gst_pad_new a little and add logging
* testsuite/test_pad.py:
add tests for constructors of gst.Pad
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gstbuffer.override:
* gst/pygstminiobject.c: (pygstminiobject_new_noref):
* testsuite/test_buffer.py:
add a .data to buffers; it feels more natural to me than doing
str(buffer) compared to the other properties.
make sub_buffer test for data
Original commit message from CVS:
fix a race condition in test_buffer.py
* gst/gst.override:
* gst/gstmodule.c: (init_gst):
add a pygst debug category for bindings themselves to use
* gst/gstbuffer.override:
add a repr method; add some assertions
* gst/pygstminiobject.c: (pygst_miniobject_init),
(pygstminiobject_register_wrapper), (pygstminiobject_new),
(pygstminiobject_new_noref), (pygstminiobject_dealloc),
(pygstminiobject_clear):
make the miniobjs hash private with an underscore
add debugging for inserting/removal in hash
fix pygstminiobject_clear - it also needs to remove
from the global hash. Fixes a nasty race problem in
test_buffer
* testsuite/test_buffer.py:
expand on the subbuffer test
Original commit message from CVS:
* gst/__init__.py:
del ltihooks properly; fixes loading of testhelper in testsuite
* gst/gst.defs:
wrap link_filtered
Original commit message from CVS:
2005-08-19 Andy Wingo <wingo@pobox.com>
* gst/interfaces.defs (MixerTrack): MixerTrack is a GObject. How
did this ever work before?