Commit graph

1303 commits

Author SHA1 Message Date
Guillaume Gomez a58cd4b5bc Manual code fixes 2019-11-11 11:34:09 +01:00
Guillaume Gomez 457ac9118b Regenerate with latest gir 2019-11-11 11:34:09 +01:00
Guillaume Gomez da002aa98c Fix generator 2019-11-11 11:34:09 +01:00
Guillaume Gomez b69c117908 Update gir submodule 2019-11-11 11:34:09 +01:00
jerry73204 a26738bc41 appsink: Use FnMut instead of Fn for callbacks
They can only be called from a single thread at once.
2019-10-31 16:05:59 +01:00
Sebastian Dröge ccd01b93bf examples: Add an example for subclassing and providing Rust API on the subclass 2019-10-30 16:07:23 +01:00
Sebastian Dröge 452ea45c1b video: Actually export is_video_overlay_prepare_window_handle_message() function 2019-10-29 19:40:32 +02:00
Sebastian Dröge 8dcf3fec20 gstreamer: Change Sample constructor to the builder pattern
Simplifies construction of Samples considerably.
2019-10-23 09:55:56 +03:00
Jordan Petridis dc3a039a3b
Add license key for tutorials and examples 2019-10-22 16:36:32 +03:00
Jordan Petridis d584c3ba23
CI: force install cargo audit
We are caching $CARGO_HOME in between runs, so an arbitrary
cargo audit binary might already exist in the environment.
Force install it so cargo doesn't complain and our binary
is guaranteed "fresh".
2019-10-21 14:20:42 +03:00
Sebastian Dröge 2d2459ed52 Export traits from the crate level and ensure that all traits are in the preludes 2019-10-17 13:30:35 +03:00
Guillaume Desmottes 69ed7cd630 ci: run cargo-audit
Can be used to detect vulnerabilities in deps, see
https://blog.rust-lang.org/inside-rust/2019/10/03/Keeping-secure-with-cargo-audit-0.9.html

Added libssl-dev as it's a build dep of one of audit's crate.
2019-10-10 10:34:07 +02:00
Sebastian Dröge 06a9f891bd Update GStreamer to 1.16.1 and explicitly use Debian buster docker images 2019-10-05 00:35:21 +03:00
Sebastian Dröge 132eb891ed Fix dox feature and docs.rs Cargo.toml metadata 2019-10-05 00:13:29 +03:00
Sebastian Dröge 991f2e1576 Update and regenerate everything with latest gir 2019-10-05 00:03:57 +03:00
Sebastian Dröge d2930aed0b Regenerate everything with latest gir-files 2019-10-05 00:02:07 +03:00
Sebastian Dröge 419dfd7e28 Update gir-files from GStreamer 1.16.1 release 2019-10-04 23:59:49 +03:00
Sebastian Dröge 7ab4e8dafd examples: Update gl_generator dependency to 0.14 2019-10-04 09:30:51 +00:00
Fernando Jimenez Moreno 591468f53b gstreamer/log: Use non-panicking UTF8 conversion in log handler
Make sure that `log_handler` and `DebugMessage::get` do not panic while
processing non-UTF8 characters by using lossy instead of strict UTF8
string conversion.
2019-10-04 09:03:28 +00:00
Sebastian Dröge 107ae588f2 examples: Fix various clippy warnings 2019-10-04 11:01:55 +03:00
Sebastian Dröge 06cfcd57fc Move to_string() methods into the Display trait or rename to to_str(), move from_string() into the FromStr trait
Fixes clippy warnings, prevents confusing errors and is more consistent.

The Display trait provides a to_string() method by itself and FromStr
provides from_str().
2019-10-04 11:01:55 +03:00
Sebastian Dröge 861f5c1e1a Re-run cargo fmt
Minor changes in the latest version.
2019-10-04 08:19:24 +03:00
Sebastian Dröge 19b3427909 clock: Move wake_id() from ClockId to ClockImpl
This shouldn't really be called on anything outside a Clock
implementation.
2019-09-26 11:25:52 +03:00
Sebastian Dröge 6abb0d3506 gstreamer: Add support for subclassing gst::SystemClock 2019-09-25 17:22:15 +03:00
Sebastian Dröge bacf4998ce clock: Add some more ClockId API for being able to implement clock subclasses 2019-09-25 17:22:15 +03:00
Sebastian Dröge 4e60a0aea4 clock: Add support for setting/getting/unsetting clock flags 2019-09-25 17:22:15 +03:00
Sebastian Dröge 1faf41986b gstreamer: Add bindings for ClockEntryType and ClockFlags 2019-09-25 17:22:15 +03:00
Sebastian Dröge 1c8b2c671b gstreamer: Add support for subclassing gst::Clock 2019-09-25 17:22:15 +03:00
Sebastian Dröge 74b05f0272 gstreamer: Add support for implementing gst::TagSetter interface 2019-09-25 17:22:11 +03:00
Sebastian Dröge eda3539330 gstreamer: Add support for implementing gst::Preset interface 2019-09-25 16:11:54 +03:00
Sebastian Dröge fc0fc99d1c audio/video: Fix some clippy warnings
warning: use of `unwrap_or` followed by a function call
   --> gstreamer-audio/src/subclass/audio_encoder.rs:360:18
    |
360 |                 .unwrap_or(element.proxy_getcaps(None, filter))
    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    | help: try this: `unwrap_or_else(|| element.proxy_getcaps(None, filter))`
2019-09-24 15:03:45 +03:00
Jan Alexander Steffens (heftig) 29710d9970 gstreamer: Assert that FromValueOptional works as expected
Fails without the preceding patch.
2019-09-24 10:34:44 +00:00
Jan Alexander Steffens (heftig) dca2cc1c5d gstreamer: Remove bad asserts in two impl FromValueOptional
These prevented actually getting a None out of a Value which contains a
NULL.
2019-09-24 10:34:44 +00:00
Jan Alexander Steffens (heftig) eaacee49de
iterator: Simplify StdIterator a bit 2019-09-24 11:31:28 +02:00
Sebastian Dröge 79d3888c3d Update CHANGELOG.md for 0.14.5 2019-09-17 15:41:12 +03:00
Sebastian Dröge 0cfe6c58a6 Minor cleanup to gitlab-ci.yml
Don't special-case the features of gstreamer-base and gstreamer-video
anymore, they have the same as most other crates now.
2019-09-17 11:05:57 +03:00
Sebastian Dröge c19c9b1d8a audio/video: Add decoder base class error macros 2019-09-15 11:44:08 +03:00
Sebastian Dröge 1348127ca8 audio/video: proxy_getcaps() can't return None and get_caps() vfuncs must not return None 2019-09-14 11:05:55 +03:00
Sebastian Dröge bddb49443d audio/video: Use proxy_getcaps() function for default handling of getcaps() vfunc 2019-09-14 11:01:50 +03:00
Sebastian Dröge b238d07db0 audio: Add support for subclassing AudioEncoder and AudioDecoder
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/159
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/158
2019-09-14 09:00:52 +03:00
Sebastian Dröge ea95d1e479 video: Add support for VideoDecoder::drain() vfunc 2019-09-13 23:04:10 +03:00
Sebastian Dröge 8160521574 video: Add support for getcaps(), negotiate(), src/sink_query/event() vfuncs in VideoEncoder/Decoder 2019-09-13 22:59:31 +03:00
Sebastian Dröge 4c52996fc8 video: Return NotNegotiated if setting the output state fails 2019-09-13 22:59:31 +03:00
Sebastian Dröge 2d5b6de590 video: Add VideoEncoder/VideoDecoder::get_allocator() 2019-09-13 22:59:31 +03:00
Fernando Jimenez Moreno de7a9dee1e Fix Windows build 2019-09-13 09:55:32 +02:00
Sebastian Dröge 7868018abb gstreamer/element: Add support for ElementClass::add_metadata() 2019-09-12 10:18:23 +03:00
Sebastian Dröge 6dcd255815 gstreamer/deviceprovider: Add support for subclassing gst::DeviceProvider 2019-09-12 10:18:23 +03:00
Sebastian Dröge 9df56faf48 gstreamer/device: Add support for creating gst::Device subclasses 2019-09-11 22:46:15 +03:00
Sebastian Dröge 8208ee0891 gstreamer/device: Device::create_element() is transfer floating, not transfer full
See https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/444
2019-09-11 22:41:59 +03:00
Sebastian Dröge 52509b4b95 Remove subclassing feature and make it the default 2019-09-09 11:51:07 +03:00