Sebastian Dröge
b051285e03
python: Handle buffer PTS/DTS/duration/offset/offset-end as unsigned long long
...
Previously these fields were truncated to 32 bits on 32 bit platforms and
64 bit Windows because of using `unsigned long`.
Thanks to Tim Williams for reporting and debugging this issue.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4603
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9567 >
2025-08-18 15:43:50 +00:00
Thibault Saunier
3fe0127a64
scripts: git-hooks: ci: Add GES children properties documentation check
...
Add a pre-commit hook that automatically checks if GES children properties
documentation is up to date when GES source files are modified. The hook
runs the document-children-props.py script and warns if the generated
documentation files have changes that need to be committed.
This ensures that children properties documentation stays synchronized
with code changes and prevents outdated documentation from being merged.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5987 >
2025-08-05 12:48:38 +00:00
Tim-Philipp Müller
24ee088cee
Back to development after 1.27.1
2025-07-08 20:00:07 +01:00
Tim-Philipp Müller
1fa56616fb
Release 1.27.1
2025-07-08 19:58:12 +01:00
Víctor Manuel Jáquez Leal
82a71a7739
gstreamer-vaapi: remove subproject
...
It's almost superseded by va plugin in gst-plugins-bad.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9200 >
2025-06-10 17:32:46 +00:00
Edward Hervey
435b0799fc
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8292 >
2025-06-10 13:47:25 +00:00
Xavier Claessens
06851d2e4c
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148 >
2025-06-04 20:49:53 +00:00
Xavier Claessens
a1187bfcbf
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148 >
2025-06-04 20:49:53 +00:00
Xavier Claessens
bbf60305ed
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148 >
2025-06-04 20:49:52 +00:00
Xavier Claessens
f7c52a22a0
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148 >
2025-06-04 20:49:52 +00:00
Thibault Saunier
e2f54cc405
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9134 >
2025-05-29 16:18:11 +00:00
Thibault Saunier
515bf888a9
python: Make use of the new structure.is_writable method
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
f0e1591111
python: Add overrides for Buffer/Query/Event/Context to handle writability
...
And make them look more like proper MiniObject
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
0201423142
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
da9365176b
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Thibault Saunier
c3d2209c1f
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027 >
2025-05-25 15:16:37 +02:00
Xavier Claessens
0172e47a79
python: Add Gst.Float wrapper
...
When the float python type is used inside a GstValueArray, it is
converted to a G_TYPE_DOUBLE GValue. Sometimes it is important to be
able to force G_TYPE_FLOAT GValue, for instance to set the the
"mix-matrix" property on audioconvert.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8957 >
2025-05-10 23:23:14 +00:00
Xavier Claessens
d5995b9302
python: Fix usage of our overrides from devenv
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952 >
2025-05-10 21:38:06 +00:00
Xavier Claessens
6833932e92
python: Optimize ValueArray.get_size()
...
There is no need to call into C layer as we have the python list
already.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952 >
2025-05-10 21:38:06 +00:00
Xavier Claessens
c2a4c3a53a
python: override Gst.ValueArray.append_value()
...
This ensures that self.array is kept up to date.
Add append() method that is more natural than the static method.
Allow creating empty ValueArray by omitting the constructor parameter.
Fixes : #3114
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952 >
2025-05-10 21:38:05 +00:00
Xavier Claessens
20904a1b92
python: Fix coding style errors in unit tests
...
Otherwise pre-commit does not pass.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952 >
2025-05-10 21:38:05 +00:00
Tim-Philipp Müller
128710caab
meson: rename meson_options.txt to meson.options
...
Which is supported since Meson 1.1:
https://mesonbuild.com/Release-notes-for-1-1-0.html#support-for-reading-options-from-mesonoptions
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8651 >
2025-05-03 10:38:25 +01:00
Nirbheek Chauhan
b416aa9b8f
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: <plugin_target>,
variable: {'full_path': <plugin_target>.full_path()})` instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753 >
2025-04-30 10:18:57 +00:00
Nirbheek Chauhan
c4d2f6e87a
gst-python: Use allow_fallback instead of fallback
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753 >
2025-04-30 10:18:56 +00:00
Santosh Mahto
7c7832fee1
python analytics: Add api iter_on_type to iterate over specific Mtd types
...
This adds new Python api `iter_on_type()` to GstAnalyticsRelationMeta
to iterate over mtd type specified by argument.
usage:
```
for i in rmeta.iter_on_type(GstAnalytics.ODMtd):
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8459 >
2025-04-22 18:54:08 -04:00
Santosh Mahto
e68eb7bb23
analytics: Add python api to get relation path
...
A new api `Mtd.relation_path()` is added to get relation chain
between two Mtd in RelationMeta.
Usage:
```
for i in mtd1.relation_path(mtd2, max_span=4, relation_type=...):
pass
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8556 >
2025-04-22 20:41:19 +00:00
Santosh Mahto
4c4e80d286
gstanalytics: Add api iter_direct_related python to GstAnalyticsMeta
...
The API `iter_direct_related` allows to iterate over directly related
Mtd objects.
Usage:
```
for i in mtd.iter_direct_related(GstAnalytics.RELATE_TO,
GstAnalytics.ODMtd)
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8461 >
2025-04-14 19:11:29 +00:00
Matteo Bruni
69bba61e54
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8653 >
2025-03-25 19:43:52 +00:00
Tim-Philipp Müller
1a971d8e12
Back to development in main branch after 1.26.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8621 >
2025-03-12 14:21:08 +01:00
Tim-Philipp Müller
d31ce8e5e1
Release 1.26.0
2025-03-11 20:20:16 +00:00
Tim-Philipp Müller
644a005ecb
Back to development after 1.25.90
2025-02-23 23:52:57 +00:00
Tim-Philipp Müller
94a3e912ab
Release 1.25.90
2025-02-23 23:44:10 +00:00
Tim-Philipp Müller
bf5f642841
Back to development after 1.25.50
2025-02-09 17:47:32 +00:00
Tim-Philipp Müller
3e8f88d756
Release 1.25.50
2025-02-09 17:35:17 +00:00
L. E. Segovia
41b779e57c
meson: Add python-exe option to override target Python installation
...
Fixes #4185
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8337 >
2025-01-28 17:31:12 +00:00
Olivier Crête
86bac82c8e
python: Add __eq__ to Mtd classes
...
Also programatically iterate all of the base classes to register them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Daniel Morin
ad4fa052e5
gst-python: Test for GstAnalyticsRelationMeta iterator
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Daniel Morin
e294b1b773
analytics: Adding iterator for AnalyticsRelationMeta
...
Allow to create an iterator for Mtd's inside an AnalyticsRelationMeta
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8237 >
2025-01-20 21:16:32 +00:00
Mathieu Duponchelle
17e53f8c95
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8312 >
2025-01-17 20:22:34 +01:00
Tim-Philipp Müller
a059536b58
Back to development after 1.25.1
2025-01-14 15:00:43 +00:00
Tim-Philipp Müller
ca9d85c3b7
Release 1.25.1
2025-01-14 14:57:58 +00:00
Olivier Crête
33259e7ea4
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8250 >
2025-01-08 21:47:52 +00:00
Daniel Morin
e272e229e8
python tests: Adapt analytics unit test
...
- Adapt test to batch size moved into dims field
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8191 >
2025-01-03 23:14:39 +00:00
Thibault Saunier
2c9a642b66
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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8178 >
2024-12-20 20:19:28 +00:00
Oskar Fiedot
a3a7acdd0a
analytics: add rotation to object detection mtd
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7938 >
2024-12-11 11:54:15 +01:00
Thibault Saunier
7010efc8ed
meson: Bump minimum version to 1.3
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4025
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7899 >
2024-11-16 03:02:27 +00:00
Olivier Crête
65549da07e
tensormeta: Add Python unit tests for the tensor meta APIs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6000 >
2024-11-08 14:58:49 +00:00
Thibault Saunier
a1081d08c1
meson: Remove c_std=gnu99 in validate and python
...
This is not needed and causes warning with latest meson
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7766 >
2024-10-29 13:58:09 +00:00
Olivier Crête
b87d5e080d
python tests: Add test for analytics segmentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6026 >
2024-10-17 18:13:03 +00:00
Olivier Crête
cf6660e3d7
python tests: Add analytics lib runtime path
...
This way, it will run it against the just compiled version when doing full build.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6026 >
2024-10-17 18:13:03 +00:00