Mathieu Duponchelle
b7d1c178a3
tttocea608: clean up locking
...
Locking order of state and settings was inconsistent, and causing
deadlocks. Fix and document it, consistently drop locks before
chaining up events / pushing and avoid sequentially unlocking /
relocking settings in the same local code path.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/539 >
2021-08-03 18:23:53 +02:00
Sebastian Dröge
052365ba1a
Fix various needless-borrow clippy warnings and others
2021-07-30 13:53:35 +03:00
Ruben Gonzalez
54d8c5f6a9
Delete minimum GStremer required version for some plugins
...
Tested building the pluging with cargo-c and running gst-inspect-1.0
in a Ubuntu Xenial 18.04 LTS. It contains GStreamer 1.8.3.
2021-07-20 21:49:24 +02:00
Mathieu Duponchelle
5397f4bfaf
transcriberbin: remove leftover debug dot dumps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/531 >
2021-07-15 23:24:29 +00:00
Sebastian Dröge
f733f90333
closedcaption/mccenc: Fix unit test
...
The expected output contains the plugin version.
2021-07-09 14:14:51 +03:00
Sebastian Dröge
24ec79cd1a
Update versions to 0.8.0 for the master branch
2021-07-09 13:49:33 +03:00
Sebastian Dröge
1c3ae0f89a
Update versions to 0.7.0
2021-07-09 13:49:21 +03:00
SeaDve
82df25694a
gifenc: Add property to configure speed
...
Fixes #157 .
2021-07-05 11:50:41 +03:00
Mathieu Duponchelle
3cdc5870a1
transcriberbin: new high-level bin for speech to Closed Caption
...
This new element puts together some of the elements we've written
in recent times (awstranscriber, tttocea608, textwrap, cccombiner)
into a convenience high-level element.
The design of the element is AV in -> AV (+ CC metas) out.
The element exposes property to set and unset a "passthrough" mode,
during which the transcriber element's state is set to NULL but kept
in the bin, in order for the user to be able to set properties on
sub elements no matter what the current mode is, using the
GstChildProxy interface.
In addition, the element ensures that the latency it reports stays
fixed so that playback continues uninterrupted.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/528 >
2021-06-30 02:07:01 +02:00
Mathieu Duponchelle
23219c3c09
tttocea608: don't pad up to first input timestamp
...
When receiving data from a live upstream element, the first buffer
may have a non-0 timestamp (running time), and the element incorrectly
pushed padding buffers up to that timestamp, resulting in much confusion
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/527 >
2021-06-25 23:26:30 +00:00
Mathieu Duponchelle
d6f6f1a777
cea608overlay: expose "black-background" property
...
As stated in the spec:
> In addition, the user must have the capability to select a black
> background over which the captioned letters are displaced.
The property is MUTABLE_PLAYING
2021-06-18 09:48:44 +00:00
François Laignel
5439f14e57
fix clippy warnings
2021-06-05 10:36:22 +02:00
François Laignel
e16cad7c8f
video: migrate to new ClockTime design
2021-06-05 10:36:21 +02:00
François Laignel
8dfc872544
use gst::glib where applicable
2021-06-03 20:53:16 +02:00
Blaxar Waldarax
e9f0a3b8ac
hsv: added support for more RGB and BGR formats to hsvdetector and hsvfilter
2021-05-18 07:00:14 +00:00
Sebastian Dröge
04a60b8f46
Update repository URL for gtk-rs "core" crates
2021-05-13 09:50:08 +03:00
Sebastian Dröge
f4a3881dcf
Fix new 1.52 clippy warnings
2021-05-05 12:13:16 +03:00
Sebastian Dröge
3d24f1da22
closedcaption/cea608overlay: Fix compilation with cairo API changes
2021-05-04 14:31:58 +03:00
Sebastian Dröge
8bda233d02
rav1e: Fix compilation after VideoColorRange::Range0255 got renamed to VideoColorRange::Range0_255
2021-05-01 10:49:36 +03:00
Sebastian Dröge
75959e8c63
cdgdec: Remove unneeded VideoDecoderExtManual import
2021-04-26 14:58:15 +03:00
Sebastian Dröge
15cf738616
Update for Value trait refactoring
2021-04-25 15:48:55 +03:00
Mathieu Duponchelle
7923e26545
tttocea608: implement word wrapping in roll-up modes.
...
In roll-up modes, we open new lines when the last column is reached.
This commit implements lookahead on a word basis, in order to avoid
splitting words unless absolutely necessary (when a word won't fit
on a full row)
2021-04-20 17:53:12 +00:00
François Laignel
95cdd43f4f
manual fixes remove get prefix round 2
2021-04-20 18:19:58 +02:00
François Laignel
67c5871957
fix-getters-calls 0.3.0 pass
2021-04-20 18:19:58 +02:00
François Laignel
27bc5c89ca
fix-getters-def 0.3.0 pass
2021-04-20 18:19:58 +02:00
Mathieu Duponchelle
61214b5788
tttocea608: only warn when we do drop characters
...
In roll-up mode, we drop out of the loop and warn when the 32nd
character is reached, the warning is unnecessary when there were
no characters left to loop on.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/499 >
2021-04-16 21:16:46 +02:00
Mathieu Duponchelle
f95b5ee666
closedcaption/caption.c: fix deletion
...
Trying to write "" in order to erase characters in the caption
frame simply fails silently, the proper way to implement
delete_to_end_of_row and backspace was to memset the relevant
cells.
2021-04-15 14:35:22 +00:00
François Laignel
7d17f88941
post fix-getters manual updates
2021-04-13 17:24:20 +02:00
François Laignel
06accc8d98
fix-getters-{def,calls} pass
2021-04-12 15:57:19 +02:00
Seungha Yang
3dda2aebe9
closedcaption: Fix build with MSVC
...
Undefined ssize_t is used in eia608.h file as well
2021-04-01 05:13:24 +00:00
Sebastian Dröge
bb8931c39b
closedcaption: Don't needlessly create a full-range subslice of a slice
2021-03-25 22:59:14 +02:00
Sebastian Dröge
3a9a937bfd
Add license files to all new plugins
2021-03-22 20:10:29 +02:00
Mathieu Duponchelle
d9e727050c
video: implement webp decoder around libwebp-sys2 crate
...
Unlike webpdec from -bad, this element inherits from GstElement
and can decode animated webp data.
2021-03-20 10:53:20 +02:00
Mathieu Duponchelle
a500166082
cea608overlay: remove debug prints
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/480 >
2021-03-17 14:22:00 +01:00
Mathieu Duponchelle
0335893559
closedcaption: implement cea608tojson element
...
This element outputs the same format expected by tttocea608 in
json mode.
It notably differs from cea608tott in that it only uses libcaption's
low-level API, as it needs to maintain its own view of the current
state of the screen, and make fine-grained decisions as to when
to output data and how to timestamp it.
It covers a large portion of the 608 spec, with the exception of
a few features that probably haven't ever seen widespread usage,
those are listed in a TODO list at the top.
It has been tested with a reference file produced by CEA and covers
all the features it demonstrates.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/480 >
2021-03-17 14:22:00 +01:00
Mathieu Duponchelle
11238579a5
tttocea608: pad immediately for the duration of the input buffer
...
Pushing the pending padding once we receive the following gap
or buffer means we will push it too late otherwise.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/480 >
2021-03-12 11:20:44 +01:00
Sebastian Dröge
2cada57efc
Update for the subclassing glib/gstreamer bindings API changes
2021-03-09 17:07:13 +02:00
Sebastian Dröge
aa354058f5
Update pretty-assertions to 0.7, async-tungstenite to 0.13 and num-rational to 0.4
...
Also get rid of the funty workaround as nom now depends on the right
version.
2021-03-09 11:42:33 +02:00
Sebastian Dröge
dc0c5f7611
Update for new #[glib::object_subclass] attribute macro
2021-03-07 18:27:00 +02:00
Mathieu Duponchelle
a7df50e68f
ccdetect: fix 608 detection
...
When cc_type is 00 or 01 the CC is 608 data, the last bit only
denotes the field
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Mathieu Duponchelle
cc402f769c
cea608overlay: support all VideoCaptionType meta
...
Also expose a field property, to allow selecting CC for a
specific field when the information is available. Defaults
to automatically picking the first field encountered.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Mathieu Duponchelle
3c982a3de0
ccdetect: extract CDP parser to a separate module
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Mathieu Duponchelle
19611f0ebe
tttocea608: be more conservative when inserting spaces
...
We don't need to insert a space when starting a new line,
or before punctuation.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Mathieu Duponchelle
20607fe346
tttocea608: expose origin-column and origin-row properties
...
These can be controlled more precisely using json as the input
format, but exposing them as properties is still useful when
the input format is text.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Mathieu Duponchelle
126df546c0
tttocea608: make mode property mutable in PLAYING
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/474 >
2021-02-15 19:25:18 +00:00
Sebastian Dröge
1cd5d5ef45
Temporarily depend on funty 1.1.0 to work around breakage in 1.2.0
...
See https://github.com/myrrlyn/funty/issues/3
2021-02-14 11:07:26 +02:00
Sebastian Dröge
cbda137fbf
Fix various warnings from clippy 1.50
2021-02-09 18:57:34 +02:00
Sebastian Dröge
b649e9b076
Use gst::PARAM_FLAG_MUTABLE_PLAYING and others consistently everywhere
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/139
2021-01-31 15:43:00 +02:00
Sebastian Dröge
1a826caf75
cea608overlay: Handle errors when rendering captions more gracefully
...
Just don't output anything and log an error instead of panicking.
2021-01-31 11:18:37 +02:00
Sebastian Dröge
78c0ea6a4c
dav1d: Update to dav1d-rs 0.6
2021-01-25 14:55:25 +02:00