Commit graph

1086 commits

Author SHA1 Message Date
Sebastian Dröge 2a442f6ec1 gstreamer/element: Add support for ElementClass::add_metadata() 2019-09-12 12:32:27 +03:00
Sebastian Dröge 5b00f973a6 gstreamer/deviceprovider: Add support for subclassing gst::DeviceProvider 2019-09-12 12:32:19 +03:00
Sebastian Dröge 161351e5c4 gstreamer/device: Add support for creating gst::Device subclasses 2019-09-12 12:32:13 +03:00
Sebastian Dröge 1528510c68 gstreamer/device: Device::create_element() is transfer floating, not transfer full
See https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/444
2019-09-12 12:32:06 +03:00
Jan Alexander Steffens (heftig) 23fe9efe08 Iterator: Test that Iterator can be used in a for loop
`for x in foo` depends on foo implementing IntoIterator.
2019-09-12 12:31:58 +03:00
Jan Alexander Steffens (heftig) dcec895b30 Iterator: Replace ad-hoc fn iter with impl IntoIterator
std has a trait for converting things into Iterators. Make use of it.
2019-09-12 12:31:51 +03:00
Jan Alexander Steffens (heftig) cf6d15bc00 Iterator: Add a wrapper implementing std's Iterator
Transposing the item type lets us be a std-compatible Iterator.

The iterator is automatically resynced when resuming iteration after
yielding Resync. This lets some combinators like `collect` and `find`
work properly.
2019-09-12 12:31:45 +03:00
Jan Alexander Steffens (heftig) de85702408 Iterator: Manually implement Debug
The derived implementation is restricted to `where T: Debug`, but the
iterator doesn't actually contain a value of type T.
2019-09-12 12:31:38 +03:00
Jan Alexander Steffens (heftig) 5149dc254d log_handler test: Ignore unknown categories
Tests run parallel in multiple threads. This makes the log_handler test
flaky because it may see log messages triggered by other threads. Make
the handler ignore all messages not in the category we care about.
2019-09-12 12:31:28 +03:00
Vivia Nikolaidou 168db3b948 element: Added num_pads, num_src_pads, num_sink_pads
Exposing the corresponding struct element in GstElement
2019-09-12 12:31:21 +03:00
François Laignel eb87563479 Fully qualify inner macros for exported macros...
... otherwise they can't be resolved in dependent crates compiled
for edition 2018.
2019-09-12 12:31:15 +03:00
Mathieu Duponchelle c00bceb123 subclass/element: expose set_clock and provide_clock vmethods 2019-09-12 12:31:07 +03:00
Sebastian Dröge 98701dac1b Update versions to 0.14.4 2019-08-14 22:18:19 +03:00
Sebastian Dröge 1427a05c32 Update CHANGELOG.md for 0.14.4 2019-08-14 22:17:55 +03:00
Sebastian Dröge c28ab78795 baseparse/transform/aggregator: Add constants for custom flow returns 2019-08-14 20:27:18 +03:00
Sebastian Dröge 163030e984 videoencoder/decoder: Add constants for the NEED_DATA custom flow returns 2019-08-14 20:27:17 +03:00
Sebastian Dröge 2ead2e60eb gstreamer/element: Use from_glib_none() for the release_pad() trampoline
The reference to the pad we get passed is not guaranteed to be valid for
the whole scope of release_pad(). It might be the last reference as
owned by GstElement, and gst_element_remove_pad() would destroy it then.
2019-08-14 12:38:08 +03:00
François Laignel ec3a11cec1 Fix functions unit tests for v < 1_12 2019-08-14 12:38:08 +03:00
Josh Matthews 65f548cd98 Add high level bindings for adding new log handlers and removing the default handler. 2019-08-14 12:38:08 +03:00
Sebastian Dröge 0c4d6cf151 gstreamer: Add bindings for gst::calculate_linear_regression() 2019-08-14 12:38:08 +03:00
Sebastian Dröge d9f4be0170 Update versions to 0.14.3 2019-07-16 12:44:26 +03:00
Sebastian Dröge fa8a9db311 Update CHANGELOG.md for 0.14.3 2019-07-16 12:44:07 +03:00
Sebastian Dröge 058d792548 buffer: Allow setting/unsetting buffer flags
As there are extension flags types, we need separate setter/unsetter
functions for the flags, or otherwise we would always clear the
extension flags types (e.g. GstVideoBufferFlags).
2019-07-16 11:51:37 +03:00
Sebastian Dröge 9c0f1d0103 video: Generate VideoBufferFlags and add a extension trait for setting/getting them on buffers 2019-07-16 11:51:36 +03:00
Sebastian Dröge 1dc66b58d8 Update version to 0.14.2 2019-07-15 20:02:35 +03:00
Sebastian Dröge 97ff067b9c Update CHANGELOG.md for 0.14.2 2019-07-15 20:02:35 +03:00
Sebastian Dröge 4cf3166317 meta: Add support for ReferenceTimestampMeta 2019-07-15 14:51:08 +00:00
Sebastian Dröge 68e1f31fd2 Update versions to 0.14.1 2019-07-06 23:45:56 +03:00
Sebastian Dröge c3e712d1bf Update CHANGELOG.md for 0.14.1 2019-07-06 19:17:43 +03:00
Sebastian Dröge 3d4697cf63 gstreamer/format: Fix serde serialization unit test
Regression from fdb95f0033
2019-07-06 10:36:10 +03:00
Sebastian Dröge 0bfa8fdcce examples/futures: Use future::pending() instead of future::empty()
It was renamed in the last release.
2019-07-06 10:36:10 +03:00
Sebastian Dröge dda55616dd tutorials/basic-tutorial-5: Make sure to only declare GDK C functions for the right platform
Otherwise linking might fail depending on the compiler flags if the
linker does not remove all references to unused code.
2019-07-06 10:36:10 +03:00
Sebastian Dröge 881cdf2a5e examples/gtkvideooverlay: Make sure to only declare GDK C functions for the right platform
Otherwise linking might fail depending on the compiler flags if the
linker does not remove all references to unused code.
2019-07-06 10:36:10 +03:00
Sebastian Dröge 01a98ecdbb Run stable clippy in gitlab CI again and also build all features on stable
Now that futures are stable in 1.36 we can do that again.
2019-07-06 10:36:10 +03:00
Guillaume Desmottes 5a2868ac57 audio: AudioInfo: display format info in Debug 2019-07-05 17:07:41 +03:00
Guillaume Desmottes bee134bc42 audio: implement proper Debug on AudioFormatInfo 2019-07-05 17:07:41 +03:00
Guillaume Desmottes f3c2cb80f1 video: VideoInfo: display format info in Debug 2019-07-05 17:07:41 +03:00
Guillaume Desmottes a9e401084d video: implement proper Debug on VideoFormatInfo 2019-07-05 17:07:41 +03:00
Sebastian Dröge 369d195e9f video-info: Use gst_video_info_set_interlaced_format() when building for 1.16 and having an interlace-mode set
This ensures that the plane information is filled correctly.
2019-06-26 12:41:47 +03:00
Sebastian Dröge 5da8ead7c9 webrtc: Generate various new enum types that were added in 1.14.1/1.16 2019-06-26 12:20:46 +03:00
Sebastian Dröge dba110bff2 Add missing versions to new WebRTC enum types 2019-06-26 12:20:45 +03:00
Sebastian Dröge 285f60db06 Update versions of all dependencies and point to releases instead of GIT 2019-06-24 20:41:13 +03:00
Sebastian Dröge be0075647a Update documentation 2019-06-24 20:28:25 +03:00
Sebastian Dröge fe93089bb9 Remove unused subclassing configuration from toml files 2019-06-24 20:27:28 +03:00
Sebastian Dröge e026c67874 Update CHANGELOG.md for 0.14.0 2019-06-24 20:26:18 +03:00
Sebastian Dröge 12e1ca9b09 Regenerate everything with latest gir 2019-06-24 19:54:04 +03:00
Sebastian Dröge 93af10fcdb Update gir 2019-06-24 19:50:32 +03:00
Guillaume Desmottes 24d9dc6209 gstreamer: tags: make call to to_string() explicit
This one was actually working but better to be safe as it may be
ambigious.
2019-06-18 17:11:24 +05:30
Guillaume Desmottes 40d2db7095 gstreamer: caps: make call to to_string() explicit
This one was actually working but better to be safe as it may be
ambigious.
2019-06-18 17:11:24 +05:30
Guillaume Desmottes cd16337874 video: video-info: fix Display implementations
We were calling the blanket implementation of ToString, which is using
Display, rather than our own, resulting in an infinite recursion.

Also a couple of to_string() implementation were using the wrong
glib conversion as they actually return a 'const gchar *'.
2019-06-18 17:11:24 +05:30