Commit graph

1838 commits

Author SHA1 Message Date
Sebastian Dröge
c5b2b64f1b Update CHANGELOG.md for 0.24.0 2025-07-15 14:10:38 +03:00
Sebastian Dröge
e280d98182 Regenerate with latest gir 2025-07-15 12:15:51 +03:00
Sebastian Dröge
eb8a91325f Update CHANGELOG.md for 0.23.7 2025-07-15 12:15:36 +03:00
Sebastian Dröge
d60630144a Update CHANGELOG.md for 0.23.6 2025-07-15 12:15:36 +03:00
Sebastian Dröge
b9ef8f9e7c Regenerate with latest gir / gir-files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1754>
2025-07-14 14:38:02 +03:00
Sebastian Dröge
9a5e45c56f bufferpool: Allow passing any subclass of Allocator to the config
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1751>
2025-07-12 17:44:13 +03:00
Thibault Saunier
aacf979652 gstreamer: Add safe Rust bindings for the new LogContext API
Implements LogContext and LogContextBuilder bindings for GStreamer 1.28's
new log context API, providing "log once" functionality and throttling
support.

The LogContext can be used anywhere DebugCategory is used, enabling
message deduplication and periodic logging with configurable intervals.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/555

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1747>
2025-07-08 14:30:21 +00:00
Sebastian Dröge
b96e0438ae gstreamer: Use from_glib_ptr_borrow() instead of manual pointer operations
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1749>
2025-07-03 17:47:13 +03:00
Sebastian Dröge
04c524a20b Fix nightly warnings about confusing lifetime flow
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1746>
2025-06-30 13:18:07 +03:00
Sebastian Dröge
cfe67b5d3f Fix various new 1.88 clippy warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1744>
2025-06-26 22:52:32 +03:00
Sebastian Dröge
da19caa98a gstreamer: Add bindings for new ReferenceTimestampMeta::info structure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1743>
2025-06-26 22:21:12 +03:00
Sebastian Dröge
428617f87a gstreamer: Add debug assertions to ensure &mut StructureRef is only created from mutable structures
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1743>
2025-06-26 22:21:12 +03:00
Sebastian Dröge
7daf6d9625 gstreamer: Add new meta_api_type_tags_contain_only()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1743>
2025-06-26 22:21:12 +03:00
Sebastian Dröge
14a6ffec4e Regenerate with latest GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1743>
2025-06-26 18:58:30 +03:00
Seungha Yang
83131822af Regenerate with latest gir
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1732>
2025-06-21 00:48:29 +09:00
François Laignel
bf982f4221 gst: manual changes further to QueryType generation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1740>
2025-06-19 12:57:06 +02:00
François Laignel
98b5eb593e regen: generate QueryType
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1740>
2025-06-19 12:47:35 +02:00
François Laignel
19b294f554 gst: gir: generate QueryType
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1740>
2025-06-19 12:44:32 +02:00
François Laignel
3a67d56d78 gst: fixes for Clock non-optional return types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1739>
2025-06-17 15:11:23 +02:00
François Laignel
d2bc24f085 regen: gst: Clock: fix some non-optional return types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1739>
2025-06-17 15:00:02 +02:00
François Laignel
2f749824e6 gst: Clock: fix some non-optional return types
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1739>
2025-06-17 14:59:27 +02:00
Sebastian Dröge
29ab13fdf9 gstreamer: Ensure to provide existing messages to bus stream immediately
Previously the sync handler would only be called once a new message
arrives on the bus and only then any existing messages would be popped
from the bus and passed into the mpsc channel. This unnecessarily
delayed the messages.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1737>
2025-05-27 16:54:44 +00:00
Sebastian Dröge
dbe6282cc6 memory: Don't store the memory / memory reference in the map info a second time
It's already stored in the C map info struct.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1734>
2025-05-26 11:01:47 +03:00
Guillaume Desmottes
28a5c9229f gstreamer: caps: implement Hash
Can be useful to store Caps in HashMap for example.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1639>
2025-05-21 11:05:18 +02:00
Guillaume Desmottes
68280c1dae gstreamer: caps_features: implement Hash
Will be used to implement Hash on Caps.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1639>
2025-05-21 11:05:18 +02:00
Guillaume Desmottes
f9f85ae75e gstreamer: structure: implement Hash
Will be used to implement Hash on Caps.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1639>
2025-05-21 10:35:20 +02:00
Guillaume Desmottes
d1ad651548 gstreamer: value: add binding for gst_value_hash()
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1639>
2025-05-21 07:51:01 +02:00
Sebastian Dröge
80241b1d21 Regenerate with latest GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1729>
2025-05-13 16:18:06 +00:00
Sebastian Dröge
3b0dd22ee9 Regenerate with latest gir / gir-files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1723>
2025-04-29 09:49:09 +03:00
Benjamin A. Beasley
f552a490b7 gstreamer: Update to ron 0.10.1
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1718>
2025-04-22 19:14:22 -04:00
Seungha Yang
10dcee7b59 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/1715>
2025-04-15 00:52:27 +09:00
Sebastian Dröge
8e475a9011 gstreamer: Fix some new clippy warnings because of the MSRV bump
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1713>
2025-04-14 11:14:13 +03:00
Sebastian Dröge
161f2bca0a Fix some new clippy 1.86 warnings
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1696>
2025-04-04 08:27:14 +00:00
Sebastian Dröge
c8d752affc gstreamer: Update to ron 0.9
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1695>
2025-04-02 13:02:14 +03:00
Sebastian Dröge
963d785dda Regenerate with new GStreamer gir files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1694>
2025-04-02 09:51:04 +03:00
Simon Wülker
86ae0cea92 Bump gir / gir-files version
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1693>
2025-04-02 09:37:12 +03:00
Sebastian Dröge
5051f522b7 Don't use impl IntoIterator<Item = impl SomeTrait>
Instead use a generic type parameter for the item. This allows calling
e.g. gst::Array:🆕:<&str>([]) as a type annotation is necessary in
such cases.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1691>
2025-03-28 16:34:30 +00:00
Sebastian Dröge
757352c6cc 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/1690>
2025-03-28 12:49:38 +02:00
Sebastian Dröge
493175742f Add #[must_use] annotation to all iterator structs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1690>
2025-03-28 12:42:06 +02:00
Sebastian Dröge
a39fe140ef childproxy: Add set_child_property_from_str() convenience API
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1681>
2025-03-26 16:32:50 +00:00
Sebastian Dröge
ca0c7b8bfc gstreamer: Implement Default for BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1680>
2025-03-26 07:23:05 +00:00
Sebastian Dröge
ab43303c7a gstreamer: Make use of iterators / smallvec instead of temporary Vecs for messages/events/queries
And also take owned values if the C API takes ownership of them.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1669>
2025-03-25 14:53:04 +00:00
Sebastian Dröge
c5ea622fd4 gstreamer: Implement SelectStreams event API a bit more conveniently
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/530

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1669>
2025-03-25 14:53:04 +00:00
Sebastian Dröge
6278d8d1df gstreamer: Use helper macro to define various fixed size iterators
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1669>
2025-03-25 14:53:04 +00:00
Sebastian Dröge
3a0bcd0b9e bufferpool: Change BufferPoolConfig::options() to return an iterator
Avoids unnecessary allocations for the Vec.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1669>
2025-03-25 14:53:04 +00:00
Sebastian Dröge
002f8bec14 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/1671>
2025-03-25 14:24:51 +00:00
Sebastian Dröge
9bf2cff872 bufferpool: Also consider flags when comparing BufferPoolAcquireParams for equality
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1668>
2025-03-25 12:48:01 +00:00
Sebastian Dröge
72f4c54e5e bufferpool: Add setters to BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1668>
2025-03-25 12:48:01 +00:00
Sebastian Dröge
493106e725 bufferpool: Derive Copy and Clone for BufferPoolAcquireParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1668>
2025-03-25 12:48:01 +00:00
Sebastian Dröge
9c55808cc4 allocator: Implement PartialEq and Eq for AllocationParams
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1667>
2025-03-24 09:34:47 +02:00