Commit graph

4009 commits

Author SHA1 Message Date
Sebastian Dröge
c35c6eeb11 Regenerate with latest gir / GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
a4add3fbcf Update gir
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
12466622a3 examples: Simplify basic futures / async examples a bit
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
0023abda88 Update GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
624ec06916 ci: Remove typos CI job
It's not really scalable in a repository with lots of different pieces
of code. What is an intentional typo (`fiel`) in one directory might be
an actual typo (`field`) elsewhere, and unfortunately this can't be
configured in a useful way on a per-directory basis.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
a78db19139 ci: Update to cargo-c 0.10.12
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
15b837de89 ci: Update to Rust 1.86
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
b3036ff258 ci: When building Windows images, make use of subprojects script instead of manually handling cache
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
1c4195f6a7 ci: Update Windows base image
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
5ff9e99e0c egl: Add prelude to re-export new extension trait
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
127ec39f44 ci: Update to meson 1.7.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
3849a49d3e ci: Update to rustup 1.28.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
0c11d5b6ff ci: Update image version and update to Rust 1.85.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
037d309ed1 Update GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
ca76a41666 deny: Add override for paste
It's unmaintained now but there's no alternative.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Thibault Saunier
6b207d8695 Add 1.28 version features and update 1.26 requirement from 1.25 to 1.26
And update the ci docker images to pull in latest GStreamer 1.28

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Carlos Bentzen
1891e4be68 ci: update image tags for latest gst main
In order to fetch fix in gstreamer!8588 that is needed by gst-plugins-rs!1279.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Carlos Bentzen
43b4c85a86 ci: fix vvdec lib install prefix
Set CMAKE_INSTALL_LIBDIR directly so that the x86_64-linux-gnu suffix is
correctly set.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1719>
2025-05-13 10:16:32 +03:00
Sebastian Dröge
a51339de79 tag: Add bindings for language code API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1726>
2025-05-04 10:12:38 +00:00
Sebastian Dröge
a361daedac audio-buffer: Don't store whether unmapping is necessary in AudioBufferRef
This is already stored as part of the enum discriminant.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1725>
2025-05-04 10:59:01 +01:00
Sebastian Dröge
e978e247dd audio-buffer: Store buffer directly as part of the GstAudioBuffer
There's no need to store it separately. As GstAudioBuffer does not own
a reference to the buffer it has to be manually unreffed after
unmapping.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1725>
2025-05-04 10:59:01 +01:00
Sebastian Dröge
fd9cc77438 video-frame: Store buffer directly as part of the GstVideoFrame
There's no need to store it again separately, and this allows dropping
the usage of GST_VIDEO_FRAME_MAP_FLAG_NO_REF too.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1725>
2025-05-04 10:59:01 +01:00
Sebastian Dröge
aad6fdfed3 streamproducer: When discarding a buffer then a new keyframe is necessary
If configured for requiring keyframes.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1721>
2025-04-26 12:16:08 +01:00
Sebastian Dröge
06af746f40 streamproducer: Add getter for the stream producer to the consumption link
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1721>
2025-04-26 12:16:08 +01:00
Seungha Yang
7fa1de5862 gstreamer: Fix leak in parent_request_new_pad()
request_new_pad() does not take ownership of name string

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1716>
2025-04-14 17:42:31 +01:00
Jordan Petridis
efcc86e0ff ci: Force git-fetch-with-cli on windows as well
We already do this on linux, do this on windows as well

We need this as git has better handling of redirects, and
we are running into issues after gitlab.freedesktop.org
switched to using a cdn proxy.

Similar to the original issue [1]

[1]: https://gitlab.freedesktop.org/gstreamer/gst-ci/-/issues/71

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1710>
2025-04-09 16:41:20 +01:00
Sebastian Dröge
24439d73aa streamproducer: Drop pad probe and callbacks from appsink when releasing the StreamProducer
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1708>
2025-04-08 09:04:49 +03:00
Sebastian Dröge
f772510465 audio: Use correctly aligned arrays for audio pack/unpack test
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/550

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1702>
2025-04-07 00:03:20 +01:00
Mathieu Duponchelle
7afac666e9 streamproducer: add wait_for_keyframe configuration option
By default, StreamProducer will wait for keyframes after a DISCONT.

This is not always desirable, and this commit exposes a method for
controlling that behavior.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1699>
2025-04-05 18:16:46 +03:00
Sebastian Dröge
ae6769a8e7 bufferlist: Add drain() method to iterate over the list while removing buffers
This behaves similar to the same on Vec, especially the whole range is
dropped when the iterator is dropped.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1692>
2025-03-29 17:11:26 +02:00
Tim-Philipp Müller
59865e16d2 ci: don't run coverage job by default on 0.23 stable branch
Coverage is mostly useful for development, and development
is done on the main branch.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1686>
2025-03-28 01:01:35 +00:00
Sebastian Dröge
318196b846 ci: Configure nextest timeout in the right place
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1689>
2025-03-28 00:23:00 +00:00
Sebastian Dröge
e26fe558ac childproxy: Add set_child_property_from_str() convenience API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1685>
2025-03-27 00:05:54 +00:00
Sebastian Dröge
72a59af809 ci: Decrease test timeouts
Consider tests slow if they take more than 20s and terminate them
after 80s, and if they're not responsive kill them 5s later.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1683>
2025-03-26 23:51:05 +00:00
Sebastian Dröge
06f9235add gstreamer: Implement Default for BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1684>
2025-03-26 23:22:08 +00:00
Sebastian Dröge
5657104996 video: Implement Default for VideoAlignment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1684>
2025-03-26 23:22:08 +00:00
Sebastian Dröge
0450ce589a bufferpool: Also consider flags when comparing BufferPoolAcquireParams for equality
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1675>
2025-03-26 08:50:57 +00:00
Sebastian Dröge
8ef484ecf0 bufferpool: Add setters to BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1675>
2025-03-26 08:50:57 +00:00
Sebastian Dröge
7ca1e586d5 bufferpool: Derive Copy and Clone for BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1675>
2025-03-26 08:50:57 +00:00
Sebastian Dröge
174a4e9ea7 video: Add setters for VideoAlignment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1676>
2025-03-26 08:21:05 +00:00
Sebastian Dröge
89eab13586 video: Derive Copy for VideoAlignment
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1676>
2025-03-26 08:21:05 +00:00
Sebastian Dröge
efeb5cfff8 typefind: Catch panics when calling typefind functions
Otherwise a panic during typefinding will abort the process.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1677>
2025-03-26 03:38:46 +00:00
Sebastian Dröge
5ac74ce4d4 audio-info: Add API for creating a builder from an existing AudioInfo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1674>
2025-03-26 01:47:33 +00:00
Sebastian Dröge
a46d7d18b9 video-info: Add API for creating a builder from an existing VideoInfo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1674>
2025-03-26 01:47:33 +00:00
Sebastian Dröge
60901e27d1 video-info: Use unions for setting extension fields instead of pointer arithmetic
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1674>
2025-03-26 01:47:33 +00:00
Sebastian Dröge
15f1ba0c94 allocator: Implement PartialEq and Eq for AllocationParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1673>
2025-03-26 01:04:15 +00:00
Sebastian Dröge
5e817d39c8 allocator: Implement Copy on AllocationParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1673>
2025-03-26 01:04:15 +00:00
Sebastian Dröge
ec4235b0c3 allocator: Add setters to AllocationParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1673>
2025-03-26 01:04:15 +00:00
Thibault Saunier
dcc206ed68 base: Lower debug logging on allocation query errors
This happens often and is not fatal

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1672>
2025-03-26 00:26:55 +00:00
Sebastian Dröge
3d31d72f08 tutorials: Update to termion 4
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1662>
2025-03-03 16:13:01 +02:00