Commit graph

1177 commits

Author SHA1 Message Date
Sebastian Dröge c380a3ea3d requesthttpsrc: Port to tokio 1.0 2021-01-09 12:04:38 +02:00
Seungha Yang 2b7cebb02a togglerecord: Update recording state on EOS
If all input streams are in EOS state, update recording state
to Stopped and notify the change as well
2021-01-07 22:16:51 +09:00
Guillaume Desmottes 9d8fe31a5b meson: bump minimal version to 0.56
Needed because of substring().

Fix #138
2021-01-07 10:03:01 +01:00
Guillaume Desmottes 0754c98f9d meson: check if cargo-c is installed 2021-01-04 16:04:52 +01:00
Guillaume Desmottes 595616fe2d ci: install cargo-c to proper location
Need to define CARGO_HOME so it's installed to the same places as the
rest of the Rust tools.
2021-01-04 16:04:52 +01:00
Guillaume Desmottes fdc3ea68e8 ci: test linking on all static plugins
Will ensure that our static libraries and pkg-config files are properly
generated.
2021-01-04 12:26:45 +01:00
Guillaume Desmottes 9167e5e561 ci: factor out iterate_plugins()
Will be re-used for another test.

Also explicitly list the 'rs' prefixed plugins.
2021-01-04 12:26:45 +01:00
Guillaume Desmottes 32d511684e meson: install plugins pc files 2021-01-04 12:26:45 +01:00
Guillaume Desmottes dfdbd370f9 meson: use cargo-c
We now have to run 'cbuild' and 'ctest' on each plugin individually.
Replace plugins_rep key by the source path so we can easily discard the
excluded plugins.
2021-01-04 12:26:45 +01:00
Guillaume Desmottes 8bc2e5ebb8 use cargo-c to produce cdy and static libs
cargo-c will produce a pkg-config file making it easier to statically
link plugins.

Also add 'static' features for plugins depending on < 1.14 as this is the
minimal required version to use static linking because of ABI changes in
core.
2021-01-04 12:26:45 +01:00
Guillaume Desmottes fc1bae347e ci: install cargo-c 2021-01-04 10:38:05 +01:00
Marijn Suijten a2b766d568 CI: Remove unnecessary lint-ignore for clippy::cast_lossless 2021-01-02 17:55:06 +01:00
Marijn Suijten 1a7c4c14cc Fix clippy::redundant_pattern_matching 2021-01-02 17:55:06 +01:00
Marijn Suijten 61270a337b tutorial/1: gst_plugin_define! is renamed to gst::plugin_define!
Fixes: 3d61737 ("Update for macro renames")
2021-01-02 17:55:06 +01:00
Marijn Suijten d36218fe35 tutorial/1: Fix unclosed ```rust block
Fixes: 4829e31 ("tutorial: Update for subclassing API changes")
2021-01-02 17:54:57 +01:00
Sebastian Dröge 817a4710f3 ci: Add some more ignored lints to the clippy configuration 2020-12-31 17:28:51 +02:00
Sebastian Dröge 0f4383a8a0 ci: Update to dav1d 0.8.0 2020-12-31 17:28:04 +02:00
Sebastian Dröge c09dc96c2c togglerecord: Also check for flushing at the top of the chain function
It would return further down anyway but there's no point in doing
useless work if it can be avoided.
2020-12-31 12:06:18 +02:00
Sebastian Dröge cdca6c9372 togglerecord: Check for flushing when the main stream waits for the other streams
Otherwise it would not wake up and return when shutting down the element.
2020-12-31 12:05:37 +02:00
Sebastian Dröge 514f6ea7ec textwrap: Remove workaround that is not needed anymore with textwrap 0.13.2 2020-12-30 18:49:13 +02:00
Sebastian Dröge 078bf81b85 sccparse: Work around invalid drop-frame timecodes
Various SCC files have invalid drop frame timecodes.

Every full minute the first two timecodes are skipped, except for every
tenth minute, which means that e.g. "00:01:00;00" is not a valid
timecode and the next valid timecode would be "00:01:00;02".
2020-12-30 13:33:25 +02:00
Sebastian Dröge 3b739530bf sccparse: Parse timecode only once when seeking
Also avoids an unwrap().
2020-12-30 13:04:55 +02:00
Sebastian Dröge 02310d8720 sccparse: Simplify timecode handling a bit 2020-12-30 13:02:09 +02:00
Sebastian Dröge a88fe95fee mccparse: Use the last known timecode as duration even if there were more invalid ones afterwards 2020-12-30 13:01:41 +02:00
Sebastian Dröge 38ecd43074 Use typed integer literals instead of casting 2020-12-29 17:29:46 +02:00
Sebastian Dröge 7e1181ab84 threadshare: Return a proper error type instead of () 2020-12-29 17:29:27 +02:00
Sebastian Dröge 640d8ef904 rusoto/aws_transcriber: Don't hold mutex across await points
This mutex is actually only ever used from a single thread, so use
AtomicRefCell instead. It provides the guarantees of a mutex but panics
instead of blocking.
2020-12-29 17:28:19 +02:00
Sebastian Dröge 005c62425b closedcaption: Update for glib::DateTime API changes 2020-12-24 13:36:07 +02:00
Blaxar Waldarax 348b865187 Added hsv plugin with hsvfilter and hsvdetector elements 2020-12-23 18:40:20 +01:00
Wonchul Lee 0d93910a39 tutorial: Sync doc link with gstreamer crates 2020-12-22 17:13:55 +09:00
Sebastian Dröge 3d617371af Update for macro renames 2020-12-20 20:43:45 +02:00
Sebastian Dröge ea6c05e16c Update everything for glib macro renamings 2020-12-18 00:44:49 +02:00
Sebastian Dröge 708c6aa57e Update for new simplified glib::Object::new() API 2020-12-17 18:15:54 +02:00
Jan Schmidt b80a607737 fallbackswitch: Reset fallback pad state on remove. 2020-12-11 13:02:00 +00:00
Jan Schmidt f57ce41e89 fallbackswitch: Document return parameters for get_next_buffer()
The return type for get_next_buffer() is quite complex, so add some
comments about what is what.
2020-12-11 13:02:00 +00:00
Jan Schmidt fddf33d339 fallbackswitch: Use pad as the debug object
Instead of using the aggregator as the object in debug statements
relating to pad dataflow, use the pad itself.
2020-12-11 13:02:00 +00:00
Jan Schmidt 34a2dd80a2 fallbackswitch: Move health checks to the OutputState.
Move some code to the OutputState from the fallbackswitch
struct to make things a bit cleaner.
2020-12-11 13:02:00 +00:00
Jan Schmidt 74f3de5674 fallbackswitch: Update for upstream changes 2020-12-11 13:02:00 +00:00
Jan Schmidt d5b648921c fallbackswitch: Add manual stream control mode
Add properties to report and notify on stream health changes, and
a mode where the app can control the stream switching by setting
the active-pad property manually.

This is useful for modifying the policy of fallbackswitch stream
choices, and to synchronise switching of multiple fallbackswitches
2020-12-11 13:02:00 +00:00
Seungha Yang c7fe08bf6d fallbacksrc: Fallback to videotestsrc if image fallback URI is invalid
... or on error from video fallback path
2020-12-11 12:35:26 +00:00
Sebastian Dröge b5796f5773 textwrap: Update to textwrap 0.13 2020-12-11 12:25:47 +02:00
Mathieu Duponchelle 09561686b8 jitterbuffer: mark from_glib fn as unsafe
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/446>
2020-12-08 20:03:20 +01:00
Sebastian Dröge 89b72b53d1 mccparse/sccparse: Ignore if pausing a task that does not exist anymore
Not really a problem anywhere here.
2020-12-07 10:47:14 +00:00
Mathieu Duponchelle 2131d5bfda sccparse, mccparse: fix deadlock on seek
Don't try to pause the sinkpad task while holding the state lock,
that's a bit rude.
2020-12-07 10:47:14 +00:00
Sebastian Dröge 46651e31c4 sodium: Handle error from Adapter::copy() 2020-12-07 11:42:48 +02:00
Sebastian Dröge 6aed1ed926 Remove various unneeded unwraps 2020-12-05 20:29:50 +02:00
Seungha Yang 58786fa0b5 sccparse: Add support for seeking
Only pull mode can support seeking for now and reverse playback
is not implemented yet. Note that this restriction is the same as that of
mccparse.
2020-12-01 11:07:34 +00:00
Seungha Yang 8b8380992f sccparse: Remove unnecessary timecode handling
Wasn't intended to be a part of commit d56ae71e0e
2020-12-01 11:07:34 +00:00
Guillaume Desmottes b81bdd823a gif: rename plugin to 'gif'
It's more coherent and what's actually used as library name.
2020-12-01 11:26:46 +01:00
Abdul Rehman 87d7b44dd2 ts-udpsink: Post Message on SinkMessage event 2020-11-24 20:01:50 +05:00