122180 Commits

Author SHA1 Message Date
Víctor Manuel Jáquez Leal
1b023dee2e y4m: add color mappings
Now the chroma subsampling tag will include the chroma site. Tests
where updated accordingly.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
7c8a5cd28d y4mdec: descend from GstBaseParse
This is an overhaul/simplification of the element.

Now it supports seek, while the performance remains more or less the same.

Fixes: #4373
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
ef7829b6ad tests: add y4mdec unit test
simple decoding of a i420 15x15 red square, shared with the y4menc unit test.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
8d4a6a7d64 y4mdec: handle time segments
so chaining y4menc ! y4mdec is possible.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
82e6c1c640 y4mdec: instead of memcmp, use gst_video_info_is_equal()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
4cf598bcf3 y4m: share common code among encoder and decoder
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:47 +00:00
Víctor Manuel Jáquez Leal
6bcf0e3276 docs: update iOS player and tutorials, Android docs and symbols
docs: update symbols

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:46 +00:00
Víctor Manuel Jáquez Leal
16d34468fb y4m: move y4mdec to good to have a single y4m plugin
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8719>
2025-05-05 11:53:46 +00:00
Alexander Slobodeniuk
b9a5efbe07 webrtc: fix build with -DGST_REMOVE_DEPRECATED
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8901>
2025-05-04 22:19:55 +00:00
Alexander Slobodeniuk
14d4c249ad qtmux: fix building with -DGST_REMOVE_DEPRECATED
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8901>
2025-05-04 22:19:55 +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
Olivier Crête
fcf9f9ea06 lcevcdec: Use portable printf formatting macros
This should fix 32bit builds

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8926>
2025-05-02 20:12:10 +00:00
Olivier Crête
2a26b0e75c lcevcenc: Use portable printf formatting macros
This should fix 32bit builds

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8926>
2025-05-02 20:12:10 +00:00
Seungha Yang
80d9214747 examples: Add d3d12remap example
Adding a fisheye image transform example using d3d12remap element

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8887>
2025-05-02 22:11:04 +09:00
Seungha Yang
5db574fc35 d3d12: Add d3d12remap element
Adding new element to support pixel remapping operation

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8887>
2025-05-02 22:10:58 +09:00
Seungha Yang
9b295cf7a2 d3d12converter: Add support UV remap
Adding OpenCV's cv::remap() like feature

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8887>
2025-05-02 20:56:45 +09:00
Guillaume Desmottes
f600959f3b subprojects: add librsvg.wrap
Allow to build librsvg as a subproject.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6917>
2025-05-02 05:54:56 +00:00
Elliot Chen
c3d8347c81 gl/x11: check whether the display is x11 before using it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8808>
2025-05-02 01:39:33 +00:00
Seungha Yang
834b702e66 subprojects: pango: Fix source url
Regression introduced by 39a39f0077ef41738345c1072b4569bd76480f8f

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8921>
2025-05-01 23:16:25 +09:00
Jakub Adam
e8e1430a5b v4l2: pool: fix assert when mapping video frame with DMA_DRM caps
Make sure the pool recognizes DMA_DRM caps and parses them into
GstVideoInfo that has GstVideoFormat corresponding to "drm-format"
in the caps.

Fixes
  gst_video_frame_map_id: assertion 'info->finfo->format ==
meta->format' failed

Where the left side of the assertion was GST_VIDEO_FORMAT_DMA_DRM and
the right side was some GstVideoFormat converted from DRM fourcc.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8913>
2025-05-01 11:48:26 +00:00
Zhao, Gang
4fa01d5e4c midiparse: Quit parsing if error occurred
Invalid midi files will crash gstreamer or let it enter infinite
loop. Fixed it by quit parsing if error is encountered.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8396>
2025-05-01 07:42:39 +00:00
Zhao, Gang
43e3796d7d midiparse: Consider tempo change when calculating duration
Midi meta event set tempo would change tempo. Should consider tempo
change when calculating buffer PTS / duration.

Save tempo change to a list and calculate duration according to the
list.

Fixed #4158

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8396>
2025-05-01 07:42:39 +00:00
Nirbheek Chauhan
a7c92cbcab gst-examples: Port all webrtc examples to libsoup-3.0
Also do some indent changes, and add `static` while we're at it.

And move the libsoup wrap to 3.6.5, add nghttp2 wrap

We need to disable libsoup 3.0 tests because they fail to build on
Windows.

Closes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1115

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:57 +00:00
Nirbheek Chauhan
b8f8e4391c wraps: Move some fallback URLs from http to https
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:57 +00: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
92e91c25b5 gst-examples: Stop using deprecated python3 module
Also specify a minimum meson version, and remove the license entry.
It's incorrect, since there are various licenses for the examples.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:57 +00:00
Nirbheek Chauhan
48cbdf73a5 devtools: Fix meson warning when calling add_languages()
WARNING: add_languages is missing native:, assuming languages are wanted for both host and build.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:57 +00:00
Nirbheek Chauhan
2c39756b24 gst-ptp-helper: Fix meson warning about rust_crate_type
WARNING: Project targets '>= 1.4' but uses feature deprecated since
'1.3.0': rust_crate_type arg in static_library. Use rust_abi or
rust.proc_macro() instead.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:57 +00:00
Nirbheek Chauhan
39a39f0077 wraps: Update fallback URLs
ftp.acc.umu.se no longer hosts GNOME packages, so switch to Debian for
these URLs. This required bumping some of these wraps, including
harfbuzz for the pango bump.

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
Nirbheek Chauhan
1fdfab27a3 meson: Add include_type: 'system' everywhere to squelch wrap warnings
Wrap dependencies add a ton of warnings with the latest GCC in Fedora
42. Squelch them by specifying that these dependencies are not
a part of the gstreamer project, and should be treated as system deps.

libsoup needs some porting work for the bump, and vorbis/lame are
already at their latest releases.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:56 +00:00
Nirbheek Chauhan
10ae8136be meson: Bump wrap files, and add non-gitlab fallback mirrors
When fdo infra has downtime, gstreamer checkouts become unbuildable.
Try to alleviate that.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8753>
2025-04-30 10:18:56 +00:00
Philippe Normand
28d97212c5 wpe2: New WPE plugin making use of the "WPE Platform API"
Currently only a wpevideosrc2 element is exposed. GL and SHM buffer rendering
are supported, navigation events too (touch is un-tested). Audio pads handling
is not supported yet (that requires new WPE API).

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8789>
2025-04-29 08:10:01 +01:00
Hou Qi
7288b034ac v4l2videoenc: report error only when buffer pool parameters are invalid
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8908>
2025-04-28 13:20:00 +00:00
Olivier Crête
1ae7ab03d9 nice: Add function to fill in ufrag/pwd of remote candidates
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8900>
2025-04-28 11:43:40 +00:00
Olivier Crête
e2f07cf314 nice: Rename local candidate filling function
Rename it, and avoid using it on remote candidates, as it will put
the wrong value.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8900>
2025-04-28 11:43:40 +00:00
Olivier Crête
50c5191179 nice: Don't modify struct borrowed by signal
The struct is owned by libnice, you can't safely modify it

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8900>
2025-04-28 11:43:40 +00:00
Biswapriyo Nath
eeb27f1c71 gstaudioutilsprivate: Fix gcc 15 compiler error with function pointer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8904>
2025-04-28 06:45:16 +00:00
Alexander Slobodeniuk
a03c4de48f elements: use set_static_metadata when it's allowed
Those strings are nice but CPU doesn't want to copy them

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8905>
2025-04-26 19:30:15 +02:00
Sebastian Dröge
df46cfcb28 aggregator: Don't produce buffers when live but not in PLAYING yet
Especially in force-live=true mode it was possible to produce buffers before the
element was set to PLAYING as long as a clock was available already.

This could easily lead to outputting buffers too early, and e.g. before the
correct base time is set and available.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8897>
2025-04-26 11:08:12 +03:00
Sebastian Dröge
b05a498187 aggregator: Check after waiting if we're still running and otherwise stop
Previously we might've produced a buffer needlessly.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8897>
2025-04-26 11:07:27 +03:00
Daniel Morin
036801222f test:analytics: add more test on tracking mtd
- Verify we can retrive tracking-mtd and its data

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8868>
2025-04-24 18:58:22 +00:00
Andoni Morales Alastruey
37a57b57e6 ges: fix frame position for sources with par < 1
In #8693 the issue was fixed for par > 1 without noticing that
it was also broken for par > 1.
Given that the natural width and height only changes when par != 1,
the logic is simplified to do:
 * par_n < par_d -> the height is corrected
 * par_n > par_d -> the width is corrected

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8828>
2025-04-24 17:01:51 +00:00
Seungha Yang
d0e18d6353 h265parser: Fix num_long_term_pics bound check
As defined in the spec 7.4.7.1, calculates allowed maximum
value of num_long_term_pics

Fixes ZDI-CAN-26596

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4285
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8884>
2025-04-24 14:59:15 +00:00
Seungha Yang
b33ba2f264 h265parser: Fix max_dec_pic_buffering_minus1 bound check
Allowed max value is MaxDpbSize - 1

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8884>
2025-04-24 14:59:15 +00:00
Daniel Morin
bdf22740fe doc: fix formatting
Add spaces after sections otherwise bullet are not rendered properly

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8883>
2025-04-24 14:05:04 +00:00
Thibault Saunier
33f58f9da7 gst: debug: Add information about active tracers in dot files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8820>
2025-04-24 13:06:55 +00:00
Jochen Henneberg
67cafe5999 va: Fix H264 profile decision logic
The current logic would choose 'baseline' profiles only in case that
these profiles appear in the list first.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8882>
2025-04-24 08:43:01 +02:00
Eli Mallon
068385e83f qtdemux: unref simple caps after use
Otherwise we leak a GSTCaps object every time we
use qtdemux on a file with Opus audio

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8879>
2025-04-23 12:06:48 -07:00
Stéphane Cerveau
e3ae573651 vaav1enc: fix mem leaks in _av1_decide_profile
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8845>
2025-04-23 10:11:16 +00:00