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