Commit graph

372 commits

Author SHA1 Message Date
Edward Hervey
b01b9197c7 codegen/: Added code to ignore type and the function/methods/classes that use them.
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
2006-05-09 13:13:48 +00:00
Edward Hervey
4ec7c5c5d8 examples/gstfile.py: Threaded application, we NEED gobject.threads_init().
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.
2006-04-29 16:59:16 +00:00
Edward Hervey
0d89737bf7 gst/arg-types.py: Caps used as arguments of virtual methods should keep their initial refcount when calling the pytho...
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.
2006-04-28 17:35:26 +00:00
Edward Hervey
c2f10c765f gst/gstbase.override: gst.BaseTransform.get_unit_size() virtual method override.
Original commit message from CVS:
reviewed by: Edward Hervey  <edward@fluendo.com>
* gst/gstbase.override:
gst.BaseTransform.get_unit_size() virtual method override.
Closes #339248
2006-04-28 15:23:52 +00:00
Edward Hervey
31033595e4 gst/arg-types.py: GstMiniObject used as virtual methods parameters should be unreffed before calling the method and t...
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.
2006-04-28 15:07:41 +00:00
Edward Hervey
a0da01acaa gst/gstpad.override: (pad_block_callback_marshal)
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
2006-04-28 14:55:15 +00:00
Edward Hervey
726357893f gst/gstmodule.c: Wrap the gstreamer error domains quark.
Original commit message from CVS:
* gst/gstmodule.c: (init_gst):
Wrap the gstreamer error domains quark.
Fixes #339040
2006-04-28 14:54:45 +00:00
Andy Wingo
ebf47e1442 gst/arg-types.py (GstCapsArg.write_const_param)
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.
2006-04-19 12:04:19 +00:00
Edward Hervey
e7c477c793 gst/gsttaglist.override: Return tag value if present more than once (instead of exactly once).
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
2006-04-10 14:47:19 +00:00
Edward Hervey
b07c954fb9 codegen/argtypes.py: Update from upstream codegen for UInt argtype.
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.
2006-04-10 09:21:09 +00:00
Andy Wingo
8f0143c56e gst/arg-types.py (GstCapsArg.beforenull): py_caps can be NULL if it is an optional argument. Translate this python no...
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.
2006-04-07 17:21:27 +00:00
Andy Wingo
182840a50d 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/gstelement.override (_wrap_gst_element_link): Allow errors
parsing the optional filter caps to propagate up.
2006-04-07 14:54:49 +00:00
Andy Wingo
59667a31a7 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-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.
2006-04-07 14:32:08 +00:00
Andy Wingo
b3fb726a67 configure.ac (PYGST_MICRO_VERSION): Doc fix.
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.
2006-04-05 11:55:48 +00:00
Andy Wingo
fda4bddb99 gst/gstpad.override (_wrap_gst_pad_set_blocked_async): PyObject_IsTrue, not PyBool_Check. Grr.
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.
2006-04-05 08:37:32 +00:00
Edward Hervey
3136c7ef6d gst/gst.defs: gst_element_post_message: Adding keep-refcount tag to the message since the function will unref it.
Original commit message from CVS:
* gst/gst.defs:
gst_element_post_message: Adding keep-refcount tag to the message since
the function will unref it.
2006-04-04 16:16:46 +00:00
Thomas Vander Stichele
f77edff104 configure.ac: use AS_VERSION and AS_NANO
Original commit message from CVS:

* configure.ac:
use AS_VERSION and AS_NANO
2006-04-01 10:07:07 +00:00
Edward Hervey
183e0f7210 configure.ac: Fixes in how we figure out what API to ignore
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_*()
2006-03-24 11:07:22 +00:00
Edward Hervey
e97416a785 configure.ac: Only require GStreamer core >= 0.10.2
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.
2006-03-14 12:56:46 +00:00
Edward Hervey
282abc30ff gst/: Added base elements override file.
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
2006-03-13 11:19:10 +00:00
Edward Hervey
ecc0f5d932 gst/gst.override: Commited a bit too much :)
Original commit message from CVS:
* gst/gst.override:
Commited a bit too much :)
2006-03-10 11:28:01 +00:00
Edward Hervey
9c81750346 gst/base.defs: typo fix for gst_type_find_helper()
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()
2006-03-10 11:22:31 +00:00
Edward Hervey
7c377f9596 gst/: Added new API: gst_pipeline_[get|set]_auto_flush_bus() gst_uri_has_protocol()
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
2006-03-10 10:54:40 +00:00
Edward Hervey
455c2109fa gst/arg-types.py: Add ReturnType and Parameter for GstCaps.
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.
2006-03-07 19:44:35 +00:00
Edward Hervey
04d31802b9 gst/base.defs: Update for new check_get_range virtual method in GstBaseSrc
Original commit message from CVS:
* gst/base.defs:
Update for new check_get_range virtual method in GstBaseSrc
2006-03-07 19:08:43 +00:00
Michael Smith
d64761af50 gst/: Don't leak PyObjects wrapping GValues when indexing into a
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.
2006-03-06 16:24:53 +00:00
Edward Hervey
9fdbc6b987 gst/pygstminiobject.h: Some crack distributions do weirdo stuff with PYGIL_API_IS_BUGGY.
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
2006-03-02 09:40:13 +00:00
Edward Hervey
37e88dd9f6 gst/gstmodule.c: gst.gst_version uses the result of gst_version() rather than use the GST_VERSION_* hardcoded values.
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
2006-02-22 10:16:33 +00:00
Edward Hervey
c690bf507f gst/: Updated and properly wrapped new GstQuery formats API.
Original commit message from CVS:
* gst/gst.defs:
* gst/gstquery.override:
Updated and properly wrapped new GstQuery formats API.
2006-02-17 15:35:34 +00:00
Andy Wingo
e8df8fe73c gst/gst.defs (disable_sync_message_emission)
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.
2006-02-10 17:49:47 +00:00
Edward Hervey
e11b1fcafa gst/: Remove deprecated code dating back from 0.8 era.
Original commit message from CVS:
* gst/gst.override:
* gst/gstmodule.c: (python_do_pending_calls):
Remove deprecated code dating back from 0.8 era.
2006-02-07 18:54:52 +00:00
Edward Hervey
b92ae45a82 gst/gst.override: (gst.TIME_ARGS) return "CLOCK_TIME_NONE" for invalid times instead of outputing gibberish value.
Original commit message from CVS:
* gst/gst.override:
(gst.TIME_ARGS) return "CLOCK_TIME_NONE" for invalid times instead of
outputing gibberish value.
2006-02-02 16:30:01 +00:00
Edward Hervey
b36f73ee11 gst/gst.defs: Update for current GStreamer core API
Original commit message from CVS:
* gst/gst.defs:
Update for current GStreamer core API
2006-02-02 15:54:07 +00:00
Edward Hervey
0ce8abe73d gst/gst.defs: When using gst.Element.send_event() and gst.Pad.send_event() we keep a refcount on the sent event.
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
2006-02-01 14:19:55 +00:00
Edward Hervey
b06a9be61e Link against Gst Data protocol libraries.
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
2006-01-30 12:57:02 +00:00
Edward Hervey
f75b8e2494 gst/gstlibs.override: GstController : don't use values that are now in non-public API.
Original commit message from CVS:
* gst/gstlibs.override:
GstController : don't use values that are now in non-public API.
2006-01-13 17:40:09 +00:00
Edward Hervey
938205e1da gst/base.defs: Revert guint8* to gchar* modifications for the adapter
Original commit message from CVS:
* gst/base.defs:
Revert guint8* to gchar* modifications for the adapter
* gst/gst.defs:
Cleanups and API additions
2006-01-09 11:42:25 +00:00
Edward Hervey
112f72dabc gst/gststructure.override: Properly check for gstvalue data types. This makes it possible to set fields with fractions.
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
2006-01-08 12:26:35 +00:00
Edward Hervey
28b45522be gst/base.defs: Use gchar* instead of guint8* for GstAdapter
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.
2006-01-05 14:49:27 +00:00
Edward Hervey
94688fea61 First step at wrapping base elements in gst-python
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
2006-01-01 21:18:28 +00:00
Thomas Vander Stichele
915b66d2f1 install in pyexecdir as well
Original commit message from CVS:

* configure.ac:
* gst/Makefile.am:
* gst/extend/Makefile.am:
install in pyexecdir as well
2005-12-22 15:56:41 +00:00
Edward Hervey
1170d64e5f gst/gst-types.defs: Added GstStaticCaps and GstStaticPadTemplate, using the new GType.
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()
2005-12-20 11:15:50 +00:00
Martin Soto
d3b9836bbd gst/gstbus.override (_wrap_gst_bus_add_watch): This function incorrectly returned self, which was causing the message...
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.
2005-12-19 17:49:30 +00:00
Edward Hervey
c709d39be9 gst/gst.override: ignore gst_object_sink
Original commit message from CVS:
* gst/gst.override:
ignore gst_object_sink
2005-12-19 16:05:34 +00:00
Edward Hervey
ed0b93ff9f gst/: Properly wrap the gst_dp_* functions (cast gchar* to guint8*).
Original commit message from CVS:
* gst/gstlibs.override:
* gst/libs.defs:
Properly wrap the gst_dp_* functions (cast gchar* to guint8*).
2005-12-19 10:45:45 +00:00
Edward Hervey
99aa909d5b gst/gst.override: ignore gst_plugin_get_module, GModule aren't wrapped in pygtk anyway.
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.
2005-12-18 18:15:57 +00:00
Edward Hervey
3ef436193d gst/gst.defs: gst_object_sink is a method of GstObject const of enums is a stupidity (_element_make_from_uri)
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()
2005-12-18 17:20:12 +00:00
Andy Wingo
1374aac3fa gst/gstpad.override (handle_event_function_exception)
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.
2005-12-16 14:47:12 +00:00
Edward Hervey
1e233d42c1 examples/gstfile.py: Moved the Discoverer class to gst.extend
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.
2005-12-12 15:15:28 +00:00
Edward Hervey
ddf94ea8fa gst/arg-types.py: This covers for the codegenerator not being able to handle (unsigned) int64 as parameters and retur...
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.
2005-12-09 13:06:43 +00:00