1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650
|
=== release 1.28.0 ===
2026-01-27 17:02:33 +0000 Tim-Philipp Müller <tim@centricular.com>
* NEWS:
* RELEASE:
* gst-python.doap:
* meson.build:
Release 1.28.0
2026-01-14 09:25:24 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Import typing_extension only when type checking
We don't want that dependency at runtime.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10541>
2026-01-07 19:47:45 +0800 Yun Liu <yun.m.liu@intel.com>
* gi/overrides/gstanalyticsmodule.c:
analytics: Fix GstAnalyticsMtdType to PyLong conversion on MSVC
GstAnalyticsMtdType is a guintptr (64-bit on 64-bit systems), but was
being converted using PyLong_FromUnsignedLong which truncates to 32-bit
on MSVC where unsigned long is always 32-bit.
Use PyLong_FromSize_t instead, which correctly handles pointer-sized
unsigned integers on all platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10510>
2026-01-05 20:20:51 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development after 1.27.90
=== release 1.27.90 ===
2026-01-05 20:15:10 +0000 Tim-Philipp Müller <tim@centricular.com>
* NEWS:
* RELEASE:
* gst-python.doap:
* meson.build:
Release 1.27.90
2025-12-22 16:23:10 +0200 Sebastian Dröge <sebastian@centricular.com>
* gi/overrides/gstmodule.c:
gst: Remove various wrongly added includes
These were most likely added by clangd automatically.
Please use `-header-insertion=never` with clangd!
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8519>
2025-12-08 12:58:44 -0500 Daniel Morin <daniel.morin@collabora.com>
* testsuite/test_analytics.py:
gst-python: make python linter happy with test_analytics
- Change to be confirm fory PEP8
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10244>
2025-12-09 19:13:20 +0000 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development after 1.27.50
=== release 1.27.50 ===
2025-12-09 19:08:48 +0000 Tim-Philipp Müller <tim@centricular.com>
* NEWS:
* RELEASE:
* gst-python.doap:
* meson.build:
Release 1.27.50
2025-12-06 13:58:30 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: override signature cannot contain Gst prefix - again
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10329>
2025-12-06 13:59:12 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Caps/Context.get_structure are not nullable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10314>
2025-12-06 13:58:30 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: override signature cannot contain Gst prefix
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10314>
2025-12-05 12:16:03 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Keep fraction num/denom integers
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10305>
2025-12-05 09:36:58 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* testsuite/test_types.py:
python: Make ValueArray and ValueList iterable
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10305>
2025-12-05 08:53:52 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: f-string and more typing annotations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10305>
2025-12-04 11:00:29 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Ignore remaining type errors
Gst module from stubs contains overridden APIs and not only GI APIs.
That confuses the type checker.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-04 10:59:41 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Fix docstring format
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-04 09:10:08 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Avoid using Gst. prefix in override signature
It confuses the type checker.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-04 09:09:17 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: rename StructureWrapper to StructureContextManager
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-04 09:06:51 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Avoid using Gst._version private attribute
Private attributes are not part of typed stubs, so that create a type
checker error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-03 12:19:37 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Raise MissingPluginError when element name does not exist
Bin.make_and_add() was raising AddError when a plugin is missing, and it
was inconsistent with ElementFactory.make() which returns None.
Using exceptions is more pythonic.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-02 14:09:30 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* testsuite/test_gst.py:
python: Add list-like API to Gst.Caps
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-02 08:16:48 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* testsuite/test_gst.py:
python: Add dict-like API to Gst.Structure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-01 14:14:59 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/__init__.py:
* gi/overrides/Gst.py:
python: More typing fixes
Rename our MiniObject class in overrides to MiniObjectMixin to not
confuse the typing with Gst.MiniObject.
Add typing annotation to some special methods such as __enter__ because
pygobject-stubs now includes them.
Export MiniObjectMixin and StructureWrapper because they are exposed by
our API, so typing needs them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-11-30 19:14:23 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/meson.build:
devenv: export PYGI_OVERRIDES_PATH
Our _GI_OVERRIDES_PATH hack has been upstreamed in pygobject >=3.55,
with the new variable name PYGI_OVERRIDES_PATH.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10252>
2025-12-03 11:50:05 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* gi/overrides/gstmodule.c:
* testsuite/test_gst.py:
python: Override GstPadProbeInfo to get writable objects
Fixes: #4714.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9909>
2025-10-27 13:29:50 +0000 Thibault Saunier <tsaunier@igalia.com>
* testsuite/meson.build:
* testsuite/test_gst.py:
* testsuite/test_gst_init.py:
python: testsuite: Move initialization tests to separate file
The TestNotInitialized class contains tests that explicitly call Gst.init()
and Gst.deinit(), which can interfere with other tests in the same file that
expect GStreamer to already be initialized. Moving these tests to a separate
file ensures they run in isolation and don't affect other test cases.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9909>
2025-11-30 14:25:28 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/__init__.py:
* gi/overrides/Gst.py:
* gi/overrides/GstAnalytics.py:
* gi/overrides/GstApp.py:
* gi/overrides/GstAudio.py:
* gi/overrides/GstPbutils.py:
* gi/overrides/GstVideo.py:
python: Fix remaining typing warnings in overrides
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10243>
2025-11-30 12:42:47 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/GstAnalytics.py:
* gi/overrides/GstPbutils.py:
python: Coding style fixes
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10243>
2025-11-27 20:59:58 -0500 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* gi/overrides/GstApp.py:
python: Add some typing annotation to overrides
pygobject-stubs generate stubs for out overridden methods, but they are
missing annotations.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/10238>
2024-03-02 16:44:19 +0100 Michael Olbrich <m.olbrich@pengutronix.de>
* meson.build:
gst-python: fix cross-compiling
When cross-compiling, looking in the root filesystem of the build host to find
the Python library makes no sense. Instead, assume that the directory and file
name provided by Python are correct and use those without checking.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6252>
2025-11-02 13:24:50 +0200 Sebastian Dröge <sebastian@centricular.com>
* plugins/ges/python/gesotioformatter.py:
ges: otio: Use valid Python comment syntax
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9979>
2025-10-27 21:06:26 +0000 Thibault Saunier <tsaunier@igalia.com>
* plugins/ges/python/gesotioformatter.py:
python: gesotioformatter: Improve error handling robustness
Catch additional exceptions during OTIO initialization and handle cases
where Gst.warning fails when GStreamer is not yet initialized.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918>
2025-10-27 16:47:35 +0000 Thibault Saunier <tsaunier@igalia.com>
* testsuite/test_plugin.py:
python: testsuite: Fix reference leak in test_plugin
The testLoad test was leaking the pipeline and element references,
causing the garbage collection verification to fail. Explicitly delete
the pipeline after setting it to NULL state to ensure proper cleanup.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918>
2025-10-27 16:18:16 +0000 Thibault Saunier <tsaunier@igalia.com>
* testsuite/meson.build:
python: testsuite: Ensure core typelib paths are explicitly set for all tests
Set GstBase and Gst typelib paths explicitly at the start of the list
for all tests to avoid inheriting random directories from test-specific
configurations.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918>
2025-10-27 12:07:41 +0000 Thibault Saunier <tsaunier@igalia.com>
* testsuite/meson.build:
python: testsuite: Avoid spaces in test names
Simplify test names by removing 'Test ' prefix and spaces.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918>
2025-10-27 12:05:29 +0000 Thibault Saunier <tsaunier@igalia.com>
* gi/overrides/Gst.py:
python: Fix NotInitialized mechanism for introspected methods
The NotInitialized exception mechanism only searched override class
__dict__, missing introspected methods like Caps.from_string which
are defined in gi.repository parent classes.
This caused test failures with Python 3.13 and newer PyGObject versions.
Fix by collecting methods from both the override class and its
gi.repository parent, making it work generically for all classes.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9918>
2025-10-18 22:59:38 -0300 Thibault Saunier <tsaunier@igalia.com>
* plugin/gstpythonplugin.c:
python: Fix GDir leak in gst_python_load_directory
Add missing g_dir_close() call to fix memory leak.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9864>
2025-10-15 15:16:50 -0300 Thibault Saunier <tsaunier@igalia.com>
* plugins/ges/meson.build:
meson: python: add GES Python plugin path to meson devenv
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9853>
2025-09-28 09:48:05 -0300 Thibault Saunier <tsaunier@igalia.com>
* meson.build:
* plugin/meson.build:
* plugins/ges/meson.build:
* plugins/ges/python/gesotioformatter.py:
* plugins/meson.build:
ges: Move OTIO formatter to a separate Python plugin
The GES OpenTimelineIO formatter was previously embedded directly in
libges using GLib resources, this was all a bit complex for not much
benefit, moreover it started to crash recently.
Move the formatter to a standalone Python plugin that will be loaded
through the standard GStreamer Python plugin infrastructure making
it all more simple.
The formatter is now located in subprojects/gst-python/plugins/ges/
and will only be loaded when the Python plugin is available and
opentimelineio is installed.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4676
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9759>
2025-09-29 14:44:32 -0400 Xavier Claessens <xclaessens@netflix.com>
* meson.build:
meson: Remove "allow_fallback: true" from non essential deps
It means that if that dependency is not found on the system, and the
corresponding feature option is set to "auto", it won't build the
fallback subproject.
This reduces size and build time of default build.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9767>
2025-09-09 09:14:53 -0400 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
python: Add Gst.MapInfo.get_data() override
This is for consistency with the C API that has
gst_map_info_get_data().
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9665>
2025-09-07 20:39:44 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development after 1.27.2
=== release 1.27.2 ===
2025-09-07 20:34:55 +0100 Tim-Philipp Müller <tim@centricular.com>
* NEWS:
* RELEASE:
* gst-python.doap:
* meson.build:
Release 1.27.2
2025-09-01 18:39:56 +0300 Sebastian Dröge <sebastian@centricular.com>
* gi/overrides/Gst.py:
gst-python: Add workaround for pygobject handling nullability in gst_init() wrong
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9524>
2025-08-18 14:13:55 +0300 Sebastian Dröge <sebastian@centricular.com>
* gi/overrides/gstmodule.c:
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-07-30 18:24:49 -0400 Thibault Saunier <tsaunier@igalia.com>
* gi/overrides/meson.build:
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-07-08 20:00:07 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.build:
Back to development after 1.27.1
=== release 1.27.1 ===
2025-07-08 19:55:15 +0100 Tim-Philipp Müller <tim@centricular.com>
* NEWS:
* RELEASE:
* gst-python.doap:
* meson.build:
Release 1.27.1
2025-06-10 14:41:22 +0200 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
* scripts/gen-changelog.py:
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-01-09 16:26:50 +0100 Edward Hervey <edward@centricular.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8292>
2025-05-30 12:41:24 -0400 Xavier Claessens <xclaessens@netflix.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>
2025-06-01 15:31:12 -0400 Xavier Claessens <xclaessens@netflix.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>
2025-06-01 16:29:09 -0400 Xavier Claessens <xclaessens@netflix.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>
2025-05-30 11:34:00 -0400 Xavier Claessens <xclaessens@netflix.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9148>
2025-05-29 15:52:24 +0200 Thibault Saunier <tsaunier@igalia.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9134>
2025-05-23 13:09:04 +0200 Thibault Saunier <tsaunier@igalia.com>
* gi/overrides/Gst.py:
* gi/overrides/gstmodule.c:
* testsuite/test_gst.py:
python: Make use of the new structure.is_writable method
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>
2025-05-23 00:25:53 +0200 Thibault Saunier <tsaunier@igalia.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>
2025-05-22 23:26:23 +0200 Thibault Saunier <tsaunier@igalia.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>
2025-05-22 19:19:27 +0200 Thibault Saunier <tsaunier@igalia.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>
2025-05-18 15:25:00 +0200 Thibault Saunier <tsaunier@igalia.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/9027>
2025-05-09 11:14:03 -0400 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* testsuite/test_types.py:
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-09 08:53:31 -0400 Xavier Claessens <xclaessens@netflix.com>
* meson.build:
python: Fix usage of our overrides from devenv
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8952>
2025-05-09 08:23:13 -0400 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
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-08 13:19:06 -0400 Xavier Claessens <xclaessens@netflix.com>
* gi/overrides/Gst.py:
* testsuite/test_types.py:
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-08 14:06:32 -0400 Xavier Claessens <xclaessens@netflix.com>
* testsuite/test_types.py:
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-03-15 20:56:17 +0100 Tim-Philipp Müller <tim@centricular.com>
* meson.options:
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-04-01 18:35:50 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* 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: <plugin_target>,
variable: {'full_path': <plugin_target>.full_path()})` instead
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-01 18:04:28 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
* meson.build:
gst-python: Use allow_fallback instead of fallback
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-02-11 11:39:43 +0530 Santosh Mahto <santosh.mahto@collabora.com>
* gi/overrides/GstAnalytics.py:
* gi/overrides/gstanalyticsmodule.c:
* testsuite/test_analytics.py:
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-02-24 19:46:12 +0530 Santosh Mahto <santosh.mahto@collabora.com>
* gi/overrides/GstAnalytics.py:
* gi/overrides/gstanalyticsmodule.c:
* testsuite/test_analytics.py:
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-02-11 19:01:06 +0530 Santosh Mahto <santosh.mahto@collabora.com>
* gi/overrides/GstAnalytics.py:
* gi/overrides/gstanalyticsmodule.c:
* testsuite/test_analytics.py:
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-03-20 10:09:21 +0100 Matteo Bruni <matteo.bruni@gmail.com>
* 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: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8653>
2025-03-12 13:59:45 +0100 Tim-Philipp Müller <tim@centricular.com>
* RELEASE:
* meson.build:
Back to development in main branch after 1.26.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8621>
=== release 1.26.0 ===
|