Matthew Waters
55b4de779c
tttocea708: add support for writing 608 compatibility bytes
...
608 compatibility bytes are generated using the same functionality as
tttocea608.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1406 >
2024-03-28 13:46:28 +11:00
Matthew Waters
9db4290d2d
tttocea608: move functionality to a separate object
...
Will be used by tttocea708 later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1406 >
2024-03-28 13:46:28 +11:00
Matthew Waters
df30d2fbd3
transcriberbin: add support for generating cea708 captions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1406 >
2024-03-28 13:46:28 +11:00
Matthew Waters
b0cf7e5c81
cea708mux: add element muxing multiple 708 caption services together
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1406 >
2024-03-28 13:46:28 +11:00
Matthew Waters
756abbf807
tttocea708: add element converting from text to cea708 captions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1406 >
2024-03-28 13:46:28 +11:00
Philippe Normand
7e1ab086de
dav1d: Require dav1d-rs 0.10
...
This version depends on libdav1d >= 1.3.0. Older versions are no longer
supported, due to an ABI/API break introduced in 1.3.0.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1512 >
2024-03-21 17:33:32 +00:00
Philippe Normand
be12c0a5f7
Fix clippy warnings after upgrade to Rust 1.77
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1512 >
2024-03-21 17:33:32 +00:00
Guillaume Desmottes
523a46b4f5
gtk4: scale texture position
...
Fix regression in 0.12 introduced by 3423d05f77
Code from Ivan Molodetskikh suggested on Matrix.
Fix #519
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1499 >
2024-03-15 13:43:32 +01:00
Seungha Yang
237f22d131
sccparse: Ignore invalid timecode during seek as well
...
sccparse holds last timecode in order to ignore invalid timecode
and fallback to the previous timecode. That should happen
when sccparse is handling seek event too. Otherwise single invalid
timecode before the target seek position will cause flow error.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1485 >
2024-03-06 11:12:04 +00:00
Sebastian Dröge
5df7c01cb5
closedcaption: Port from nom to winnow
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1475 >
2024-02-26 14:00:08 +02:00
Sebastian Dröge
7274c725a6
gtk4: Create a window if running from gst-launch-1.0 or GST_GTK4_WINDOW=1 is set
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/482
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1454 >
2024-02-09 15:05:45 +02:00
Ivan Molodetskikh
d8a61edca0
gtk4: Add scaling-filter and use-scaling-filter properties
...
The property is added under the gtk_v4_10 feature because it requires
GTK 4.10.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1309 >
2024-02-08 15:02:36 +02:00
Ivan Molodetskikh
3423d05f77
gtk4: Do scaling with append_texture()
...
This is equivalent, but will be needed for the scaling filter support.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1309 >
2024-02-08 15:02:36 +02:00
Sebastian Dröge
0fe4e0bf0b
gtk4: Add property to the paintable for selecting the background color
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1452 >
2024-02-08 12:35:26 +02:00
Sebastian Dröge
9971f71e94
gtk4: Always draw a black background behind the video frame
...
This makes sure that there is the same background behind the frame, no
matter if black borders have to be added or not. Without this a frame
that has transparency would change rendering depending on the layout.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1452 >
2024-02-08 12:35:26 +02:00
Sebastian Dröge
803550111a
gtk4: Improve handling of RGBA GL textures in GTK
...
GTK 4.14 comes with a new GL renderer that does not support GL shader
nodes anymore, so the conversion from non-premultiplied alpha to
premultiplied alpha has to happen differently.
For GTK 4.14 or newer we use the correct format directly when building the
texture, but only if a GLES3+ context is used. In that case the NGL renderer is
used by GTK, which supports non-premultiplied formats correctly and fast.
For GTK 4.10-4.12, or 4.14 and newer if a GLES2 context is used, we use a
self-mask to pre-multiply the alpha.
For GTK before 4.10, we use a GL shader and hope that it works.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/488
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1452 >
2024-02-08 12:35:26 +02:00
Ruben Gonzalez
09e9c047df
gtk4: Fix segfault running gst-inspect -a
when GTK4 and GTK3 is installed
...
Segmentation fault when getting default value of paintable property
from gtk4paintablesink element when libgtk-4.so.1 from libgstgtk4.so
and libgtk-3.so.0 from libgstgtk.so are installed:
> cannot register existing type 'GdkDisplayManager'
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/490
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1453 >
2024-02-08 08:32:14 +00:00
Bilal Elmoussaoui
d25a222bf9
Drop direct muldiv dependency
...
It is re-exproted in gstreamer's prelude
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1446 >
2024-02-05 15:34:31 +01:00
Bilal Elmoussaoui
0615a16124
Use workspace features for crates metadata/deps
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1446 >
2024-02-05 15:34:31 +01:00
Sebastian Dröge
1a55c70114
Switch git dependencies to explicitly name branch
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1445 >
2024-02-05 12:51:36 +02:00
Sebastian Dröge
4ad101b53b
Use once_cell crate directly again
...
The glib crate does not depend on it anymore and also does not re-export
it anymore.
Also switch some usages of OnceCell to OnceLock from std.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1441 >
2024-01-31 18:07:57 +02:00
Sebastian Dröge
08af298d11
gif: Update to gif 0.13
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1441 >
2024-01-31 18:07:57 +02:00
Sebastian Dröge
d36c91d10f
rav1e: Update to rav1e 0.7
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1421 >
2024-01-04 12:59:50 +02:00
Guillaume Desmottes
d9397ef174
gtk4: fix build on Windows using winegl
...
from_glib_full() was not in scope.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1417 >
2023-12-26 23:22:35 +01:00
Sebastian Dröge
1ef47cb48e
Fix a few new clippy 1.75 warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1415 >
2023-12-22 16:40:18 +02:00
Sebastian Dröge
763739e3ae
Update for Buffer
/ Memory
API changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1409 >
2023-12-17 14:07:12 +02:00
Guillaume Desmottes
6dfd1c1496
use new debug and parse API
...
Changes from https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1355
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1403 >
2023-12-04 15:58:21 +01:00
Matthew Waters
d644bcd79a
closedcaption: update to cea708-types 0.3
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1398 >
2023-11-22 10:07:45 +11:00
Matthew Waters
5739a3d86f
cea608tocea708: create service's as requested
...
Allows the ability to push multiple Service blocks of the same service
into the same packet if necessary (unlikely but possible).
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1398 >
2023-11-22 00:12:50 +11:00
Matthew Waters
ded4261971
closedcaption: move some textstyle helpers to shared files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1398 >
2023-11-21 23:33:09 +11:00
Matthew Waters
fb9b511e15
closedcaption: move 708 service writing to shared file
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1398 >
2023-11-21 23:33:09 +11:00
Matthew Waters
4333e90220
tttocea608: use crate defined is_* functions instead of reeimplementing them
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1398 >
2023-11-21 23:33:09 +11:00
Sebastian Dröge
dd67dc87e3
gtk4: Update to windows-sys 0.52
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1395 >
2023-11-17 11:00:55 +02:00
Sebastian Dröge
a33f29365a
sccparse: Fix leading spaces between the tab and caption data
...
CCExtractor is creating files like this.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1378 >
2023-11-02 21:59:02 +02:00
Sebastian Dröge
16b917abb1
Update for gst::Rank
API changes
2023-11-02 14:10:59 +02:00
Sebastian Dröge
855b03a9ea
Use let-else instead of match for weak reference upgrades
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1375 >
2023-10-30 11:34:35 +02:00
Sebastian Dröge
74c04d79c9
gtk4: Use async-channel instead of the glib MainContext channel
...
The latter will be removed in favour of using async code in the future,
and async code generally allows for more flexible message handling than the
callback based MainContext channel.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1375 >
2023-10-30 11:21:25 +02:00
Sebastian Dröge
d468e1e4a6
Clean up usage of pad probes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1361 >
2023-10-17 08:44:06 +03:00
Sebastian Dröge
450ffbe452
Update for VideoFrame
/ GLVideoFrame
API changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1345 >
2023-10-02 13:25:25 +03:00
Sebastian Dröge
95a7a3c0ec
gtk4: Only support RGBA/RGB in the GL code path
...
For all other component orderings a shader is necessary to re-order the
components for what GTK expects.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1312 >
2023-09-20 13:22:41 +03:00
Ivan Molodetskikh
c237cf2c34
gtk4: Premultiply alpha in GL textures
...
GTK expects GL textures to have premultiplied alpha. The ones we get
from GStreamer don't, leading to incorrect rendering of semitransparent
frames.
GTK 4.12 gained an API to set a different GL texture format, but it
won't help for older GTK versions. Plus, at the time of writing, it
causes a very slow download/upload path in GTK.
So, use a GTK GL shader node to premultiply the alpha without leaving
the GPU.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1312 >
2023-09-20 13:04:59 +03:00
Sebastian Dröge
d688aeb184
Update versions to 0.12.0-alpha.1
2023-08-10 17:21:11 +03:00
Sebastian Dröge
3b41f206bc
Don't generate .def files for plugins
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/389
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1299 >
2023-08-09 13:54:34 +03:00
Seungha Yang
516c623df5
transcriberbin: Configure audioresample in front of transcriber
...
Allows any samplerate and make it negotiable. Fixing a scenario
where transcriberbin is configured with passthrough enabled,
(and negotiated samplerate is not supported by transcriber)
and then setting passthrough=false later during playback.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1287 >
2023-07-24 22:51:07 +09:00
Sebastian Dröge
31b1cb8ca6
Update minimum supported Rust version to 1.70
...
gtk-rs will update soonish too.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1280 >
2023-07-19 09:19:34 +03:00
Sebastian Dröge
bbd3d9ffe0
Remove unnecessary mut
everywhere
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1273 >
2023-07-11 10:09:35 +03:00
Bilal Elmoussaoui
dd2d7d9215
Use re-exported once_cell
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1268 >
2023-07-06 17:50:49 +03:00
Bilal Elmoussaoui
2cc98bf410
Adapt to glib::Continue rename
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1268 >
2023-07-06 17:50:49 +03:00
yatinmaan
1ed9992775
gtk4: Add python example
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1259 >
2023-07-02 00:31:32 +00:00
Sebastian Dröge
bbb88da9e0
videofx: Minimize dependencies of the image crate
...
Only the basic infrastructure is needed and none of the
decoders/encoders for various image formats.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1260 >
2023-06-26 14:21:44 +03:00