Commit graph

92 commits

Author SHA1 Message Date
Nirbheek Chauhan d7eeb62f38 meson: Fix Python library searching on Windows
Neither LIBDIR nor LIBPL are set with the native windows Python
(unlike MSYS2), so we need to use `prefix` which takes us to the
rootdir of the Python installation.

The name is also different: it's python312.dll, not python3.12.dll.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6734>
2024-04-27 01:30:21 +00:00
Nirbheek Chauhan 753aeccde7 meson: Fix Python library name fetching on Windows
`python.get_variable('FOO', [])` becomes `python.get_variable('FOO')`
due to how Meson treats empty arrays in arguments, which breaks the
fallback feature of get_variable().

So we need to actually check whether the variable exists before trying
to fetch it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6734>
2024-04-27 01:30:21 +00:00
Nirbheek Chauhan 073d8fc52a meson: Don't link to python for the gi overrides module
We only need to link to python directly for the plugin:

https://github.com/mesonbuild/meson/issues/7712#issuecomment-689357908

https://github.com/Homebrew/homebrew-core/pull/165176#issuecomment-2051835257

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6622>
2024-04-13 22:24:32 +00:00
Tim-Philipp Müller 756064b9c3 Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6261>
2024-03-05 12:58:57 +00:00
Tim-Philipp Müller b125253cad Release 1.24.0 2024-03-04 23:59:25 +00:00
Edward Hervey a3980f4838 docs: Use Discourse and Matrix as prefered communication channels
Part of: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6220
2024-02-27 09:35:47 +01:00
Tim-Philipp Müller d474de8ff0 Release 1.23.90 2024-02-23 18:20:11 +00:00
Nirbheek Chauhan b5b7064419 gst-python: Print exception if pygobject fails to initialize
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159>
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan 768aeb739a meson: Use cdata.set_quoted() for configuration data
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159>
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan 64fdded13a ges, gst-python: Fix libpython dlopen on macOS
First encountered at https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1171#note_2290789

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159>
2024-02-21 21:47:12 +00:00
Nirbheek Chauhan 2cc9a181f9 ges, gst-python: Rework libpython loading to be relocatable
If we don't specify a path for loading, the runtime linker will search
for the library instead, which will use the usual mechanisms: RPATHs,
LD_LIBRARY_PATH, PATH (on Windows), etc.

Also try harder to load a non-devel libpython using INSTSONAME, if
available.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6159>
2024-02-21 21:47:12 +00:00
Tim-Philipp Müller 88412ef100 Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6126>
2024-02-15 16:38:53 +00:00
Tim-Philipp Müller 88751d4110 Release 1.23.2 2024-02-15 15:37:17 +00:00
Tim-Philipp Müller 2111d6f015 Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6066>
2024-02-06 18:29:31 +00:00
Tim-Philipp Müller 9255e397f0 Release 1.23.1 2024-02-06 16:43:27 +00:00
Edward Hervey 900a9c47be gst-python: Fix unit test for python >= 3.12
unittest.TestCase.assertEquals was marked deprecated since 3.0 and was finally
removed in 3.12

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5633>
2024-02-02 14:15:49 +01:00
Edward Hervey 7c68ef354b gst-python: Fix override loading in python >= 3.12
The `imp` module got removed in python 3.12 and the `importlib` module should be
used instead.

This is also a good excuse to switch to the new finder module from PEP 451 :
https://www.python.org/dev/peps/pep-0451/

This only requires implement the `find_spec()` method in our custom loaders

Co-authored-by: Stefan <107316-stefan6419846@users.noreply.gitlab.freedesktop.org>
Co-authored-by: Jordan Petrids <jordan@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5633>
2024-02-02 13:30:38 +01:00
Thibault Saunier f12a15a374 python: Fix trying to call len() on an int
n_tags already represents the len of the TagList

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6012>
2024-01-30 00:47:47 +00:00
Stefan 3321851786 gst-python: Drop obselete python2 code path
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6007>
2024-01-29 22:33:58 +00:00
Tim-Philipp Müller c84285d44d meson: bump Meson requirement to >= 1.1 for all modules
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6002>
2024-01-29 01:11:55 +00:00
Gwyn Ciesla 2be13c82aa gst-python: Fix API call for Python 3.13
_PyUnicode_AsString() is deprecated and PyUnicode_AsUTF8() should be used
instead. The new function was introduced in Python 3.3 and returns const
since Python 3.7, which is now required.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5587>
2023-11-03 21:02:48 +05:30
Jan Schmidt f46831a51d python: Add a GstDiscoverer example
Port the old gst-discover example to 1.0

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt df7e8db84c python: Add a GstTagList override
Add an override that makes a GstTagList act like a dict

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt 1de720ad78 python: Add gst_video_converter.py example
Add an example of using compositor and the samples-selected signal
to do frame-by-frame animation by updating pad properties and
the pad's GstVideoConverter configuration

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt 9b35e0ad26 python: Remove some old examples
Remove some old examples that have been ported

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt 21bc5ebd7b python: update examples
Update various examples for brokenness, bindings and pep8 format changes

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt f48442d62a python: Update plugin examples
Fix warnings from bindings changes in various plugin
examples

Fix the python mixer plugin by ensuring that PIL
is not holding a reference to mapped GstBuffer memory.

Port the filesrc example from old_examples

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:27 +00:00
Jan Schmidt 627a956768 python: Fix python plugins that implement URIHandler
Ensure the generated URI strv list is NULL terminated in the python
binding

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5187>
2023-08-21 17:16:26 +00:00
Andoni Morales Alastruey 3683cd9052 gst-python: fix build and usage in Windows
Windows require the python module to be linked to GStreamer.
With msvc and /FORCE:UNUSED, links succeeds but it failes to
load the library at runtime.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1584>
2023-07-21 06:37:45 +00:00
Olivier Crête 48c43e5b7f gst-omx: Retire the whole package
The OpenMAX standard is long dead and even the Raspberry Pi OS
no longer supports it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4976>
2023-07-16 19:10:03 +00:00
Nicolas Dufresne 60afc6cc95 python: Fix variable name for gst_element_factory_make
In order to use keyword argument, the names shoudl match the documentation. Both
arguments name was changed in the override.

Fixes: #2779
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4982>
2023-07-11 14:39:30 +00:00
Nirbheek Chauhan b87aaf4d28 python: More functions can be called before gst_init()
Configuration of our debugging system is possible before init, and in
fact is necessary too, otherwise the settings won't apply to logging
that happens during init.

For instance, since you cannot register a log function before you call
init in python, there is no way for you to log errors during init to
whatever logging service your app uses.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4753>
2023-06-02 13:25:23 +00:00
Nirbheek Chauhan 62951ed379 python: auto-pep8 whitespace issues in overrides
Needed because the next commit edits this file.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4753>
2023-06-02 13:25:23 +00:00
Thibault Saunier c79574c2d3 python: Do not link GStreamer in the overrides
Symbols will already be present thanks to pygobject dlopenning the correct lib

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4128>
2023-05-31 15:17:11 +00:00
Tim-Philipp Müller 81174152aa gst-python: add proper README and delete useless placeholder files
Fixes https://gitlab.freedesktop.org/gstreamer/gst-python/-/issues/54

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4693>
2023-05-29 23:46:49 +00:00
Mathieu Duponchelle 2b4dca84dd gst-python: overrides: provide default to Gst.init()
Allows using Gst.init() as without the overrides, can be convenient.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-python/-/issues/51
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4692>
2023-05-25 16:32:44 +00:00
Frank Dana 2c265df99e python: Use arch-specific install dir
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3004>
2023-03-01 12:40:07 +00:00
Thibault Saunier da11e6610e meson: Use python module to install override files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3929>
2023-02-16 19:43:11 +00:00
Tim-Philipp Müller 41c69372b5 Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3775>
2023-01-23 23:04:53 +00:00
Tim-Philipp Müller f13c65d977 Release 1.22.0 2023-01-23 19:41:07 +00:00
Tim-Philipp Müller a9ec35b1ca Release 1.21.90 2023-01-13 19:08:48 +00:00
Tim-Philipp Müller 1f65d7cc5c Back to development 2022-12-05 02:29:08 +00:00
Tim-Philipp Müller fd6a3948c6 Release 1.21.3 2022-12-05 01:28:21 +00:00
Tim-Philipp Müller 84e74ceb10 Remove ChangeLog files from git repository
This information is tracked fully in the git repository, so
no point having the ChangeLog duplicate it, and it interferes
with grepping the repository.

We are going to create the ChangeLogs on the fly when generating
tarballs going forward (with a limited history), since it's still
valuable for tarball consumers to be able to easily see a list of
recent changes.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/73

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>
2022-12-04 18:16:25 +00:00
Tim-Philipp Müller 9eb081ea0a meson: Generate ChangeLog files for release tarballs on dist
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3521>
2022-12-04 18:16:25 +00:00
Tim-Philipp Müller db450689db Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3358>
2022-11-08 02:08:08 +00:00
Tim-Philipp Müller 3e29ac35c4 Release 1.21.2 2022-11-07 23:54:03 +00:00
Tim-Philipp Müller 98d2f958a9 Update ChangeLogs for 1.21.2 2022-11-07 23:53:57 +00:00
Tim-Philipp Müller 99bbb1ef35 Back to development
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3115>
2022-10-04 03:57:31 +01:00
Tim-Philipp Müller 9820e58be6 Release 1.21.1 2022-10-04 01:18:20 +01:00