Commit graph

936 commits

Author SHA1 Message Date
François Laignel
3eed2f69d9 ts: have block_on panic if running on a Context thread 2020-01-16 00:18:16 +01:00
Guillaume Desmottes
a6adc81eb4 tutorial: use GEnum derive 2020-01-13 09:31:05 +05:30
Guillaume Desmottes
ce004a5bac cdgdec: reset the interpreter when stopping
Fully reset the interpreter state as if we decode later it will be
another file.
2020-01-10 10:49:44 +05:30
Guillaume Desmottes
119afdde2a cdg: cdgdec: reset interpreter when flushing
Prevent visual artifacts from the previous position when seeking to a
not keyframe.

Dumping cdg_renderer version as we need the new reset API.
2020-01-09 17:16:03 +05:30
Guillaume Desmottes
28e3e3199c meson: add test wrapper
Allow us to run the tests using 'meson test'.

Needed for https://gitlab.freedesktop.org/gstreamer/gst-ci/issues/46
2020-01-07 14:19:13 +05:30
Guillaume Desmottes
accd10dfea meson: add 'command' argument to cargo wrapper
Will be used to add test support.
2020-01-07 14:06:14 +05:30
Tobias Morell
aa40eae581 tutorial: Add enum property to control output on progress bin
Fixes #84
2020-01-06 11:22:40 +02:00
Guillaume Desmottes
e73e27cda4 ci: include gst-ci
- Use gst-ci's stages instead of our own
- Override GIT_STRATEGY for Rust only builds as gst-ci relies on
  gst-build subprojects by default.

First step merging our Rust CI with gst-ci. Once this is merged we'll
enable Rust in gst-ci builds and so will guard gst-plugins-rs MR against
breaking gst-build.
2020-01-03 14:35:49 +05:30
Guillaume Desmottes
13d4029f70 meson: add dav1d option
Allow to ensure that the plugin is actually build.
2020-01-03 09:46:29 +05:30
Guillaume Desmottes
46dda60db9 meson: don't pass empty --exclude when building all plugins
''.split(',') returns [''] and not [].
2020-01-03 09:41:41 +05:30
Guillaume Desmottes
e158f4ef88 meson: rename cargo.py to cargo_wrapper.py
Fix 'cargo build' on Windows as its $PATH includes $PWD, it seems to
pick our script rather than the actual cargo.
2020-01-03 09:35:10 +05:30
Mathieu Duponchelle
e2a2a17f09 fallbackswitch: disable extra warnings for aggregator build 2020-01-02 15:07:10 +00:00
Sebastian Dröge
9cade5bbe0 closedcaption: Put framerates into the src pad template caps of sccparse/mccparse
We're always providing a framerate on the output and without this it's
not possible to link the parsers to ccconvert while having it convert to
CEA708 CDP.
2020-01-02 16:44:38 +02:00
Guillaume Desmottes
cbb1912e99 meson: check for dav1d dep
Needed to build dav1d-sys which is required by the dav1d decoder plugin.

Exclude the plugin if the dep isn't found, preventing the build to fail.
2020-01-02 08:19:55 +00:00
Guillaume Desmottes
db8b2ad08b threadshare: fix coding style
Just ran 'gst-indent'.
2020-01-02 11:49:39 +05:30
Guillaume Desmottes
9b33c3627d fallbackswitch: fix coding style
Just ran 'gst-indent'.
2020-01-02 11:49:13 +05:30
Sebastian Dröge
6d2ab03f56 reqwesthttpsrc: Simplify code to block on futures 2019-12-31 14:19:04 +02:00
Sebastian Dröge
b1e85c7fa0 reqwest: Update tests to hyper 0.13 2019-12-31 12:20:14 +02:00
Sebastian Dröge
672cb730a8 reqwest: Update to reqwest 0.10 / tokio 0.2 2019-12-31 11:49:09 +02:00
Philippe Normand
9d659fbd00 ci: Add dav1d build support 2019-12-24 15:10:58 +01:00
Philippe Normand
84c40b872d dav1d: Add dav1ddec element
This element uses the Dav1d AV1 decoder library to decode AV1 video.
2019-12-24 15:10:58 +01:00
Guillaume Desmottes
317679fec3 meson: add gstreamer-rs deps
Fix race when building from gst-build as we need to be sure that all
these deps have been built before starting building gst-plugins-rs which
will build gstreamer-rs.
2019-12-24 13:58:56 +05:30
Sebastian Dröge
e877da0ba3 rav1e: Update for VideoEncoder::set_format() API changes 2019-12-23 13:31:24 +02:00
Sebastian Dröge
9772adbfbf Fix various new clippy warnings from 1.40 2019-12-22 11:35:01 +02:00
Sebastian Dröge
bc94cc999e Run clippy on --all-targets 2019-12-22 10:20:18 +02:00
Sebastian Dröge
dea2cb769d rav1e: Update to 0.2 release 2019-12-22 10:14:34 +02:00
François Laignel
688357a474 Update jitterbuffer.rs + clippy pass 2019-12-21 10:58:14 +01:00
François Laignel
dfbc0d3975 Move jitterbuffer to its own directory module 2019-12-21 10:45:43 +01:00
François Laignel
0221524a10 Update to tokio release 0.2.5 + throttling 2019-12-21 08:56:43 +01:00
François Laignel
e8f5191ee7 ts: Pad wrapper for async processing
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/merge_requests/170#note_276334
and https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/merge_requests/204
2019-12-21 08:56:43 +01:00
François Laignel
bdadf25f5c Clippy pass 2019-12-19 20:44:00 +01:00
François Laignel
ff470e9799 ts: move iocontext.rs to runtime/executor.rs
Part of: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/merge_requests/170
2019-12-19 20:44:00 +01:00
François Laignel
8eec141517 threadsharing: migrate to async/await and tokio 0.2.0-alpha.6
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/merge_requests/164
2019-12-19 20:44:00 +01:00
Sebastian Dröge
a91d0d929c Use functions with correct mutability for BaseParseFrame/VideoCodecFrame 2019-12-18 18:55:17 +02:00
Guillaume Desmottes
9390295281 add meson support
This is needed to integrate gst-plugins-rs with gst-build, see
https://gitlab.freedesktop.org/gstreamer/gst-build/issues/63
2019-12-18 10:41:21 +00:00
Sebastian Dröge
ccfb8246be Fix compilation after gstreamer-rs!383 2019-12-18 08:17:42 +02:00
Sebastian Dröge
ef8adbf113 gst-plugin-version-helper: Update git2 dependency to 0.11 2019-12-18 07:42:00 +02:00
Sebastian Dröge
916c382171 gst-plugin-tutorial: Update markdown for using lazy_static! to declare the debug category 2019-12-17 09:35:21 +02:00
Sebastian Dröge
5ca81246f1 gst-plugin-tutorial/tutorial1: Add missing description line to Cargo.toml in the markdown 2019-12-16 16:34:43 +02:00
Sebastian Dröge
064cc827a3 Fix video plugins build after gstreamer-rs!377
VideoInfo::from_caps() now returns a Result.
2019-12-15 10:53:11 +02:00
Philippe Normand
0f99994d9e Fix audio plugins build after gstreamer-rs!376
AudioInfo::from_caps() now returns a Result.
2019-12-14 15:26:20 +00:00
Sebastian Dröge
23ed11e52f closedcaption: Use RangeBounds::contains() directly instead of our copy
It's stabilized since 1.35 and we require at least 1.39 nowadays.
2019-12-14 11:12:18 +02:00
Sebastian Dröge
f638b0eef7 Remove usage of glib_floating_reference_guard!()
It's not needed anymore.
2019-12-07 23:04:35 +02:00
Sebastian Dröge
486e0e3420 tutorial/progressbin: Handle streams without duration correctly
The "percent-double" field in the message from the progressreport
element only exists if the overall duration of the stream is known.
2019-12-07 11:03:16 +02:00
Sebastian Dröge
0eab103066 togglerecord: Update parking_lot dependency 2019-11-27 08:23:22 +01:00
Sebastian Dröge
78eebf7b15 Update various dependencies 2019-11-21 07:16:26 +00:00
Sebastian Dröge
9f75a1cecc Update for new BaseTransformImpl::set_caps() return type 2019-11-21 01:02:10 +02:00
Guillaume Desmottes
7ba1e6f60d cdg: typefind: improve CDG packets detection heuristic
We used to look at the first 10 seconds of data to compute the ratio of
CDG packets. This was not working great for files having a long intro
as no video was displayed during this time.

Split the single search window into multiple smaller ones and walk
through the whole file hoping to find a section containing CDG packets.

With this change we are now fetching at most 230400 bytes of data,
but in almost all matching cases we find the type way before that.

This heuristic is good enough to be able to properly detect all the cdg
files from my collection (77625 files).
2019-11-14 15:49:36 +05:30
Guillaume Desmottes
e1b96960b2 cdg: typefind: factor out compute_probability()
No semantic change.
2019-11-14 15:49:36 +05:30
Guillaume Desmottes
1895c72ca6 cdg: typefind: define the search window in seconds rather than bytes
Makes it easier to read and fine tune.
2019-11-14 15:49:36 +05:30