=== release 1.26.5 === 2025-08-07 19:06:46 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.5 2025-07-16 15:33:19 +0200 Tim-Philipp Müller * meson.build: Back to development after 1.26.4 === release 1.26.4 === 2025-07-16 15:26:21 +0200 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.4 2025-06-26 21:29:34 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.26.3 === release 1.26.3 === 2025-06-26 21:25:24 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.3 2025-01-09 16:26:50 +0100 Edward Hervey * testsuite/meson.build: gst-python/tests: don't depend on webrtc and rtsp-server They might not be built, nor are they needed for the tests Part-of: 2025-05-30 12:41:24 -0400 Xavier Claessens * gi/overrides/GstApp.py: * gi/overrides/gstmodule.c: * gi/overrides/meson.build: * testsuite/meson.build: * testsuite/test_appsink.py: python: Fix pulling events from appsink appsink.pull_object() is introspectable, but it needs a way to convert the GstMiniObject to its GstEvent/GstSample subclass. Part-of: 2025-06-01 15:31:12 -0400 Xavier Claessens * gi/overrides/Gst.py: python: Inherit MiniObject first This ensures methods it overrides takes precedence over gi's Gst.MiniObject. Python's MRO resolves in leftmost class first. Part-of: 2025-06-01 16:29:09 -0400 Xavier Claessens * gi/overrides/Gst.py: * testsuite/test_gst.py: python: Fix API break by not forcing usage of context manager caps.get_structure(0).get_name() used to work, but the usage of StructureWrapper broke it but forcing to wrap it in a "with" statement. We already have a Structure subclass, simply make it reference its parent Gst.Caps object. Part-of: 2025-05-30 11:34:00 -0400 Xavier Claessens * testsuite/meson.build: python: Fix unit tests running against system libgstreamer Unit tests for which `i.get(2, [])` is empty were not adding testsenv_ld_library_path to LD_LIBRARY_PATH. Part-of: 2025-05-30 00:03:12 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.26.2 === release 1.26.2 === 2025-05-29 23:56:43 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.2 2025-05-29 15:52:24 +0200 Thibault Saunier * gi/overrides/Gst.py: * testsuite/test_gst.py: python: Convert buffer metadata API to use @property decorators Convert buffer metadata getter/setter methods to Python properties for more intuitive access. This makes the API more Pythonic by allowing direct property assignment (buf.pts = 42) instead of method calls (buf.set_pts(42)). Updated properties: flags, pts, dts, duration, offset, offset_end Part-of: 2025-05-23 13:09:04 +0200 Thibault Saunier * gi/overrides/Gst.py: * gi/overrides/gstmodule.c: * testsuite/test_gst.py: python: Make use of the new structure.is_writable method Part-of: 2025-05-23 00:25:53 +0200 Thibault Saunier * gi/overrides/Gst.py: * gi/overrides/gstmodule.c: * testsuite/test_gst.py: python: Add overrides for Buffer/Query/Event/Context to handle writability And make them look more like proper MiniObject Part-of: 2025-05-22 23:26:23 +0200 Thibault Saunier * gi/overrides/Gst.py: * gi/overrides/gstmodule.c: * testsuite/test_gst.py: python: Factor out a MiniObject class that all mini object will be based on Making the API closer to what it should be as Caps are MiniObject Part-of: 2025-05-22 19:19:27 +0200 Thibault Saunier * gi/overrides/Gst.py: * gi/overrides/gstmodule.c: * testsuite/test_gst.py: python: Add a Caps.get_value variant that does not copy the structures Keeping the __getitem__ implementation the same way This also now make structure.set_value() raise an exception if the structure was not writable Part-of: 2025-05-18 15:25:00 +0200 Thibault Saunier * gi/overrides/Gst.py: * gi/overrides/gstmodule.c: * testsuite/test_gst.py: python: Add overrides to be able to write into the GstStructure inside GstCaps Add Python bindings for allowing to modify GstCaps structures with proper writability checks. Part-of: 2025-04-01 18:35:50 +0530 Nirbheek Chauhan * plugin/meson.build: gst-python: Fix warning about not specifying gst_plugins in the ../meson.build:231: WARNING: DEPRECATED use of the `plugins` variable in gst-python. ../meson.build:232: WARNING: The variable should now be called `gst_plugins` and use: ../meson.build:233: WARNING: `declare_dependency( link_with: , variable: {'full_path': .full_path()})` instead Part-of: 2025-04-01 18:04:28 +0530 Nirbheek Chauhan * meson.build: gst-python: Use allow_fallback instead of fallback Part-of: 2025-04-24 20:26:57 +0100 Tim-Philipp Müller * meson.build: Back to development after 1.26.1 Part-of: === release 1.26.1 === 2025-04-24 20:20:14 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.1 2025-03-20 10:09:21 +0100 Matteo Bruni * plugin/gstpythonplugin.c: gst-python: fix compatibility with PyGObject>=3.52.0 PyGObject 3.52.0 moved OverridesProxyModule _introspection_module to __slots__, causing Segmentation Faults when accessing the field. Since _introspection_module is used to get Gst.Element but is never actually used afterward, we fix the issue by removing this part. Fixes #4314 Part-of: 2025-03-11 20:23:16 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.26.0 Part-of: === release 1.26.0 === 2025-03-11 20:14:44 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.26.0 2025-02-23 23:52:57 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.25.90 === release 1.25.90 === 2025-02-23 23:44:10 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.25.90 2025-02-09 17:47:32 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.25.50 === release 1.25.50 === 2025-02-09 17:35:17 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.25.50 2025-01-22 10:44:33 -0300 L. E. Segovia * meson.build: * meson_options.txt: meson: Add python-exe option to override target Python installation Fixes #4185 Part-of: 2025-01-20 14:53:36 -0600 Olivier Crête * gi/overrides/GstAnalytics.py: * testsuite/test_analytics.py: python: Add __eq__ to Mtd classes Also programatically iterate all of the base classes to register them. Part-of: 2025-01-19 15:10:53 -0500 Daniel Morin * testsuite/test_analytics.py: gst-python: Test for GstAnalyticsRelationMeta iterator Part-of: 2025-01-03 10:37:14 -0500 Daniel Morin * gi/overrides/GstAnalytics.py: * gi/overrides/gstanalyticsmodule.c: * gi/overrides/meson.build: * meson.build: analytics: Adding iterator for AnalyticsRelationMeta Allow to create an iterator for Mtd's inside an AnalyticsRelationMeta Part-of: 2025-01-17 16:51:22 +0100 Mathieu Duponchelle * meson.build: meson: bump minimum version to 1.4 in every subprojects 36c01d05797ad9c7778939c54870f979bdcbba1f bumped to 1.4 for gst-devtools and the root project, but we usually keep those in sync everywhere. Part-of: 2025-01-14 15:00:43 +0000 Tim-Philipp Müller * meson.build: Back to development after 1.25.1 === release 1.25.1 === 2025-01-14 14:52:48 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-python.doap: * meson.build: Release 1.25.1 2025-01-06 15:16:02 -0600 Olivier Crête * testsuite/test_analytics.py: analytics: Tensor dimensions are always row-major or col-major Simplify by removing the extra fields, as this is what all frameworks give us. Part-of: 2024-12-30 18:05:36 -0500 Daniel Morin * testsuite/test_analytics.py: python tests: Adapt analytics unit test - Adapt test to batch size moved into dims field Part-of: 2024-12-18 17:11:33 -0300 Thibault Saunier * testsuite/meson.build: meson: Give the same name for api_version in all modules There were 2 version of it, apiversion and api_version, I chose the one with most occurencies: `api_version` Part-of: 2024-12-11 11:53:47 +0100 Oskar Fiedot * testsuite/test_analytics.py: analytics: add rotation to object detection mtd Part-of: 2024-11-15 11:46:14 -0300 Thibault Saunier * meson.build: meson: Bump minimum version to 1.3 Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4025 Part-of: 2024-11-04 19:33:09 -0500 Olivier Crête * testsuite/test_analytics.py: tensormeta: Add Python unit tests for the tensor meta APIs Part-of: 2024-10-27 12:49:40 -0300 Thibault Saunier * meson.build: meson: Remove c_std=gnu99 in validate and python This is not needed and causes warning with latest meson Part-of: 2024-08-07 16:26:12 -0400 Olivier Crête * testsuite/test_analytics.py: python tests: Add test for analytics segmentation Part-of: 2024-08-07 16:25:03 -0400 Olivier Crête * testsuite/meson.build: python tests: Add analytics lib runtime path This way, it will run it against the just compiled version when doing full build. Part-of: 2024-09-03 16:10:33 -0400 Xavier Claessens * testsuite/meson.build: meson: do not invoke pkgconfig directly in gst-python That bypass env setup by Meson and is dead code anyway because pluginsdirs is later overriden by the proper gst_dep.get_variable() solution. Part-of: 2024-07-24 18:39:00 +0200 Paweł Kotiuk * examples/stream_camera_rtsp.py: example: Add example for streaming camera rith RTSP Part-of: 2024-08-02 19:16:36 -0400 Olivier Crête * testsuite/meson.build: * testsuite/test_analytics.py: python: Add unit test for analytics API This is a way to validate that the GObject Annotations are correct Part-of: 2024-06-22 14:38:06 -0400 Dan Yeaw * meson_options.txt: gst-python: Fix python3 not found in Windows Part-of: 2024-05-17 13:44:17 +0000 Hyunwoo * README.md: gst-python: Fix README.md Part-of: 2024-04-26 03:37:47 +0530 Nirbheek Chauhan * meson.build: 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: 2024-04-26 02:59:37 +0530 Nirbheek Chauhan * meson.build: 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: 2024-04-12 19:54:55 +0530 Nirbheek Chauhan * meson.build: * plugin/meson.build: 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: 2024-03-05 12:58:57 +0000 Tim-Philipp Müller * RELEASE: * meson.build: Back to development Part-of: === release 1.24.0 ===