Commit graph

82 commits

Author SHA1 Message Date
Edward Hervey
2aa12f0142 gst/gst.defs: Update for new API
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()
2005-10-14 16:26:17 +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
Thomas Vander Stichele
39ce373955 but use python: category for debugging from python code
Original commit message from CVS:
but use python: category for debugging from python code
2005-10-06 09:10:14 +00:00
Thomas Vander Stichele
2e6f967f32 use correct category
Original commit message from CVS:
use correct category
2005-10-06 09:05:15 +00:00
Thomas Vander Stichele
3441391866 gst/gst.override: accurate line numbers for logging
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
2005-10-05 22:33:50 +00:00
Thomas Vander Stichele
58c3c18b93 gst/: deprecate add_many/remove_many, fold into add/remove
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
2005-09-30 15:23:15 +00:00
Edward Hervey
fbd17dd797 gst/: Proper wrapping of GstController
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
2005-09-29 15:42:31 +00:00
Edward Hervey
1ead698175 gst/gst.defs: Updated definitions
Original commit message from CVS:
* gst/gst.defs:
Updated definitions
* gst/gst.override:
ignoring _init, gst_param_spec* and gst_iterator_new_list functions
* gst/gststructure.override:
ignore gst_structure_get_enum
* testsuite/test_struct.py:
Updated test for boolean
2005-09-29 09:58:25 +00:00
Edward Hervey
ff6728de7b gst/: Updated definitions
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.
2005-09-28 17:08:11 +00:00
Edward Hervey
9ba2f7fbbe gst/: Remove dead code
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()
2005-09-28 15:19:44 +00:00
Edward Hervey
60961d9b93 gst/: Let's split up gst.override,
Original commit message from CVS:
* gst/Makefile.am:
* gst/gst.override:
* gst/gsttaglist.override:
* gst/gstobject.override:
Let's split up gst.override,
Added gsttaglist.override and gstobject.override
* gst/arg-types.py:
* gst/gst-argtypes.c:
Cleanup, removed deprecated GstData related functions
* gst/gst-extrafuncs.defs:
* gst/gst.defs:
Moved debug functions to gst-extrafuncs.defs
2005-09-28 14:34:52 +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
Edward Hervey
1bc63d73b9 codegen/argtypes.py: Proper handling of 'caller-owns-return' for miniobjects
Original commit message from CVS:
* codegen/argtypes.py:
Proper handling of 'caller-owns-return' for miniobjects
* gst/gst-types.defs:
Updating parenting of classes,
added/removed/updated flags&enums
* gst/gst.defs:
Updated to current core cvs,
Added 'caller-owns-return' properties for functions/methods that require
it
* gst/gst.override:
Don't make *_[un]ref() accessible
* gst/gstbuffer.override:
* gst/gstevent.override:
* gst/gstmessage.override:
* gst/gstquery.override:
Removed hack-ish wrappers since codegenerator handles
'caller-owns-return' methods/functions
* gst/gstmodule.c: (sink_gstobject), (init_gst):
Re-enabled sink function
* gst/libs.defs:
Updated to current core cvs
Removed Adapter
* gst/pygstminiobject.c:
* gst/pygstminiobject.h:
removed _new_noref() hack
2005-09-28 10:58:50 +00:00
Thomas Vander Stichele
cfdc81b592 gst/gst.*: add another registry method
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
2005-09-23 15:37:40 +00:00
Thomas Vander Stichele
419ce01981 update for new plugin API
Original commit message from CVS:
update for new plugin API
2005-09-18 11:54:34 +00:00
Thomas Vander Stichele
c8f8cd37b9 commit intermediate wrapper updates
Original commit message from CVS:
commit intermediate wrapper updates
2005-09-18 11:06:42 +00:00
Thomas Vander Stichele
a74cc80a77 examples/vumeter.py: update for property name change
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
2005-09-12 17:06:09 +00:00
Thomas Vander Stichele
ed6f0f377a fix for header changes
Original commit message from CVS:
fix for header changes
2005-09-09 16:39:59 +00:00
Thomas Vander Stichele
4132069a83 add debug methods to gst.Object
Original commit message from CVS:
add debug methods to gst.Object
2005-09-08 14:08:32 +00:00
Thomas Vander Stichele
61038c89f1 don't mangle plugin.get_version() to a tuple of int; it segfaults when the version contains non-ints like '-'
Original commit message from CVS:
don't mangle plugin.get_version() to a tuple of int; it segfaults
when the version contains non-ints like '-'
2005-09-03 10:01:47 +00:00
Thomas Vander Stichele
dc83edf73e fix a race condition in test_buffer.py
Original commit message from CVS:
fix a race condition in test_buffer.py


* gst/gst.override:
* gst/gstmodule.c: (init_gst):
add a pygst debug category for bindings themselves to use
* gst/gstbuffer.override:
add a repr method; add some assertions
* gst/pygstminiobject.c: (pygst_miniobject_init),
(pygstminiobject_register_wrapper), (pygstminiobject_new),
(pygstminiobject_new_noref), (pygstminiobject_dealloc),
(pygstminiobject_clear):
make the miniobjs hash private with an underscore
add debugging for inserting/removal in hash
fix pygstminiobject_clear - it also needs to remove
from the global hash.  Fixes a nasty race problem in
test_buffer
* testsuite/test_buffer.py:
expand on the subbuffer test
2005-09-01 14:41:28 +00:00
Edward Hervey
1a39bca0ea gst/gst.override: Only display the filename and not the full path
Original commit message from CVS:
* gst/gst.override: (pygst_debug_log):
Only display the filename and not the full path
2005-08-11 13:23:20 +00:00
Edward Hervey
54936521fb gst/gst.override: gchar is way smaller than an int... resulting in negative line numbers in debug.
Original commit message from CVS:
* gst/gst.override: (pygst_debug_log):
gchar is way smaller than an int... resulting in negative line numbers
in debug.
2005-08-10 15:24:12 +00:00
Edward Hervey
4164682236 gst/gst.override: printf("urlencoded%20space") != printf("%s", "urlencoded%20space")
Original commit message from CVS:
* gst/gst.override: (pygst_debug_log):
printf("urlencoded%20space") != printf("%s", "urlencoded%20space")
Funny how a lot of problems have gone since that's fixed :)
2005-08-10 15:06:51 +00:00
Edward Hervey
139163d89e gst/: We now have debugging in gst-python ;) gst.[log|debug|info|warning|error]()
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
* gst/gstmodule.c:
We now have debugging in gst-python ;)
gst.[log|debug|info|warning|error]()
2005-08-04 10:44:16 +00:00
Edward Hervey
0f04024f5c bindings now wrap the gstreamer extra libs (adapter, controller,...)
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gstlibs.override:
* gst/gst.defs:
* gst/libs.defs:
* gst/gst.override:
* gst/gstlibs.override:
bindings now wrap the gstreamer extra libs (adapter, controller,...)
2005-08-03 16:54:57 +00:00
Edward Hervey
32dbfea730 Remove old documentation system
Original commit message from CVS:
* README-docs:
* configure.ac:
* Makefile.am:
Remove old documentation system
* gst/gst.defs:
* gst/gst-types.defs:
Updating defs files
* gst/gst.override:
Wrapped gst_flow_get_name() for const-gchar *
* gst/gstelement.override:
I really should test everything on 32 AND 64 bits systems...
* gst/gstevent.override:
Updated gst_event_new_seek() wrapper
Added gst_event_get_structure() wrapper
* gst/gstmodule.c:
Changed definition of gst.CLOCK_TIME_NONE to wrap GST_CLOCK_TIME_NONE
* testsuite/testhelpermodule.c:
gst_event_new --> gst_event_new_custom
2005-08-01 09:59:55 +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
fa5105c9f6 gst/gst.*: Probes are gone...
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
Probes are gone...
* Makefile.am:
* configure.ac:
* gst/Makefile.am:
* pygst.py.in:
Modifications to have parallel-installable gst-python
Works more or less in the same way as pygtk:
import pygst
pygst.require('0.9')
import gst
2005-07-01 16:32:09 +00:00
Edward Hervey
835f29e2bb codegen/codegen.py: let's not forget to wrap the MiniObject :)
Original commit message from CVS:
* codegen/codegen.py: (GstMiniObjectWrapper.constructor_tmpl):
let's not forget to wrap the MiniObject :)
* gst/gst-types.defs:
* gst/gst.defs:
Always keep up to date with the core
* gst/gstelement.override:
override for gst_element_query_position
* gst/pygstminiobject.c:
* gst/pygstminiobject.h:
* gst/gst.override:
PyGstMiniObject now properly wrap GstMiniObject and are referenced in a
global hash table
2005-06-28 16:13:53 +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
Thomas Vander Stichele
aedd023474 use macros to cast; fix probe warning
Original commit message from CVS:
use macros to cast; fix probe warning
2005-04-12 17:02:12 +00:00
Thomas Vander Stichele
487a4d94ec add noargs
Original commit message from CVS:
add noargs
2005-04-12 16:57:07 +00:00
Thomas Vander Stichele
fa0de98bdd put this back
Original commit message from CVS:
put this back
2005-04-12 16:32:07 +00:00
Thomas Vander Stichele
dd901080d7 wrap gst_plugin_get_version so it returns a tuple
Original commit message from CVS:
wrap gst_plugin_get_version so it returns a tuple
2005-04-12 16:29:49 +00:00
Johan Dahlin
e6cb4fa426 Revert last change(s)
Original commit message from CVS:
Revert last change(s)
2005-03-18 13:05:53 +00:00
Johan Dahlin
e6eb16b03b gst/gst.defs (element_factory_make): Caller owns return, fixes leak
Original commit message from CVS:
* gst/gst.defs (element_factory_make): Caller owns return, fixes leak
(get_caps): Ditto

* gst/gst.override (_wrap_gst_tag_list_get): Leak fix
(_wrap_gst_tag_list_subscript): Ditto

Reviewed by: Johan Dahlin <johan@gnome.org>
2005-03-15 13:20:08 +00:00
Thomas Vander Stichele
b6acbfe0a1 fix callback args so tests work
Original commit message from CVS:
fix callback args so tests work
2005-01-10 19:02:53 +00:00
Thomas Vander Stichele
4c20bb90a5 spaces break build
Original commit message from CVS:
spaces break build
2005-01-10 17:42:15 +00:00
Thomas Vander Stichele
b67833de2a first pass at wrapping GstProbe
Original commit message from CVS:
first pass at wrapping GstProbe
2005-01-10 17:29: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
Brian Warner
ebae649260 gst/gst.override: Apply patch from Brian Warner to throw a link error when element and pad linking fails.
Original commit message from CVS:
* gst/gst.override: Apply patch from Brian Warner to throw a link
error when element and pad linking fails.
2004-11-29 12:14:27 +00:00
Martin Soto
ca5445fcbe gst/gst.override (_wrap_gst_event_new_any) (_wrap_gst_event_new_discontinuous) (_wrap_gst_event_any_get_structure)
Original commit message from CVS:
2004-11-27  Martin Soto  <martinsoto@users.sourceforge.net>

* gst/gst.override (_wrap_gst_event_new_any)
(_wrap_gst_event_new_discontinuous)
(_wrap_gst_event_any_get_structure)
(_wrap_gst_registry_pool_plugin_list):
* gst/gst.defs (get_data, event_new_any, any_get_structure):
Added basic support for "ANY" (navigation) events.
Added basic support for discont events (only one value for now,
we are limited by the GStreamer API).
Now it is possible to access data in a GstBuffer as a string
Added a definition for method get_data of GstBuffer.

* gst/gst.override (_wrap_gst_structure_set_value): Add an
optional parameter to allow selection of the right G_TYPE. If no
type is specified, make an educated guess.
2004-11-27 09:41:17 +00:00
Johan Dahlin
2e23effc15 Use gst.element_factory_make in play example
Original commit message from CVS:
* examples/gst/play.py:
* gst/gst-types.defs:
* gst/gst.override:
* testsuite/Makefile.am:
* testsuite/common.py:
* testsuite/event.py:
* testsuite/test_event.py:

Use gst.element_factory_make in play example

Use boxed instead of pointer for gst.Event, it was such an ugly
hack.

Ref the event when sending using gst.element_send_event.

Add a bunch of testcases (and a C module), renamed event to
test_event.py
2004-11-23 10:16:58 +00:00
Johan Dahlin
857242d2f1 gst/gst.override (_wrap_gst_tag_setter_get_list): Override, to avoid compiler warning.
Original commit message from CVS:
* gst/gst.override (_wrap_gst_tag_setter_get_list): Override, to
avoid compiler warning.
2004-11-15 12:13:57 +00:00