Commit graph

37 commits

Author SHA1 Message Date
Edward Hervey
c09393b5b9 gst/: Add implementation of gst.Pad.set_setcaps_function().
Original commit message from CVS:
* gst/common.h:
* gst/gstpad.override:
Add implementation of gst.Pad.set_setcaps_function().
2006-12-01 17:41:28 +00:00
Edward Hervey
6992f7de67 gst/gstmessage.override: State change is a list and not a tuple
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.
2006-07-03 09:31:26 +00:00
Edward Hervey
c52a37cd82 gst/: Use Py_BuildValue to construct tuples.
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
2006-07-03 09:01:18 +00:00
Edward Hervey
1c5a18e82c Removal of all glib < 2.8 cruft since GStreamer core now requires glib >= 2.8
Original commit message from CVS:
Removal of all glib < 2.8 cruft since GStreamer core now requires
glib >= 2.8
* codegen/argtypes.py:
remove gstobject cruft from ObjectArg
* configure.ac:
Require glib >= 2.8.0
* gst/Makefile.am:
* gst/pygstobject.c:
* gst/pygstobject.h:
Remove pygstobject.[ch]
* gst/common.h:
Don't include removed header file.
* gst/gst.override:
* gst/gstbin.override:
* gst/gstbus.override:
* gst/gstelement.override:
* gst/gstelementfactory.override:
* gst/gstmessage.override:
* gst/gstobject.override:
* gst/gstpad.override:
* gst/interfaces.override:
* gst/pygstiterator.c: (pygst_iterator_iter_next):
Switch from using pygstobject* functions to using pygobject* functions.
* gst/gstmodule.c: (sink_gstobject), (init_gst):
Move GstObject sink function here and use standard gobject refcounting.
2006-07-02 15:25:04 +00:00
Edward Hervey
a48e8b6e6b gst/gst-types.defs: Added fields for GstPadTemplate.
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.
2006-06-14 10:00:32 +00:00
Edward Hervey
bc17f73dcb codegen/: Updated codegenerator to current pygtk one.
Original commit message from CVS:
* codegen/Makefile.am:
* codegen/argtypes.py:
* codegen/codegen.py:
* codegen/definitions.py:
* codegen/defsconvert.py:
* codegen/defsparser.py:
* codegen/docextract.py:
* codegen/docextract_to_xml.py:
* codegen/docgen.py:
* codegen/h2def.py:
* codegen/mergedefs.py:
* codegen/missingdefs.py:
* codegen/mkskel.py:
* codegen/override.py:
* codegen/reversewrapper.py:
Updated codegenerator to current pygtk one.
* gst/gst.defs:
* gst/gst.override:
* gst/gstpad.override:
Update defs for new constructor definition.
* testsuite/test_bin.py:
With new constructors, pygobject will try to convert the argument to the
proper GType (here a string).
2006-06-09 10:50:21 +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
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
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
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
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
e3beb3ed78 gst/gstmodule.c: Added GST_TAG_* string constants
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.
2005-11-10 12:48:49 +00:00
Edward Hervey
489d9c24a5 gst/gstpad.override: works better now we set the item to the proper position...
Original commit message from CVS:
* gst/gstpad.override:
works better now we set the item to the proper position...
2005-11-04 16:28:15 +00:00
Edward Hervey
bf88eeddbb gst/gstpad.override: Use proper GValue <-> MiniObject conversion function
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.
2005-11-04 13:14:59 +00:00
Edward Hervey
1912b5b2eb gst/gstelement.override: added wrapper for gst_element_query_duration()
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
2005-11-01 18:19:08 +00:00
Edward Hervey
b07e3f3cf8 gst/: Update (hopefully) final API modifications
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
2005-10-19 17:32:29 +00:00
Edward Hervey
e3ac835751 gst/: Use PyList_SetItem() instead of PyList_Append() for faster list creation and proper python refcounting.
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
2005-10-13 10:58:16 +00:00
Edward Hervey
f50c30441c examples/gstfile.py: misc fixes
Original commit message from CVS:
* examples/gstfile.py:
misc fixes
* gst/Makefile.am:
* gst/pygstexception.c:
* gst/pygstexception.h:
* gst/gstelementfactory.override:
* gst/gst.override:
* gst/gstpad.override:
* gst/gstmodule.c: (init_gst):
Added exceptions system by Alessandro Decina <alessandro@nnva.org>
Closes bug #315433
* gst/gstbus.override:
* gst/gstelement.override:
Fix for _wrap_gst_element_get_state()
* gst/gstobject.override:
More debug
2005-10-13 10:41:06 +00:00
Edward Hervey
56f25a4653 gst/common.h: cleanup
Original commit message from CVS:
* gst/common.h:
cleanup
* gst/gst-types.defs:
* gst/gst.defs:
Updated defs file to current gstreamer core
* gst/gst.override:
Added useless function (at least from python bindings) and little correction
on _wrap_gst_xml_get_topelements()
* gst/gstbin.override:
* gst/gstbuffer.override:
Fix memleak in gst.Buffer.set_caps()
* gst/gstevent.override:
Added wrapper for remaining gst_event_parse_*()
* gst/gstlibs.override:
Wrapped more gst.Controller methods
* gst/gstmodule.c: (init_gst):
new gst_init()
Added atexit(gst_deinit)
* gst/gstpad.override:
Fix memleak in gst.Pad.set_caps()
* gst/gstquery.override:
add gst.Query.parse_segment()
* gst/libs.defs:
Updated to current gst-libs
* gst/pygstminiobject.c: (pygstminiobject_register_wrapper),
(pygstminiobject_new), (pygstminiobject_dealloc):
Added debug
* testsuite/Makefile.am:
* testsuite/common.py:
* testsuite/gstpython.supp:
* testsuite/python.supp:
* testsuite/test_bin.py:
* testsuite/test_buffer.py:
* testsuite/test_element.py:
* testsuite/test_event.py:
* testsuite/test_ghostpad.py:
* testsuite/test_iterator.py:
* testsuite/test_message.py:
* testsuite/test_pipeline.py:
Proper valgrind testing,
Updated tests to new API
2005-10-11 12:42:53 +00:00
Edward Hervey
396316a7e4 memleak fixes. Thanks valgrind :)
Original commit message from CVS:
* gst/gstpad.override:
* gst/gststructure.override:
* testsuite/testhelpermodule.c: (_wrap_emit_event):
memleak fixes. Thanks valgrind :)
2005-10-06 16:58:38 +00:00
Thomas Vander Stichele
ca1cb51d1a configure.ac: need at least 2.6.3, because that contains the code that converts signal closure arguments to the corre...
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
2005-10-06 10:54:14 +00:00
Thomas Vander Stichele
deb316e3fd gst/gstobject.override: don't try and unref objects that are already finalizing
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
2005-10-05 16:19:13 +00:00
Edward Hervey
3459b34ef0 gst/gstpad.override: Removed overriding of gst_caps_get_negotiated_caps, the codegenerator handles it much better (hi...
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)
2005-09-30 15:53:07 +00:00
Thomas Vander Stichele
5768672390 gst/: add/move some code to handle wrapping/refcounting of possible
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
2005-09-28 12:17:29 +00:00
Thomas Vander Stichele
ee6e612754 gst/gstpad.override: don't leak the parent when repr'ing pads
Original commit message from CVS:

* gst/gstpad.override:
don't leak the parent when repr'ing pads
2005-09-28 09:52:37 +00:00
Andy Wingo
14856cf85c gst/gst.defs: Update for probe removal api gst/gstpad.override (_wrap_gst_pad_remove_data_probe) (_wrap_gst_pad_remov...
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.
2005-09-21 13:36:45 +00:00
Thomas Vander Stichele
4babdda09c gst/gst.defs: add gst.ghost_pad_new_notarget
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
2005-09-08 13:34:29 +00:00
Edward Hervey
8ad2d61eeb gst/gstpad.override: Long != LongLong ....
Original commit message from CVS:
* gst/gstpad.override: (_wrap_gst_pad_query_position):
Long != LongLong ....
2005-08-09 13:42:56 +00:00
Edward Hervey
c4d8993ca4 gst/gstpad.override: misc fixes for change in gst_pad_get_parent()
Original commit message from CVS:
* gst/gstpad.override: misc fixes for change in gst_pad_get_parent()
* gst/gst.defs: Updating defs file even more :)
2005-07-18 17:13:04 +00:00
Edward Hervey
9b74a9033a gst/gst.override: removed deprecated wrappers (gst_event_new_any*)
Original commit message from CVS:
* gst/gst.override:
removed deprecated wrappers (gst_event_new_any*)
* gst/gstbuffer.override:
* gst/gstquery.override:
* gst/gstmessage.override:
* gst/gstevent.override:
* gst/pygstminiobject.c:
* gst/pygstminiobject.h:
Correct wrapping of functions 'creating' mini-objects
* gst/gstelement.override: (_wrap_gst_element_get_state):
More meaningful exception message
* gst/gstpad.override:
wrapped gst_pad_alloc_buffer(), gst_pad_pull_range(),
gst_pad_get_range(), gst_pad_get_internal_links(),
gst_pad_get_internal_links_default(), gst_pad_get_query_types(),
gst_pad_get_query_types_default()
2005-07-12 16:37:31 +00:00
Edward Hervey
ae75cbd54b gst/: Added GError wrapping,
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
Added GError wrapping,
Removed data field from Buffer,
Added virtual methods to object
Updated to latest API
* gst/gst.override:
wrapped gst_plugin_get_feature_list(), gst_uri_handler_get_protocols(),
gst_registry_pool_list()
* gst/gstbuffer.override:
gst.Buffer() works
get/setters fixed
wrapped gst_buffer_stamp()
* gst/gstbus.override:
wrapped gst_bus_set_sync_handler() and gst_bus_add_watch()
* gst/gstelement.override:
wrapped gst_element_send_event(), gst_element_factory_get_pad_templates()
gst_element_query_convert(), gst_element_get_query_types()
* gst/gstevent.override:
wrapped gst_event_discont_get_value()
* gst/gstmessage.override:
wrapped gst_message_parse_state_changed(), gst_message_parse_error(),
gst_message_parse_warning(), gst_message_parse_tag()
* gst/gstmodule.c:
Added registration of new fundamental type with pygtk
* gst/gstpad.override:
wrapped gst_pad_query(), gst_pad_[add|remove]_[data|event|buffer]_probe(),
gst_pad_query_position(), gst_pad_query_convert()
* gst/gstquery.override:
wrapped gst_query_parse_position(), gst_query_parse_convert(),
gst_query_parse_seeking_query(), gst_query_parse_seeking_reponse()
* gst/pygstminiobject.c:
fixes
* gst/Makefile.am:
added gstbus.override, gstmessage.override, gstquery.override
* testsuite/test_buffer.py:
* testsuite/test_element.py:
* testsuite/test_event.py:
* testsuite/test_pipeline.py:
Updating testsuites
2005-07-12 09:45:58 +00:00
Edward Hervey
038f11fafb codegen/: Updated codegen to support miniobject
Original commit message from CVS:
* codegen/argtypes.py:
* codegen/codegen.py:
* codegen/definitions.py:
* codegen/defsparser.py:
* codegen/docgen.py:
Updated codegen to support miniobject
* gst/Makefile.am:
Use the included (and modified) codegen for code generation.
* gst/pygstminiobject.c:
* gst/pygstminiobject.h:
* gst/pygstminiobject-private.h:
New GstMiniObject inspired from pygobject.[ch] code
* gst/common.h:
* gst/gst-types.defs:
* gst/gst.override:
* gst/gstbuffer.override:
* gst/gstcaps.override:
* gst/gstmodule.c:
* gst/gstpad.override:
Modifications to support MiniObject
* gst/gst.defs:
Allow null second parameter for ElementFactory.create()
and gst.element_factory_make()
2005-06-26 12:35:07 +00:00
Edward Hervey
d33dd2f565 gst/: commented-out deprecated code, compiles at last, and works for pipeline creation and state change
Original commit message from CVS:
* gst/arg-types.py:
* gst/common.h:
* gst/gst-argtypes.c:
* gst/gst-types.defs:
* gst/gst.defs:
* gst/gst.override:
* gst/gstelement.override:
* gst/gstmodule.c:
* gst/gstpad.override:
* gst/gststructure.override:
commented-out deprecated code,
compiles at last, and works for pipeline creation and state change
* configure.ac:
updated requirement of GStream (0.9.0), pygtk (2.6.1)
bumped version number (0.9.0.1)
2005-06-20 21:39:34 +00:00
Edward Hervey
c68afb5f53 Backport from 0.8 branch and added new .defs file from GStreamer 0.9
Original commit message from CVS:
Backport from 0.8 branch and added new .defs file from GStreamer 0.9
2005-06-17 10:59:47 +00:00
Johan Dahlin
6782bfbc7b Split out gst.override to a few more files.
Original commit message from CVS:
Split out gst.override to a few more files.
Rename gstpad-handlers.override to gstpad.override
Include more information for some LinkError exceptions
2005-01-01 15:23:42 +00:00
Johan Dahlin
e08b8d1b67 Use pyg_gil_state_*
Original commit message from CVS:
Use pyg_gil_state_*
2004-10-07 10:05:12 +00:00
Johan Dahlin
a37dede09c examples/gstreamer/filesrc.py,player.py: New examples
Original commit message from CVS:
* examples/gstreamer/filesrc.py,player.py: New examples

* gstreamer/gstreamer.override: Add a dict like interface to GstTagList

* gstreamer/gstpad-handlers.override: New file, split out from gstreamer.override

* gstreamer/gst-types.defs: Don't use
gst_buffer_free/gst_data_free, use gst_data_unref instead.

* gstreamer/gst-types.c (PyGstData_to_value): Don't send address here.

* gstreamer/arg-types.py (GstDataPtrArg.write_param): Send the
address to stuff, since we really want to avoid segfaults :)

* gstreamer/0.6.[c,defs,h,override]: Remove, we're focusing on 0.7

* gstreamer/0.7.[c,defs,h,override]: Remove, merge with
gstreamer.*

* gstreamer/Makefile.am: Clean up, remove versioning support.
2004-02-27 18:01:52 +00:00