Commit graph

1262 commits

Author SHA1 Message Date
Sebastian Dröge 62a2ad8a1e gstreamer: Fix serde serialization tests
ron serialization is now writing `1.0` instead of just `1`.
2022-06-24 11:12:38 +03:00
Stephan Seitz a4ba8b87cd gstreamer: add PadProbeId::as_raw()
This allows to convert PadProbeId to numberic values without
taking them by value (like `into_glib`).

See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/382#note_1391236
2022-06-07 20:34:21 +03:00
Sebastian Dröge 08953dfe66 gstreamer: Implement FusedStream for the Bus stream 2022-06-07 20:20:01 +03:00
Sebastian Dröge 9ee22baa07 Update CHANGELOG.md for 0.18.8 2022-04-26 14:02:36 +03:00
Sebastian Dröge d5aa2e9b5f Update versions to 0.18.8 2022-04-26 13:55:34 +03:00
Sebastian Dröge 87f2d51a35 gstreamer: Update to pretty-hex 0.3 2022-04-22 17:36:16 +03:00
Jan Alexander Steffens (heftig) 52ae5e435b gstreamer: Export subclass::TaskPoolFunction
This must be accessible in order to subclass TaskPool.
2022-04-22 17:35:21 +03:00
Sebastian Dröge 5a334cdcd3 gstreamer: Complete the Task bindings 2022-04-22 17:33:23 +03:00
Sebastian Dröge eb9a74bf99 Update versions to 0.18.7 2022-04-04 16:49:54 +03:00
Sebastian Dröge 9bf6f2b010 Update CHANGELOG.md for 0.18.7 2022-04-04 16:49:54 +03:00
Sebastian Dröge e3ee743740 Regenerate everything with latest gir 2022-04-04 16:27:00 +03:00
Sebastian Dröge b59f90e634 Don't use unnecessary RefCell wrappers for FnMut callbacks
They don't add any safety as this is via unsafe code anyway and are not
needed to get mutable references in this context anyway, while adding a
bit of runtime overhead.
2022-04-04 16:27:00 +03:00
Jan Alexander Steffens (heftig) c447f6fd91 gstreamer: Add TaskPool bindings and subclassing
Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/14
2022-04-04 16:27:00 +03:00
Sebastian Dröge 4f186e0147 Don't unnecessarily borrow dereferenced values explicitly
warning: this expression borrows a value the compiler would automatically borrow
  --> gstreamer-rtsp-server/src/rtsp_session_pool.rs:16:5
   |
16 |     (&mut *func.borrow_mut())(&from_glib_borrow(pool)).into_glib()
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `(*func.borrow_mut())`
   |
   = note: `#[warn(clippy::needless_borrow)]` on by default
   = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
2022-04-04 16:11:28 +03:00
Sebastian Dröge 917c50c36b Use SPDX license format in Cargo.toml 2022-04-04 16:10:08 +03:00
Sebastian Dröge d8169d7976 Update CHANGELOG.md for 0.18.6 2022-03-08 19:20:48 +02:00
Sebastian Dröge 883681bd4c Update versions to 0.18.6 2022-03-08 19:18:44 +02:00
Sebastian Dröge 5b24acb9c0 gstreamer: Require Send and not Sync for the values of an Array / List
`Sync` is more than required here: only sending of the values to another
thread is required.
2022-03-08 18:49:08 +02:00
Sebastian Dröge 24a2bb78a6 gstreamer: Simplify and speed up log message string construction
For pre-1.20 simply use `%s` as format string instead of escaping the
`%` inline while writing. This allows a simpler implementation and is
also faster, see https://github.com/gtk-rs/gtk-rs-core/pull/583.
2022-03-08 18:37:23 +02:00
Sebastian Dröge cb885cb99e Update CHANGELOG.md for 0.18.5 2022-02-20 20:20:46 +02:00
Sebastian Dröge a58efe2910 Update versions to 0.18.5 2022-02-20 20:17:18 +02:00
Marijn Suijten 0873db2a41 gstreamer/plugin_1_14: Use minor version 20 instead of 19 for v1_20
Now that gstreamer 1.20 is out all v1_20 plugins will be linked against
the 1.20 stable release, not the unstable 1.19 development release.
2022-02-18 17:01:37 +02:00
Marijn Suijten a838b2ec36 Revert "sys: Link all v1_20 sys crates against library 1.19" - use 1.20
This reverts commit 8226c94110.

Now that GStreamer 1.20 is out, the v1_20 feature can and should link
directly to the stable release instead of the unstable 1.19 development
release.
2022-02-18 17:01:30 +02:00
Marijn Suijten 57cf66e26b gstreamer/sys: Move v1_18_3 system-deps metadata above v1_20
Keep the versions sorted numerically.
2022-02-18 17:01:23 +02:00
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