Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/gstmodule.c: (init_gst):
gst.gst_version uses the result of gst_version() rather than use
the GST_VERSION_* hardcoded values.
Closes#331616
Original commit message from CVS:
2006-02-10 Andy Wingo <wingo@pobox.com>
* gst/gst.defs (disable_sync_message_emission)
(enable_sync_message_emission): Wrap new functions from GStreamer
CVS.
* configure.ac (GST_REQ): Require GStreamer 0.10.3.1.
* examples/play.py: A bit of refactoring. Make use of the
sync-message signals. Reacts to events on the bus. Keeps aspect
ratio. Better scrubbing, play/pause button instead of
play+pause+stop. Not a bad player now, although the code still
lacks cleanliness.
Original commit message from CVS:
* gst/gst.defs:
When using gst.Element.send_event() and gst.Pad.send_event() we keep
a refcount on the sent event.
* testsuite/test_event.py:
Uncomment test to prove above fix
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
Link against Gst Data protocol libraries.
* gst/__init__.py:
Restore dlopenflags after importing gst.
Closes#329110
Original commit message from CVS:
* gst/gststructure.override: (_wrap_gst_structure_set_value):
Properly check for gstvalue data types. This makes it possible to
set fields with fractions.
* testsuite/test_caps.py:
* testsuite/test_struct.py:
Test for above modifications
Original commit message from CVS:
* gst/base.defs:
Use gchar* instead of guint8* for GstAdapter
Added virtual methods definitions for base classes.
Still have to override some functions, and figure
out how to properly add reverse wrappers to the codegenerator.
Original commit message from CVS:
First step at wrapping base elements in gst-python
* configure.ac:
Commenting out weird debugging statement dating from gst-python's
and which causes problems with gstbasesrc.h anonymous union.
* gst/Makefile.am:
Added base.defs
* gst/base.defs:
New base elements definition files
* gst/gst.defs:
* gst/gst.override:
Add base elements
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