Original commit message from CVS:
2007-11-05 Johan Dahlin <johan@gnome.org>
* gstoptionmodule.c:
* Makefile.am:
* configure.ac:
Add a new module, gstoption which allows you to fetch the
GOptionGroup from gstreamer without initializing and parsing
the command line arguments. Requires PyGObject 2.15.0
Fixes#425847
* examples/option-parser.py (main): Example
Original commit message from CVS:
2007-11-01 Johan Dahlin <johan@gnome.org>
* gst/gst.override:
* gst/gst-0.10.15.ignore:
Make sure it still builds with GStreamer 0.10.14.
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
Patch from Alessandro Decina adding get_type_full and
get_protocols_full private vfuncs to the URIHandler interface
to allow bindings to support creating URI handlers.
Partially fixes: #339279
Original commit message from CVS:
* gst/gst.defs:
* gst/gst.override:
Thanks to Sebastien Merle for resurrecting a patch I'd forgotten about
that adds a constructor method for gst.GError, so you can create
error gst.Message.
Added a few GIL releases for overrides.
Original commit message from CVS:
* gst/gstobject.override:
Release the GIL when calling gst_object_get_path_string() since it can
cause deadlocks with new pygobject behaviour.
Original commit message from CVS:
* gst/base.defs:
* gst/libs.defs:
* gst/gst.defs:
* gst/gst.override:
Update API definitions for GStreamer core and gst-plugins-base.
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.15.ignore:
* gst/gst-pb-0.10.15.ignore:
* gst/gstversion.override.in:
New .ignore for 0.10.14.* API
Original commit message from CVS:
* testsuite/common.py:
* testsuite/test_bin.py:
* testsuite/test_element.py:
* testsuite/test_ghostpad.py:
* testsuite/test_pad.py:
* testsuite/test_pipeline.py:
Fix unit tests for pygobject >= 2.13.0
See the pygobject bug #320428 for more information about the changes.
Original commit message from CVS:
* gst/pygstminiobject.c: (pygstminiobject_dealloc):
Move up variable declaration to the top of the function.
* win32/vs6/gst_python.dsw:
* win32/vs6/libgstpython.dsp:
* win32/vs6/pygenfiles.dsp:
* win32/MANIFEST
Add new project files to build with VS6.
Original commit message from CVS:
2007-09-11 Andy Wingo <wingo@pobox.com>
* gst/gstmodule.c (DL_EXPORT): Remove the atexit(gst_deinit).
Atexit handlers are run after python has finalized (see Py_Exit in
pythonrun.c), but gst_deinit can potentially call back into python
e.g. for python-defined plugins. Not sure how other people are
avoiding this segfault, but I see it all the time on Gusty x86-64
with Flumotion.
Original commit message from CVS:
* gst/gst-0.10.11.ignore:
GstDataQueue was added in gstreamer-0.10.11
* gst/gst-0.10.14.ignore:
some GstDataQueue methods were added in 0.10.14
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.14.ignore:
* gst/gst-pb-0.10.14.ignore:
* gst/gstversion.override.in:
Adding version overrides for new core/base releases.
Original commit message from CVS:
reviewed by: Edward Hervey <bilboed@bilboed.com>
* gst/gst.defs:
Make .get_uri_type() methods return a GstURIType enum instead of an
integer.
Fixes#436620
Original commit message from CVS:
reviewed by: Edward Hervey <bilboed@bilboed.com>
* gst/extend/discoverer.py:
New parameter to the discoverer to change the default maximum frame
interleave.
Fixes#418222
Original commit message from CVS:
reviewed by: Edward Hervey <bilboed@bilboed.com>
* examples/gst-discover:
Show duration of audio/video streams.
Specify units for values.
Fixes#432521
Original commit message from CVS:
* gst/gstelement.override:
Override the proxy method for GstElement::request_new_pad virtual
methods since it can be called with NULL as the name.
Fixes#454259
Original commit message from CVS:
Patch by: Zaheer Abbas Merali <zaheermerali@gmail.com>
* gst/gstevent.override:
Copy the GstStructure given as argument to gst_event_new_custom
and gst_event_new_navigation, else it would be freed when the python
object wrapping that structure goes out of scope.
Fixes#450117
Original commit message from CVS:
* gst/extend/jukebox.py:
* gst/extend/sources.py:
Fixes for thread-safety, changes in behaviour with gst.Pad and
cleanup. Still has some issues.
Original commit message from CVS:
* examples/sinkelement-registry.py:
A quick modification of the sinkelement.py example that
shows how to register a pure-python gst.Element into the
registry for use in autoplugging or parse_launch lines.
Original commit message from CVS:
Patch by : Michael Smith <msmith@fluendo.com>
* gst/extend/discoverer.py:
Better support for demuxers that don't create all pads at startup.
Fixes#380966
Original commit message from CVS:
* gst/gst-0.10.12.ignore:
Add more API additions that weren't explicit in the release notes.
* gst/gst-0.10.13.ignore:
Personal note : remember to save file before commiting it.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-0.10.12.ignore:
* gst/gst-0.10.13.ignore:
* gst/gstversion.override.in:
Updating ignores for API additions
* gst/base.defs:
* gst/gst-types.defs:
* gst/gst.defs:
* gst/interfaces.defs:
* gst/libs.defs:
Massive wrapping of new API additions
* gst/gstbase.override:
* gst/gstevent.override:
* gst/gstmessage.override:
* gst/gstquery.override:
Overrides for methods with return values as arguments.
* gst/xwindowlistener.defs:
What the $#@# is this file still doing here ?? Removing it.
Original commit message from CVS:
* configure.ac:
* gst/Makefile.am:
* gst/gst-disable-loadsave.ignore:
* gst/gstversion.override.in:
Example of how to properly ignore methods that aren't available if
some feature is disabled in GStreamer core.
Original commit message from CVS:
* gst/gstelement.override:
Release the python lock when performing GStreamer calls that might
result in callbacks into python.
Original commit message from CVS:
* examples/pyidentity.py:
* gst/common.h:
* gst/gstpad.override:
Implement pad query proxying so that python elements can
answer pad queries. Fixes: #428299
Original commit message from CVS:
* examples/pyidentity.py:
Add a simple example that implements an identity-like element in
python and passes buffers through. It lacks buffer-alloc & query
handling at the moment, because the required gstreamer funcs aren't
wrapped.
* examples/sinkelement.py:
Make sure to call gobject.threads_init() in the example.
Original commit message from CVS:
* codegen/codegen.py:
Also ignore pointers and boxed if they're in ignore-type.
* gst/gst-0.10.7.ignore:
Add gst_type_find_factory_call_function to functions ignored before
0.10.7 since it requires GstTypeFind arguments.
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:
* testsuite/common.py:
A private variable of unittest.TestCase changed name in python 2.5.
This fixes make check with python2.5
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:
ChangeLog surgery : Indicate which bug last ocmmit fixed.
----------------------------------------------------------------------
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:
* examples/audio-controller.py:
Fix example, use proper property name. Doesn't change anything to the
way it used to work, but since it's an example it should be done
properly.
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:
2006-11-07 Andy Wingo <wingo@pobox.com>
* examples/Makefile.am (examples_DATA):
* examples/gst-discover: New tool, runs the discoverer on a file
and prints out what we get.
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:
reviewed by: Edward Hervey <edward@fluendo.com>
* examples/decodebin.py:
* examples/gst123:
* examples/vorbisplay.py:
Removed gst123 and vorbisplay examples which weren't working with
0.10, and replaced them with decodebin.py
Closes#362183 and #362202
Original commit message from CVS:
* examples/audioconcat.py:
* examples/cp.py:
Port to 0.10 by Jason Gerard DeRose <jderose@jasonderose.org>
Closes#362290 and #362272
* examples/bps.py:
Indentation fixes by Jason Gerard DeRose <jderose@jasonderose.org>
Closes#362011
Also small fix for Usage string
Original commit message from CVS:
* codegen/argtypes.py:
Revert the UInt64Arg modifications from upstream. It forces us to give
a PyLong, whereas we can directly use the 'K' argument parsing for that.
Original commit message from CVS:
* ltihooks.py:
Removed
* testsuite/common.py:
ltihooks is dead, long live gstltihooks. This should complete thomas'
fix of #357310.
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:
* codegen/codegen.py:
newer pygobject's pyg_constant_strip_prefix() now return a const gchar *
whereas PyModule_AddIntConstant() takes a normal gchar*.
Closes#349623
Original commit message from CVS:
2006-08-05 Andy Wingo <wingo@pobox.com>
* examples/synchronizer.py: Actually appears to work now, will
have to try with guadec videos on Monday.
* examples/remuxer.py (PlayerWindow.create_ui): Disable the
auto-adjusting of cut in and cut out times, it's annoying.
Original commit message from CVS:
2006-08-04 Andy Wingo <wingo@pobox.com>
* examples/synchronizer.py: New file, a bit of a hack to
remuxer.py, but for resyncing a bad ogg. Only UI at the moment..
Original commit message from CVS:
2006-07-28 Andy Wingo <wingo@pobox.com>
* examples/remuxer.py (RemuxBin._do_seek, Remuxer._bus_watch): Use
normal seeks instead of segment seeks so that EOS is handled
properly. Patch by James "Doc" Livingston <doclivingston at
gmail.com>. (#348416)
* examples/remuxer.py (RemuxBin._new_demuxed_pad): Increase the
buffer size for dealing with terribly muxed files.
Original commit message from CVS:
0.10.5 "My Little Poney wants some Funk" release
----------------------------------------------------------------------
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.