122363 Commits

Author SHA1 Message Date
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
Stéphane Cerveau
c3f4b6bdaf vavp9enc: fix mem leaks in _vp9_decide_profile
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8845>
2025-04-23 10:11:16 +00:00
Sebastian Dröge
df662b5904 aja: Use the correct location of the AJA NTV2 SDK in the docs
Also there is no longer a proprietary version of it.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4381

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8874>
2025-04-23 09:28:16 +03: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
Thibault Saunier
476bd6109e macos: Move macos function documentation to the .h so the introspection has the information
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8854>
2025-04-22 19:25:30 +00:00
Jakub Adam
c8a802772c vapostproc: fix wrong video orientation after restarting the element
After READY -> NULL -> READY state change, the configured video
orientation didn't get applied on the new GstVaFilter instance.

Resettig prev_direction to default value in update_properties ensures
gst_va_filter_set_orientation() isn't inadvertently skipped.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8871>
2025-04-22 12:44:37 +02:00
Sebastian Dröge
fe7cb2e5b1 appsrc: Only notify drop property and not in/out
This mirrors the behaviour of audiorate / videorate better and observing in/out
buffers can be achieved more cheaply via other means.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8866>
2025-04-22 09:02:53 +03:00
Sebastian Dröge
9920897c4a appsink: Only notify drop property and not in/out
This mirrors the behaviour of audiorate / videorate better and observing in/out
buffers can be achieved more cheaply via other means.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8866>
2025-04-22 09:02:53 +03:00
Sebastian Dröge
953bc7cd0e x265enc: Add bitrate tags to the output
Based on the same code in x264enc.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8838>
2025-04-19 15:30:51 +00:00
Hou Qi
bf87ad72e4 v4l2: drop frames for those dequeued buffer with error flag
Some frames are dequeued with error flag, which may cause AV unsync if decoder
does not drop them as soon as possible. So add "output-error-dequeued" and
"capture-error-dequeued" signal for v4l2 to drop such frames.

Fixes #3031

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5479>
2025-04-18 14:14:54 +00:00
jan vermaete
3f0808a910 motioncells: fix typo in header comment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8867>
2025-04-18 10:52:23 +01:00
Jordan Yelloz
55bf8d3903 Revert "gir: Updated introspection for MSE library"
This reverts commit 2134247a9c88e5f01999bf18d06fbc4ea6f687b3.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8857>
2025-04-18 06:16:00 +00:00
Jordan Yelloz
c3f4bb532c gstsourcebuffer: Reverted ownership change for append method
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8857>
2025-04-18 06:16:00 +00:00
Seungha Yang
420b32b953 wasapi2: Log buffer QPC position and status flags
Log all infos of IAudioCaptureClient::GetBuffer

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8859>
2025-04-17 22:44:19 +00:00
Philippe Normand
2df08440fe ci: Update the ABI tag
Needed for new ICECandidateStats ABI

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8792>
2025-04-17 21:13:36 +00:00
Philippe Normand
72433cb942 webrtc: stats: Improve spec compliance for ICE candidate stats
We now fill the foundation, related-address, related-port, username-fragment and
tcp-type fields.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8792>
2025-04-17 21:13:36 +00:00
Thibault Saunier
d1f43f781a tracerutils: Do not warn on empty string as tracername
It doesn't matter if there is an "empty tracer" specified.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8860>
2025-04-17 18:40:05 +00:00