Commit graph

3988 commits

Author SHA1 Message Date
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
Sebastian Dröge
e7025400cb examples: Update to image 0.25
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1662>
2025-03-03 16:12:52 +02:00
Sebastian Dröge
35a8a59b88 Update to itertools 0.14
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1660>
2025-03-03 12:48:21 +02:00
Sebastian Dröge
1b762af1da Update Cargo.lock
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1660>
2025-03-03 12:46:50 +02:00
Sebastian Dröge
e972519a95 ci: Update to cargo-c 0.10.11
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1656>
2025-02-23 12:15:39 +00:00
Thibault Saunier
d2a59304b4 allocator: Add a method to retrieve the name of the allocated memory type
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1655>
2025-02-23 11:39:45 +00:00
Thibault Saunier
3f220ce5d9 tracer: Add memory init/free hooks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1655>
2025-02-23 11:39:45 +00:00
Sebastian Dröge
e9e4b970fa ci: Update to dav1d 1.5.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1653>
2025-02-21 10:23:21 +00:00
Sebastian Dröge
f2b93030dd ci: Update to meson 1.7.0
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1653>
2025-02-21 10:23:14 +00:00
Sebastian Dröge
fb11b22dc5 ci: Update to Rust 1.85
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1653>
2025-02-21 10:23:02 +00:00
Sebastian Dröge
6fc5984325 gstreamer: Implement ByteSliceExt generally over all AsRef<[u8]>
That covers `&[u8]` and `&mut [u8]` as well as `[u8]`, `[u8; N]`,
`Vec<u8>` and many other types.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1651>
2025-02-20 12:26:06 +00:00
Sebastian Dröge
8eb8ab921b Update CHANGELOG.md for 0.23.5 2025-02-17 19:31:10 +02:00
Sebastian Dröge
7235302f83 Update versions to 0.23.5 2025-02-17 19:31:00 +02:00
Sebastian Dröge
ecf41c0868 play: Disable new play message APIs for now
Making use of them requires API changes like in git main of the
bindings.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Carlos Bentzen
29b6dad9bd ci: update image tags for VVdeC dependency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Sebastian Dröge
77f341e62a Allow unused imports in auto-generated code
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Sebastian Dröge
557379bc27 pbutils: Fix new H266 codec helper bindings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Carlos Bentzen
e1e4162e1b ci: install VVdeC in base images
Needed for the vvdec element in gst-plugins-rs!1279

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Sebastian Dröge
4bfe498214 ci: Update to Rust 1.84.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Brad Hards
bfa1b0e3dd ci: update images tag for required qtdemux functionality
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Thibault Saunier
e6290ea268 docs: Fix documentation links to point to the main GStreamer documentation website
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00
Sebastian Dröge
fc3742ad45 ci: Update to cargo-c 0.10.9
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1632>
2025-02-17 18:09:12 +02:00