Original commit message from CVS:
* gst/__init__.py: Implement multiplication, divison and float
coercing for fractions.
* testsuite/test_fraction.py:
Add fraction tests
Original commit message from CVS:
* gst/gsttaglist.override (_wrap_gst_tag_list_contains):
* testsuite/test_taglist.py (TestTagList.testKeys):
Implement sq_contains and add tests for gst.TagList.
Original commit message from CVS:
* gst/__init__.py:
Added __eq__ method to fractions so we can check if two fractions are
equal.
* gst/pygstvalue.c: (my_gcd), (pygst_value_from_pyobject):
Attempt to simplify gst.Fraction before filling in a GValue.
Fixes#381243
* testsuite/test_caps.py:
* testsuite/test_struct.py:
Minor beauty fixes. framerates are fractions, not floats.
Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/interfacesmodule.c: (initinterfaces):
initialize pygobject in the gst.interfaces modules. The absence of it
causes segfaults on Solaris and MIPS machines.
Fixes#343980
Original commit message from CVS:
* gst/base.defs:
Limitations in the code generator mean that we can't handle PushSrc
in a way which works, so just comment this out until someone wants
to tackle this more completely.
Original commit message from CVS:
* gst/pygstvalue.c: (pygst_value_init_for_pyobject),
(pygst_value_from_pyobject):
Make buffers-in-gvalues more generic: handle all miniobjects
* testsuite/test_caps.py:
Add a bit to one the test for buffers in caps.
Original commit message from CVS:
* gst/pygstvalue.c: (pygst_value_as_pyobject),
(pygst_value_init_for_pyobject), (pygst_value_from_pyobject):
Implement gst.Buffer support in GValues (e.g. for caps containing
buffers)
Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/gstpad.override:
Allow removing the negotiated pads of a cap by setting them to None.
* testsuite/test_pad.py:
Added un-negotian of pads' caps to test above patch.
Fixes#363795
Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/interfaces.defs:
* gst/interfaces.override:
* testsuite/test_interface.py:
Fully implement GstPropertyProbe interface, with unit test.
Fixes#376996
Original commit message from CVS:
* codegen/codegen.py:
Don't register interface if it is ignored
* configure.ac:
GST_PB_MINOR_VERSION doesn't appear by magic, you actually have to
parse it from pkg-config !
* gst/gst-pb-0.10.11.ignore:
Ignore GstVideoOrientation type altogether.
* gst/interfaces.override:
Include gstversion.override so that non-existent API is properly ignored.
Should fix#401051 once and for good now.
Original commit message from CVS:
* configure.ac:
Check for availability of video-orientation interface
* gst/gst.override:
don't forget to increment the refcount of Py_None before returning it.
* gst/interfaces.override:
If video-orientation interface isn't available, don't include the
header.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gstversion.override.in:
* gst/gst-0.10.12.ignore:
Add ignore file for 0.10.12 API additions
* gst/gst.defs:
* gst/base.defs:
* gst/gst-types.defs:
Add new API definitions
* gst/gst-0.10.10.ignore:
* gst/gst-0.10.11.ignore:
Fixup ignore files.
* testsuite/test_segment.py:
The update return value is uncertain and will soon be deprecated, don't
check against it anymore.
Original commit message from CVS:
* gst/pygstexception.c: (element_not_found_error_init),
(pygst_exceptions_register_classes):
* gst/pygstexception.h:
gst.element_factory_make should raise ElementNotFoundError.
Subclass it from PluginNotFoundError so we can add it compatibly
and remove the wrong one later.
* gst/gstelementfactory.override:
raise ElementNotFoundError
Original commit message from CVS:
* gst/interfaces.defs:
* gst/interfaces.override:
wrap mixer get_volume
* examples/Makefile.am:
* examples/mixer.py:
add an example using it
Original commit message from CVS:
* configure.ac:
fix use of PKG_CHECK_MODULES
check for a pygobject of at least 2.11 for a value_from_pyobject fix
* gst/gstobject.override:
use it
Original commit message from CVS:
* configure.ac:
check for stuff added in gst-pb 0.10.11
* gst/Makefile.am:
* gst/interfaces.defs:
* gst/interfaces.override:
add video orientation interface
Original commit message from CVS:
* gst/gst.defs:
Add declaration of gst_object_set_property so we can use our MT-safe
version of set_property().
* gst/gstobject.override:
Implement a MT-safe version of g_object_set_property for GstObject.
The problem is that currently g_object_set_property is called in
pygobject with the GIL lock taken. This can cause deadlocks.
Remove this hack once bug #395048 is fixed in pygobject and we depend on
the fixed version.
Thanks to Lord Wingo of the "realm.py haters club" for proposing the
idea.
Original commit message from CVS:
* codegen/codegen.py:
When chaining up to the parent class methods from python to C, we need
to allow threads (i.e. release the GIL).
* gst/gstbase.override:
* gst/gstbin.override:
Modify __do_*() overrides in the same way as above.
Original commit message from CVS:
* gst/gst.defs:
Update API definitions.
* gst/common.h:
* gst/gstpad.override:
Add wrapper functions for settings activate, activatepull and
activatepush functions on pads.
* gst/gst.override:
Wrapper for gst_segment_set_seek() and gst_segment_clip()
Remove global ignore for *_init(), allows gst_segment_init() to be
properly code-generated.
* testsuite/Makefile.am:
* testsuite/test_segment.py:
Add unit test for gst.Segment object.
Original commit message from CVS:
* codegen/argtypes.py:
* gst/arg-types.py:
Move GstIterator ArgType definition and usage for the codegenerator
to gst/arg-types.py. It has nothing to do in the codegenerator code.
Original commit message from CVS:
* codegen/override.py:
Fix the lookup of override files in the specified search directories.
* gst/Makefile.am:
Don't distribute gstversion.override
Fixup .defs => .c make instructions
All the above fixes the cases where you're building in a directory
different from the source directory.
Original commit message from CVS:
* gst/extend/discoverer.py:
Avoid buffering infinite amounts of decoded data if a decoder is
feeding us data without a duration (or with bad duration values).
Original commit message from CVS:
* gst/extend/discoverer.py: Make the queue buffer up 1s of data before
outputting to the sinks. This should give time for some demuxers like
mpegdemux or fluasfdemux to discover a bit more about the muxed
stream and add the correct pads.
Fixes#371969
Original commit message from CVS:
* gst/gst-0.10.10.ignore:
Added symbols added in 0.10.10
* gst/gst-0.10.6.ignore:
gst_dp_packetizer_new() addition
* gst/gst.defs:
Updated API for 0.10.10 symbols
* gst/gstmodule.c: (init_gst):
Added GST_TAG_EXTENDED_COMMENT which appeared in 0.10.10
* gst/libs.defs:
Added gst_dp_packetizer_new() which was added in 0.10.6. It still won't
work because GstDPPacketizer is a pointer. It needs to have a GBoxed
definition in order to be used properly within gst-python.
Also added controller-related additions
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.11.ignore:
* gst/gstversion.override.in:
Added ignore files for 0.10.11 gstreamer core
* gst/base.defs:
Updated API for base libs
* gst/gst.defs:
Updated API for core
* gst/gst.override:
remove #ifdef for methods which weren't available in versions of pygtk
we don't support anymore.
* gst/gstbase.override:
Added overrides for GstBaseSink::get_times() virtual method
* gst/gstbin.override:
Added override for GstBin::handle_message() virtual method
Original commit message from CVS:
* gst/Makefile.am:
Explicitly export _PyGObject_API from our modules, as it's apparently
needed for import. Previously we implicitly relied on a bug in the
core providing --export-dynamic as a link flag.
Original commit message from CVS:
* gst/extend/jukebox.py:
* gst/extend/leveller.py:
* gst/extend/sources.py:
Revival of the jukebox (and leveller) using 0.10 and gnonlin.
Still needs a bit of love, but functionnal enough.
Original commit message from CVS:
* gst/libs.defs:
Add definition for GstParamFlags, extension of the GParamFlags.
Only contains one flag, gst.PARAM_CONTROLLABLE.
Closes#355150
Original commit message from CVS:
* gst/gst.override:
We don't own a reference on the elements contained in the list
returned by gst_xml_get_topelements().
Original commit message from CVS:
* configure.ac:
If pygobject is available, only build with it, else try to find pygtk
to stay compatible with older version.
* gst/Makefile.am:
Switch to pygobject CFLAGS.
* testsuite/Makefile.am:
Switch to pygobject CFLAGS.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.10.ignore:
* gst/gstversion.override.in:
Add new ignore for 0.10.10 API additions
* gst/gst.defs:
Added definitions for new segtrap functions
Original commit message from CVS:
* gst/gstelement.override:
* gst/gstevent.override:
* gst/gstmessage.override:
* gst/gstquery.override:
Repeat 100 times : "I shouldn't commit patches without checking
them thoroughly, especially if they come from someone I trust".
Fix the broken Py_BuildValue.
Original commit message from CVS:
* gst/gstmessage.override:
State change is a list and not a tuple
* gst/gstpad.override:
query_position() got busted in previous commit.
Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/gstelement.override:
* gst/gstevent.override:
* gst/gstmessage.override:
* gst/gstpad.override:
* gst/gstquery.override:
Use Py_BuildValue to construct tuples.
Use tuples for collection of different objects.
See http://www.python.org/doc/faq/general/#why-are-there-separate-tuple-and-list-data-types
* testsuite/test_event.py:
[message|query|event].parse_* now return tuples and not list.
Fixes#334548
Original commit message from CVS:
* gst/gst-types.defs:
Added fields for GstPadTemplate.
* gst/gst.defs:
Made gst_element_class_get_template_list a GstElement method.
* gst/gstelement.override:
Override for gst.Element.get_template_list()
* gst/gstpad.override:
Override getter for GstStaticPadTemplate.static_caps so that it uses
the correct pointer.
Original commit message from CVS:
* gst/base.defs:
* gst/gst-0.10.7.ignore:
* gst/gst-types.defs:
* gst/gst.defs:
* gst/gstbase.override:
* gst/libs.defs:
Update for API additions.
* gst/gstmodule.c: (init_gst):
Added new GST_TAG_IMAGE and GST_TAG_PREVIEW_IMAGE
Original commit message from CVS:
reviewed by: Edward Hervey <edward@fluendo.com>
* gst/__init__.py:
Make gst-python work on OS without dl.so
Fixes#341799
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.7.ignore:
* gst/gstversion.override.in:
Added ignore file for core 0.10.7
* gst/base.defs:
Added gst_adapter_take_buffer
* gst/gst-0.10.6.ignore:
Filed API addition for 0.10.6
* gst/gst-types.defs:
Added GstTypeFind pointer definition
* gst/gst.defs:
* gst/gst.override:
Added fake function gst_type_find_new() to create a GstTypeFind that can
be used in all typefinding function.
GstTypeFind *
gst_type_find_new(data, peekfunction, suggestfunction [, getlenghtfunction])
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.6.ignore:
* gst/gst.defs:
* gst/gstversion.override.in:
Update for API changes.
Added ignore files for core 0.10.6 API additions.
Original commit message from CVS:
* gst/gst.override:
Reverting previous patches for conditional ignore.
It can't be done from within override files.
The only one left is the python gst_debug_log function
which will do nothing #ifdef GST_DISABLE_GST_DEBUG.
Also removed the conditional ignore for API changes since it didn't
have any effect either.
Original commit message from CVS:
* codegen/codegen.py:
* codegen/override.py:
Added code to ignore type and the function/methods/classes that use
them.
* gst/gst.override:
ignore methods/classes/types depending on how GStreamer core was built:
_ GST_DISABLE_GST_DEBUG
_ GST_DISABLE_LOADSAVE
_ GST_DISABLE_PARSE
Original commit message from CVS:
* examples/gstfile.py:
Threaded application, we NEED gobject.threads_init().
This should finally gets rid of the crashes when used on single files.
* gst/extend/discoverer.py:
Re-order the imports.
Original commit message from CVS:
* gst/arg-types.py:
Caps used as arguments of virtual methods should keep their initial
refcount when calling the python methods.
This is similar to the patch done for GstMiniObjects.
* gst/gstbase.override:
Adjust the gst.BaseTransform.get_unit_size() virtual method for above
fix.
Original commit message from CVS:
* gst/arg-types.py:
GstMiniObject used as virtual methods parameters should be unreffed
before calling the method and the ref-ed.
Added Params and Returns for const-gchar*, GType and gulong so the
code generator can generate more virtual methods handlers/proxys.
* gst/gst-types.defs:
* gst/gst.defs:
* gst/interfaces.defs:
Added vtable and virtual method definition for interfaces so we can properly use virtual
methods from those interfaces in python.
Original commit message from CVS:
2006-04-19 Andy Wingo <wingo@pobox.com>
* gst/gstpad.override: (pad_block_callback_marshal)
(_wrap_gst_pad_set_blocked_async): Fix refcounting problems and
indent.
Fixes#338982
Original commit message from CVS:
2006-04-19 Andy Wingo <wingo@pobox.com>
* gst/arg-types.py (GstCapsArg.write_const_param)
(GstCapsArg.write_param): If there is a default value, initialize
the py_caps variable to NULL. PyArgs_Parse* doesn't touch c
variables if the optional arg isn't there. Fixes#339010.
Original commit message from CVS:
* gst/gsttaglist.override: (tag_foreach_func_list):
Return tag value if present more than once (instead of exactly once).
Fixes#337876
Original commit message from CVS:
* codegen/argtypes.py:
Update from upstream codegen for UInt argtype.
* gst/gst-types.defs:
Added GstIndexEntry boxed type.
* gst/gstbase.override:
Wrapped gst.BaseSrc::get_times() and gst.PushSrc::create() virtual
methods.
gst.BaseSrc and gst.PushSrc virtual methods are now completely wrapped.
Original commit message from CVS:
2006-04-07 Andy Wingo <wingo@pobox.com>
* gst/arg-types.py (GstCapsArg.beforenull): py_caps can be NULL if
it is an optional argument. Translate this python non-value to the
C NULL.
* gst/gst.defs (get_compatible_pad): Filter caps is optional and
can be None. It defaults to None.
Original commit message from CVS:
2006-04-07 Andy Wingo <wingo@pobox.com>
* gst/gstelement.override (_wrap_gst_element_link): Allow errors
parsing the optional filter caps to propagate up.
Original commit message from CVS:
2006-04-07 Andy Wingo <wingo@pobox.com>
* gst/gst.defs (element_make_from_uri): Element name is optional
and can be None. It defaults to None.
Original commit message from CVS:
2006-04-05 Andy Wingo <wingo@pobox.com>
* configure.ac (PYGST_MICRO_VERSION): Doc fix.
(PYGST_NANO_VERSION): New define.
* gst/__init__.py (version): Add as an alias for get_gst_version.
Should use the deprecation infrastructure here.
* gst/gst.defs: Add defs for the new wrapped functions.
* gst/gst.override (_wrap_gst_get_pygst_version)
(_wrap_gst_get_gst_version): New overrides, functions to access
the gstreamer and pygst versions. The first used to be called
gst_version(); we ignore gst_version now.
Original commit message from CVS:
2006-04-05 Andy Wingo <wingo@pobox.com>
* gst/gstpad.override (_wrap_gst_pad_set_blocked_async):
PyObject_IsTrue, not PyBool_Check. Grr.
Original commit message from CVS:
* configure.ac:
Fixes in how we figure out what API to ignore
* gst/Makefile.am:
* gst/gst-0.10.5.ignore:
* gst/gstversion.override.in:
Added file for handling API additions for gstreamer 0.10.5
* gst/base.defs:
* gst/gst.defs:
New API
* gst/gstpad.override:
Overrides for gst.Pad.query_peer_*()
Original commit message from CVS:
* configure.ac:
Only require GStreamer core >= 0.10.2
Detect version of core the bindings are being compiled against and
write gst/gstversion.override file with eventual API additions that
should be ignored.
* gst/Makefile.am:
* gst/base.defs:
Added gst_base_sync_[set|get]_[sync|max_lateness]() and
gst_type_find_helper_get_range() definitions
* gst/gst-0.10.3.ignore:
API added in gstreamer core 0.10.3
* gst/gst-0.10.4.ignore:
API added in gstreamer core 0.10.4
* gst/gst.override:
Include gstversion.override.
* gst/gstversion.override.in:
Magic file for API additions to ignore.
Original commit message from CVS:
* gst/Makefile.am:
* gst/gst.override:
* gst/gstbase.override:
Added base elements override file.
* gst/gstpad.override:
Added override for gst_pad_alloc_buffer_and_set_caps
Original commit message from CVS:
* gst/base.defs:
typo fix for gst_type_find_helper()
Added new API : gst_type_find_helper_for_buffer()
* gst/gst.override:
override for gst.type_find_helper_for_buffer()
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
Added new API:
gst_pipeline_[get|set]_auto_flush_bus()
gst_uri_has_protocol()
GST_RESOURCE_ERROR_NO_SPACE_LEFT
Original commit message from CVS:
* gst/arg-types.py:
Add ReturnType and Parameter for GstCaps.
This allows the codegenerator to wrap properly more virtual proxies.
Original commit message from CVS:
* gst/gststructure.override:
* gst/gsttaglist.override:
Don't leak PyObjects wrapping GValues when indexing into a
GStStructure. Also fix a copy/paste identical bug in taglists.
Original commit message from CVS:
* gst/pygstminiobject.h:
Some crack distributions do weirdo stuff with PYGIL_API_IS_BUGGY.
Let's keep our own detection.
Closes#333055
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
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