Commit graph

628 commits

Author SHA1 Message Date
Mathieu Duponchelle 5496067925 jitterbuffer: initial thread sharing support 2019-09-06 14:33:39 +00:00
Sebastian Dröge 33cb599464 threadshare/iocontext: Add custom interval timer implementation
This knows about our throttled event loop and ensures that timers are
triggered at most 1 throttle time later instead of 2.
2019-09-06 14:33:39 +00:00
Mathieu Duponchelle b7e55836c1 WIP: thread-sharing jitterbuffer
Actual thread-sharing will follow!
2019-09-06 14:33:39 +00:00
Sebastian Dröge 120481269b gst-plugin-version-helper: Update git2 dependency to 0.10 2019-09-04 12:20:55 +03:00
Sebastian Dröge d48b3f18fc rav1enc: Update to new rav1e frame API
And also add support for forcing keyframes.

Disable tiles in the test for now because of https://github.com/xiph/rav1e/issues/1611
2019-08-30 09:46:37 +03:00
Sebastian Dröge 9581a3695d rav1enc: Fix build with latest rav1e API 2019-08-27 14:22:28 +03:00
Sebastian Dröge 6aa09149b9 fallbackswitch: Fix remaining GType name conflicts between bundled and gstbase aggregator
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/issues/67
2019-08-27 11:30:35 +03:00
Sebastian Dröge 183f197d32 fallbackswitch: Add some tests 2019-08-19 15:59:02 +00:00
Sebastian Dröge b401b2f243 fallbackswitch: New plugin providing a fallbackswitch element
Allows having a live input stream and falling back to another input
stream after a configurable timeout without any buffers received on the
main input.
2019-08-19 15:59:02 +00:00
Sebastian Dröge 064cb52d0b rav1e: Fix for rav1e API changes
The colorimetry enum values are now in sync with the spec.
2019-08-19 18:57:37 +03:00
Sebastian Dröge b17773a574 rav1e: Fix build after videoencoder API changes 2019-08-14 22:12:26 +03:00
ahamedsajeer.15 9119349c08 reqwesthttpsrc: add timeout 2019-08-13 17:41:06 +03:00
François Laignel 0e11ac87d3 Update for new {Value, StructureRef}::get signature
See https://github.com/gtk-rs/glib/pull/513
and https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/merge_requests/310
2019-08-13 15:29:28 +02:00
Mathieu Duponchelle da2332d814 ts-queue: Make PendingQueue a proper struct 2019-08-09 11:44:47 +00:00
Mathieu Duponchelle 892c812669 ts-queue: split up enqueue_item
This is far from a full refactoring, but it makes the current
implementation slightly easier to understand
2019-08-09 11:44:47 +00:00
ahamedsajeer.15 f2dca12de6 reqwesthttpsrc: add http auth 2019-08-09 12:23:23 +05:30
Ray Tiley ccd607707d threadsharing/udpsrc: Fix build on Windows 2019-08-08 10:32:19 -04:00
ahamedsajeer.15 923f6e3a5c reqwesthttpsrc: add is-live property 2019-08-07 19:20:48 +00:00
Sebastian Dröge 1e71767b40 cdg: Update to image 0.22 and cdg_renderer 0.3 2019-08-07 15:52:50 +03:00
ahamedsajeer.15 324b205926 reqwesthttpsrc: add user-agent header to request 2019-08-06 08:04:16 +00:00
Philippe Normand 0fcc0cb2d3 reqwest: Rename again reflecting the crate name
rshttp is too generic, so rename the plugin in a similar fashion as most other
GStreamer Rust plugins in this repository.
2019-08-02 16:34:53 +01:00
Charlie Turner a844d765da reqwesthttpsrc: name lib the same as plugin name
Otherwise it won't be discoverable by gst-inspect-1.0 or registry
lookup.
2019-08-02 10:45:17 +01:00
Charlie Turner 7137d3d389 rav1enc: PixelRange::Unspecified was removed.
1f8f62a04dca13302ccef6371ec5211a001ed356 in rav1e removed this
enumeration. They changed the default value from Unspecified to
Limited, so that's what I've done here as well.
2019-08-02 10:13:14 +01:00
ahamedsajeer.15 4b4a2798b6 reqwesthttpsrc: Set offset field on outgoing buffers 2019-07-24 11:17:14 +00:00
ahamedsajeer.15 367ca9b996 reqwesthttpsrc: Map error response codes to the correct error messages 2019-07-24 11:17:14 +00:00
ahamedsajeer.15 542f68dd07 reqwesthttpsrc: Add a seeking test 2019-07-24 11:17:14 +00:00
Sebastian Dröge 59f004de24 togglerecord: Update parking_lot to 0.9 2019-07-24 13:52:40 +03:00
Sebastian Dröge c888094f68 Update to url 2.0 where we can 2019-07-24 13:38:36 +03:00
Sebastian Dröge f149f8f1b5 Don't use ONCE_INIT anymore now that Once::new() is const 2019-07-11 16:41:42 +03:00
Sebastian Dröge fbbd70950a Fix a few more clippy warnings 2019-07-11 11:20:39 +03:00
Sebastian Dröge f7fd1e3f99 togglerecord: Clip raw audio/video buffers to the segment/recording boundaries
And extend tests to actually check for this to work.
2019-07-11 11:20:35 +03:00
Sebastian Dröge 20c02c4b38 togglerecord: Calculate a fallback duration for audio/video buffers based on the caps if possible
I.e. based on the framerate for video and based on the buffer size,
sample size and sample rate for raw audio.
2019-07-11 10:47:30 +03:00
Sebastian Dröge caeff6f968 threadshare/udpsrc: Use MaybeUninit instead of mem::zeroed() 2019-07-10 17:20:45 +03:00
Sebastian Dröge 70385a4833 Update minimum supported Rust version to 1.36 2019-07-10 11:24:07 +03:00
Sebastian Dröge 8b4f0f91a9 version-helper: Take CARGO_MANIFEST_DIR at runtime, not at compile-time
Otherwise we'll always look at the directory of the version-helper crate
instead of the crate that is actually compiled.
2019-07-07 13:36:48 +03:00
Sebastian Dröge d0e5868880 version-helper: Add documentation 2019-07-07 13:36:48 +03:00
Sebastian Dröge 107183ad57 version-helper: Don't build the toml crate with all default features
We don't need to build serde, etc for our uses and it increases build
times quite a bit.
2019-07-07 13:36:48 +03:00
Sebastian Dröge 7ab4aff180 version-helper: Get ready for a release on crates.io 2019-07-07 13:36:48 +03:00
Sebastian Dröge 50730574ba version-helper: Check first for a git repository in the manifest dir and only then one directory up
This allows using the crate also in git repositories that contain a
single GStreamer plugin and not only in Cargo workspaces.
2019-07-07 13:36:48 +03:00
Sebastian Dröge 7e93c20b38 version-helper: Extract release version for plugins from a release.txt if there is no git repository
This will allow us packaging the plugins in a tarball and generate
proper plugin metadata.
2019-07-07 13:36:48 +03:00
Sebastian Dröge 924b89a880 closedcaption: Update version number in mcc_enc test 2019-07-07 13:36:25 +03:00
Sebastian Dröge acc4b6a7e2 Update versions to 0.6.0 2019-07-07 13:20:15 +03:00
Sebastian Dröge 91adc3c416 Clean up Makefile some more
Use $(DESTDIR) as prefix for the installation to make distros' lifes
easier and have a simple "all" / "build" / "install" rule. By default we
do a release build, if DEBUG=1 is specified we do a debug build.
2019-07-06 10:32:22 +03:00
ahamedsajeer.15 ce1ed81922 reqwesthttpsrc: Report correct error messages based on HTTP error status codes
404 is mapped to ResourceError::NotFound
401,402,403,407 are mapped to ResourceError::NotAuthorized
other error status codes are mapped to ResourceError::OpenRead
This mirrors the behavior in souphttpsrc
2019-07-05 18:54:10 +05:30
ahamedsajeer.15 e20a1ce947 reqwesthttpsrc: test for 404 error 2019-07-05 08:58:19 +05:30
Sebastian Dröge b4efa42d8f Fix various clippy warnings 2019-07-04 18:56:33 +03:00
Sebastian Dröge 63a840e0e7 Bring gitlab CI in sync with gstreamer-rs and add clippy task
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/issues/58
2019-07-04 18:21:29 +03:00
Sebastian Dröge 0a008354a4 reqwesthttpsrc: Drop the receiver before stopping the element
Otherwise there might still some thread waiting for the receiver to
consume a message and we would deadlock here. Dropping the receiver
drops all messages and unblocks them all immediately.

Also don't panic when sending messages to a dropped receiver.
2019-07-04 18:13:36 +03:00
Sebastian Dröge 2df6a5e049 sodium: Statically register the plugin in the example
So that it's not needed to set up GST_PLUGIN_PATH accordingly or install
the plugin first before running the examples.
2019-07-04 14:59:29 +03:00
Sebastian Dröge e8d6a7cbd4 sodiumdecrypter: Fix some typos 2019-07-04 14:58:52 +03:00