Commit graph

1517 commits

Author SHA1 Message Date
Sebastian Dröge d216757c23 webrtc: Generate DataChannel bindings 2020-06-03 17:08:01 +03:00
Guillaume Desmottes 842959e1d8 update gir-files 2020-06-03 12:50:03 +02:00
Guillaume Desmottes 737d998a54 ci: rebuild images to update gst
Will be needed to bind the new webrtc APIs.
2020-06-03 11:45:57 +02:00
Sebastian Dröge 9236ace284 video: Add VideoAffineTransformationMeta, CropMeta and RegionOfInterestMeta
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/218
2020-06-02 16:05:01 +03:00
Sebastian Dröge ede4588e0c gstreamer: Add bindings for ProtectionMeta 2020-06-02 16:05:01 +03:00
Guillaume Desmottes 5775e531d9 ci: rebuild images to update gst
Will be needed to bind the new audio and video caps APIs.
2020-06-02 14:22:05 +02:00
Sebastian Dröge 9dbddc9fef gstreamer: Allow calling various global functions before gst::init()
Including most debugging related functions.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/211
2020-06-01 07:27:51 +00:00
Sebastian Dröge f8d0d4f373 Update gir 2020-06-01 07:27:51 +00:00
Sebastian Dröge 8988e0daa8 deny: Allow libloading twice in the dependency tree
An older version is pulled in by the OpenGL example via glutin, and it
would have to be updated to a newer version of glutin to fix this. See
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/409
2020-05-29 11:43:25 +03:00
Jan Schmidt 6c876a5681 examples: Add a VideoOverlayComposition example
Replicate the pango-cairo cairooverlay example, but
drawing into a gst::VideoOverlayComposition using the
overlaycomposition element.
2020-05-29 02:58:47 +10:00
Jan Schmidt dd226e80f8 Add an example of setting up the VideoConvert API
Configure some custom cropping / scaling of a video frame
input to compositor via the converter-config property
and gst_video::VideoConverterConfig API.
2020-05-29 02:58:47 +10:00
Jan Schmidt 637a1ca670 examples: Add a custom event example.
Add an example of constructing and parsing a custom event using
a rust helper struct, and sending them / catching them in
a pipeline.
2020-05-29 02:58:47 +10:00
Sebastian Dröge e9317d0a48 Update CHANGELOG.md for 0.15.6 2020-05-28 15:51:43 +03:00
Sebastian Dröge 40c14ccc03 gstreamer: Update ron dependency to 0.6 2020-05-28 13:18:02 +03:00
Sebastian Dröge dbf6d1fd1a gstreamer/promise: Return a borrowed StructureRef for the reply from the Future
Prevents an usually unneeded copy of the structure.
2020-05-27 14:48:48 +03:00
Sebastian Dröge 9d851bfc48 gstreamer/promise: Allow resolving the Promise with None and handle None explicitly in the change function
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1300
2020-05-27 13:55:51 +03:00
Sebastian Dröge 7086a754be Add various glib::Value trait impls for borrowed versions of types
For SDPMessageRef, StructureRef and CapsFeatureRef this involves the
conversion from and to a glib::Value. Specifically this means that e.g.
a StructureRef can be retrieved from a glib::Value via borrowing, i.e.
without creating a copy of the structure first.

For all mini objects only retrieval from a glib::Value is implemented as
the other direction would allow to get multiple immutable references
from a mutable reference without borrowing, which is not allowed and
would make it possible to observe a mini object changing while having an
immutable reference to it.
2020-05-27 13:17:54 +03:00
Sebastian Dröge 0b3bfa7ea2 gstreamer/promise: Convert None promise replies to an empty structure in the change_func
webrtcbin likes to put a NULL structure into the reply under some
circumstances when the promise successfully resolved.

See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1300
for details.
2020-05-27 12:24:11 +03:00
Sebastian Dröge dfdf01b868 gstreamer/datetime_serde: Use glib::BoolError instead of a &'static str as TryFrom error type 2020-05-26 19:26:35 +03:00
Sebastian Dröge 5eb1dbd93e video/videoinfo: Use a proper error type in the TryFrom<VideoMultiviewMode> impl for VideoMultiviewFramePacking 2020-05-26 19:26:35 +03:00
Sebastian Dröge d417656707 Use thiserror more widely for deriving Error/Display impls of error types 2020-05-26 19:26:35 +03:00
Sebastian Dröge f0e12bbf24 video/videoconverter: Add TryFrom<Structure> and inverse From impl for VideoConverterConfig
Allows converting between both types interchangebly.
2020-05-26 19:26:35 +03:00
Mathieu Duponchelle 02a43819a7 gstreamer-video: expose caps features 2020-05-22 21:31:45 +02:00
Sebastian Dröge 31313fb5c8 video: Add bindings for guess_framerate() 2020-05-20 09:52:03 +03:00
Sebastian Dröge 8029d85232 video: Add bindings for calculate_display_ratio() 2020-05-20 09:52:03 +03:00
Sebastian Dröge 1b7e99938f gstreamer/event: Add setter/getter for the gst::Stream in the stream-start event 2020-05-17 13:38:45 +03:00
Sebastian Dröge 4097c15c96 Don't include LGPL docs in the docs if both embed-lgpl-docs and purge-lgpl-docs features are selected
This makes usage of RLS/rust-analyzer on the repository much faster and
less annoying as the docs don't have to be included and removed on every
change.
2020-05-14 10:44:58 +03:00
Sebastian Dröge 93bc5c9324 gstreamer/gstreamer-app: Don't store strong references in futures Stream/Sink adapters
This applies to the ones of the appsink, appsrc and bus. If we would
store a strong reference then they would keep alive the underlying
object forever even if their pipeline disappeared in the meantime.

Like this e.g. the bus stream would start returning None once the bus
was destroyed, similar to how other channels are working in Rust.
2020-05-13 22:13:11 +03:00
Sebastian Dröge 3f495ce1da gstreamer/plugin: Register plugins with the correct minor version when building for 1.18 2020-05-08 14:32:50 +03:00
Guillaume Desmottes 6cf5914e21 ci: rebuild images
This will update to latest Rust stable (1.43.1).
2020-05-08 09:14:07 +02:00
Sebastian Dröge 781c5785b1 Regenerate 2020-05-05 17:29:14 +00:00
Sebastian Dröge c588a0bcd5 Update gir-files from gstreamer-rs-sys 2020-05-05 17:29:14 +00:00
Sebastian Dröge e87eff6271 Update gir 2020-05-05 17:29:14 +00:00
Otavio Salvador 2022890766 examples: Move out from 'failure' crate as it is deprecated
The 'failure' crate has been stale for quite some time and better
alternatives has been developed since its introduction. We choose the
'anyhow' and 'derive_more' to replace it.
2020-05-04 11:16:50 -03:00
Otavio Salvador 6fc70ee6b6 examples: Move to 2018 edition
This code rework the examples to use the new 2018 edition and also
rework the code to avoid using unnecessary 'extern crate' calls.

The 'use extern crate gstreamer as gst', as well as the other gstramer
related crates, were kept, otherwise we'd need to do it on 'Cargo.toml'
but it would make it more difficult to figure out the respective crate
name.
2020-05-03 18:42:57 -03:00
Vivia Nikolaidou 3c1304def5 Add DEVELOPMENT.md
To explain how the development process works (how to update the bindings)
2020-05-03 19:37:13 +03:00
Vivia Nikolaidou ec4a43be89 Regenerate 2020-05-03 16:48:35 +03:00
Sebastian Dröge 2c254c633b gstreamer-rtsp-server: Update gir-file to fix out parameters 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou e986119df6 Update Cargo.toml to 1.18 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou 4718f72fed gstreamer-video/video_encoder: Manually implement finish_subframe 2020-05-03 16:48:35 +03:00
Sebastian Dröge 61c80ada48 ci: Run build with v1_18 feature 2020-05-03 16:48:35 +03:00
Sebastian Dröge 90a4918f92 gstreamer-base/aggregator: Add subclassing support for new 1.18 virtual methods 2020-05-03 16:48:35 +03:00
Sebastian Dröge c449b34b37 gir-files: Sync with gstreamer-rs-sys 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou 3ac7631ea0 gstreamer/bin: Implement iterate_all_by_element_factory_name manually 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou 05852bb19f gstreamer-check/test_clock: Implement process_id manually 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou 0aeccc27ff gstreamer-base/aggregator: Implement update_segment manually 2020-05-03 16:48:35 +03:00
Sebastian Dröge 1be8ec691e gstreamer-video: Add support for the AFD and Bar metas 2020-05-03 16:48:35 +03:00
Vivia Nikolaidou 85f98751cf gstreamer-editing-services: Generate GES.FrameNumber 2020-05-03 15:18:45 +03:00
Vivia Nikolaidou e0ae19d459 gstreamer: Ignore get_current_running_time and get_current_clock_time
They have a better manual implementation
2020-05-03 15:18:45 +03:00
Vivia Nikolaidou df3eb56fb1 gir-files: Update to gstreamer master 2020-05-03 15:18:45 +03:00