Commit graph

1238 commits

Author SHA1 Message Date
Sebastian Dröge
e5e2b8e682 gstreamer: Fix downcast_ref() / downcast_mut() impls on MiniObjectRef
They have to return the `Ref` type and not the owned type.
2022-02-18 17:01:17 +02:00
Sebastian Dröge
849440403c gstreamer: Add Debug impl for MiniObject / MiniObjectRef 2022-02-18 17:01:11 +02:00
Christian Meissl
af28e036a5 support for subclassing buffer pool 2022-02-18 17:00:58 +02:00
Sebastian Dröge
67291b6d17 Handle empty slices correctly
Passing `NULL` to `slice::from_raw_parts` is invalid.
2022-02-18 17:00:31 +02:00
Sebastian Dröge
5b2396405d Update versions to 0.18.4 2022-02-04 18:42:03 +02:00
Sebastian Dröge
86fd63585a Update README.md for 0.18.4 2022-02-04 18:40:47 +02:00
Sebastian Dröge
55ed03c395 Regenerate with latest gir files 2022-02-04 14:02:45 +02:00
Sebastian Dröge
d1b3313c09 Update versions to 0.18.3 2022-01-31 14:53:36 +02:00
Sebastian Dröge
5920807e0b Update CHANGELOG.md for 0.18.3 2022-01-31 14:53:36 +02:00
Sebastian Dröge
414d640ed9 Regenerate with latest gir and GStreamer gir files 2022-01-29 18:26:28 +02:00
Sebastian Dröge
691fed0f31 Get rid of fragile dependency and use GLib API instead 2022-01-29 18:24:08 +02:00
Sebastian Dröge
3c800faa07 Update CHANGELOG.md for 0.18.2 2022-01-24 16:45:55 +02:00
Sebastian Dröge
f4aa0c09a9 Update versions to 0.18.2 2022-01-24 16:42:43 +02:00
Sebastian Dröge
0d5132a7f0 gstreamer: Implement FromValue for mini object references 2022-01-24 16:03:49 +02:00
Sebastian Dröge
93a777e6c9 gstreamer: Minor cleanup 2022-01-24 16:03:42 +02:00
Sebastian Dröge
d2bc6d94f9 gstreamer: Add bindings for gst_debug_log_get_line() 2022-01-24 16:03:38 +02:00
Sebastian Dröge
89e0654f35 Update versions to 0.18.1 2022-01-18 16:52:43 +02:00
Sebastian Dröge
5f817b0443 Update CHANGELOG.md for 0.18.1 2022-01-18 16:51:35 +02:00
Sebastian Dröge
50c6f48728 message: Handle the Redirect message in Message::view() 2022-01-18 16:18:39 +02:00
Sebastian Dröge
656e815b23 gstreamer: Mark Structure and CapsFeatures as #[repr(transparent)] too 2022-01-18 15:47:21 +02:00
Jan Alexander Steffens (heftig)
5b8f4a8632 gstreamer: Split parsers for owned and borrowed views
When we have a view like `Caps<&EventRef>`, we can return a `CapsRef`
borrowing from the wrapped `EventRef`. This way, the `CapsRef` we return
can outlive the view itself.

This is in contrast to a `Caps<Event>` view which owns the `Event`.
Here, the `CapsRef` we return cannot outlive the view.

gstreamer-rs 0.18 consolidated code and treated everything like the
latter case. Fix this by duplicating the accessors for each case.

Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/367
2022-01-18 15:47:15 +02:00
Sebastian Dröge
03087ddfb0 gstreamer: Mark miniobject wrapper types as #[repr(transparent)]
That way they're treated everywhere exactly like a raw pointer.
2022-01-18 15:47:04 +02:00
Sebastian Dröge
1fbb6a3a1c Replace Foo::from_instance(foo) with foo.imp() 2022-01-18 15:46:59 +02:00
Sebastian Dröge
d778be0e5d Update CHANGELOG.md for 0.18.0 2022-01-16 13:12:39 +02:00
Sebastian Dröge
1657d89812 Update CHANGELOG.md for 0.17.4 2022-01-16 12:17:26 +02:00
Sebastian Dröge
b7f04289ab Add 0.18 version requirement to the dependencies from this repository 2022-01-15 17:28:01 +02:00
Sebastian Dröge
5fa5f04e04 Switch to 0.15 branches of gtk-rs and provide a version 2022-01-15 17:19:45 +02:00
Sebastian Dröge
711a4bb76e gstreamer: Silence a new clippy warning in the tests 2022-01-14 12:58:26 +02:00
Sebastian Dröge
605c633579 Ignore clippy::non_send_fields_in_send_ty lint
It's useless in its current shape and wrongly triggering on all types.

See https://github.com/rust-lang/rust-clippy/issues/8045
2022-01-13 23:38:11 +02:00
Sebastian Dröge
9eb479cf78 Regenerate everything 2022-01-12 15:40:36 +02:00
Sebastian Dröge
843d3749b7 caps: Add bindings for foreach(), map_in_place() and filter_map_in_place()` 2022-01-11 13:37:40 +00:00
Sebastian Dröge
1b46bca2db structure: Add bindings for foreach(), map_in_place() and filter_map_in_place()` 2022-01-11 13:37:40 +00:00
Sebastian Dröge
6d63180bfc Update for glib::Quark API changes 2022-01-11 12:50:13 +02:00
Guillaume Gomez
ac9b1e881c Add missing #[must_use] attribute for clippy 2022-01-04 19:43:07 +01:00
Guillaume Gomez
27dd305cb4 Regen to get #[must_use] attributes generated 2022-01-04 19:02:58 +01:00
Sebastian Dröge
bbcd221e8d Change from impl_() to imp() 2021-12-28 17:50:06 +02:00
Sebastian Dröge
1e18c59d2a Implement glib::ValueTypeOptional for various types 2021-12-16 17:40:39 +00:00
Luca BRUNO
c30eff771a
Regenerate with latest gir (gboolean return codes) 2021-12-14 11:43:30 +00:00
Paolo Borelli
97f59d34fa Add the has_name() fn to EventRef, MessageRef and StructureRef
They are handy and they match the C api
2021-12-14 09:59:39 +01:00
Sebastian Dröge
9bf5f641ff Regenerate with latest gir 2021-12-12 17:54:20 +02:00
Sebastian Dröge
1541fbf32a gstreamer: Add many new doc aliases for C function 2021-12-12 17:52:32 +02:00
Luca BRUNO
d1cc8d1298
Regenerate with latest gir (assert safe gerror) 2021-12-07 12:07:45 +00:00
Sebastian Dröge
ee1a5e8395 Add #[must_use] attribute to many builders 2021-12-04 10:26:08 +02:00
Sebastian Dröge
8f3ed6d289 Add checks for the Gir.tomls
... and fix all the failures.
2021-12-03 20:27:50 +00:00
Sebastian Dröge
f6dc14b946 Add a few missing docs aliases for constants 2021-12-03 10:19:22 +02:00
Sebastian Dröge
7d968d78bb Silence false needless_option_as_deref clippy warnings
See https://github.com/rust-lang/rust-clippy/issues/8047
2021-12-02 17:52:23 +02:00
Mathieu Duponchelle
8e6c08f8fd gstreamer/value_serde: fix nested structures
When serializing a structure, if it contains a nested structure
the serialization / deserialization code goes through value_serde,
which was lacking support for Structure.
2021-12-01 17:41:48 +00:00
Sebastian Dröge
c965217e54 gstreamer: bufferlist: Implement buffer foreach functions around ControlFlow enum
This makes it clearer than a plain `bool` or `Result<Option<Buffer>, Option<Buffer>>`.

Also pass a `&Buffer` instead of a `&BufferRef` to the immutable foreach
function to allow taking references of the buffer outside the scope of
the closure by cloning instead of requiring a full copy.
2021-12-01 14:16:33 +02:00
Sebastian Dröge
15fbb17a09 gstreamer: buffer: Implement meta foreach functions around ControlFlow enum
This makes it clearer than a plain `bool` or `Result<bool, bool>`.
2021-12-01 14:02:50 +02:00
Tim-Philipp Müller
e0e17b8b25 gstreamer: pad: use ControlFlow with custom enum for sticky_events_foreach() return value
... instead of Result<Option<Event>,Option<Event>> which isn't very nice.

And use static dispatch instead of dynamic dispatch.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/361
2021-12-01 14:02:50 +02:00