Thibault Saunier
f88552ee7f
meson: Handle features detection for gst version in a script
...
Instead of having a big list of features in the meson.build file, we
reuse the information from the Cargo.toml files
This refactors the dependencies to handle that new use case
There were issue in previous handling and only activating the `webrtc`
plugin was failing because the list of features incorrect.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/295
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1130 >
2023-03-12 09:16:34 +00:00
Sebastian Dröge
f7c8940ff2
gtk4: Update for glib::Priority
API changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1132 >
2023-03-12 10:27:16 +02:00
Sebastian Dröge
e757212741
deny: Update
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1131 >
2023-03-11 09:41:41 +02:00
Sebastian Dröge
c1bac30694
webrtc: Update to aws 0.54/0.24
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1131 >
2023-03-11 09:37:14 +02:00
Arun Raghavan
04bb7b4db0
fmp4: Return a running time in get_next_time()
...
We were currently returning a value based on the next chunk PTS, but the
expectation in GstAggregator is that we return a running time. This
resulted in spurious wakeups and warnings like:
0:00:01.501685123 1552995 0x55899715c1e0 WARN fmp4mux mux/fmp4/src/fmp4mux/imp.rs:1818:gstfmp4::fmp4mux:👿 :FMP4Mux::drain_buffers:<fmp4mux0:sink_1> Don't have a complete GOP for the first stream on timeout in a live pipeline
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1127 >
2023-03-10 10:58:38 -05:00
Talha Khan
a12a8c566d
livesync: Support variable framerate in fallback buffer duration calc
...
Avoids a divide by zero error
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1123 >
2023-03-10 09:18:28 +00:00
Jordan Petridis
9a50f1f318
ci: Update debian jobs to bookworm
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1125 >
2023-03-09 22:09:13 +02:00
Mathieu Duponchelle
584392049c
net/webrtc: implement AWS KVS signaller
...
And expose a wrapper webrtcsink variant, aws-kvs-webrtcsink.
This adds support in webrtcsink for processing a consumer offer, instead
of producing one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1114 >
2023-03-09 15:39:09 +00:00
Sebastian Dröge
82f1789589
Fix indentation broken by cargo clippy --fix
...
... and another clippy warning.
2023-03-09 17:38:41 +02:00
Sebastian Dröge
d3b7928b99
Fix a couple of new clippy warnings
2023-03-09 17:31:24 +02:00
Sebastian Dröge
b025d068f2
Update for remaining gst::Element::link_many()
and related API generalization
...
Specifically, get rid of now unneeded `&`.
2023-03-09 17:30:57 +02:00
Sebastian Dröge
fc5ed15af5
Update for gst::Element::link_many()
and related API generalization
...
Specifically, get rid of now unneeded `&`.
2023-03-09 16:46:52 +02:00
François Laignel
b9cd71d8eb
net/aws/transcriber: fix eos not being sent
...
For eos to be sent from the srcpad task loop, we need to go through `dequeue`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1122 >
2023-03-09 13:07:03 +01:00
François Laignel
2ea9f147ab
net/aws/transcriber: fix deadlock when the pipeline is interrupted
...
... also makes sure to abort the taks_iter Future.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1122 >
2023-03-09 13:07:03 +01:00
Guillaume Desmottes
f7c02cb3b0
uriplaylistbin: reset element when switching back to NULL
...
Allow us to re-use the element later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1121 >
2023-03-08 14:34:20 +01:00
Sebastian Dröge
3ef8a48ded
Fix a few new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1120 >
2023-03-07 08:47:01 +00:00
Guillaume Desmottes
93503c0ca9
spotify: move Settings to common module
...
Will be used to implement the lyrics source element.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1095 >
2023-03-05 14:35:04 +01:00
Sebastian Dröge
cd177dee86
Update CHANGELOG.md for 0.10.3
2023-03-02 13:35:47 +02:00
Vivia Nikolaidou
cd74d01324
ndisinkcombiner: Properly handle caps changes
...
We are caching one video buffer, so previously we were changing the src
caps one buffer too early.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1110 >
2023-03-01 12:30:54 +00:00
Sebastian Dröge
fb528941ea
deny: Update to allow socket2 0.4
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1113 >
2023-03-01 14:00:26 +02:00
Sebastian Dröge
e69f1e0b8c
threadshare: Update to socket2 0.5
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1113 >
2023-03-01 13:59:53 +02:00
François Laignel
4a988aaeb8
net/aws/transcriber: use a TranscriberLoop struct
...
This helps gather together the details related to the `TranscriberLoop`.
One difference with previous implementation is that the ws `Client` is
build each time the loop is started instead of being reused. With the new
approach, we don't keep the connection open after EOS and we should be
more resistant in case of a connection failure.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
f1a080c94e
net/aws/transcriber: own transcription items
...
So that we can avoid copying the content.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
36ae29d746
net/aws: enqueue transcribed buffers within the ws loop
...
Instead of sending transcription events to the src pad loop, this commit
enqueues the transcribed buffers immediately in the ws loop, then notifies
the src pad loop. The src pad loop is only in charge of dequeuing the buffers.
This should help with upcoming evolutions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
00153754bb
net/aws: use aws-sdk-transcribestreaming
...
Switch from manual webservice client impl to `aws-sdk-transcribestreaming`.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
François Laignel
57f365979c
net/aws: remove aws_ from the aws_transcribe* folder names
...
Those folders reside under `aws`, so there's shouldn't be any confusion.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1104 >
2023-03-01 08:47:58 +00:00
Thibault Saunier
ce3bb2f1d4
Add a webrtcsrc element
...
Updating the docker image to include:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3236
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/932 >
2023-02-28 20:50:15 -03:00
Thibault Saunier
0ae637f531
webrtcsink: Move RUNTIME to the crate so it can be reused
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/932 >
2023-02-28 17:57:14 -03:00
Thibault Saunier
4ec441560b
webrtc: Enhance debug messages when using unknown peer ID
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/932 >
2023-02-28 19:28:51 +00:00
Guillaume Desmottes
a0f6e84ec2
tracers: queue_levels: add appsrc support
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1111 >
2023-02-28 14:38:29 +01:00
Sebastian Dröge
ff2f7a8505
livesync: Correctly calculate fallback buffer duration from framerate
...
Numerator and denominator were switched.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1108 >
2023-02-28 12:52:11 +02:00
Matthew Waters
542c7e12b8
webrtcsink: also support nvvidconv in lieu of nvvideoconvert
...
nvvideoconvert may not exist and nvvidconv might on some Jetson
platforms.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1107 >
2023-02-28 10:12:36 +11:00
Sebastian Dröge
bca4af0c79
gtk4: Set sync point on the video frame after mapping it
...
Otherwise it is not always ready for use yet in GTK even after waiting
on the sync point, and a fully transparent texture is rendered instead.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/320
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1103 >
2023-02-24 11:52:28 +02:00
Sebastian Dröge
6bc72e513c
Update CHANGELOG.md for 0.10.2
2023-02-23 10:16:55 +02:00
Jordan Petridis
90455a8111
video/gtk4: Add a flatpak snippet example in the README
...
Close #155
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1102 >
2023-02-22 22:15:40 +02:00
Sebastian Dröge
ce1faa6020
gtk4: Attach channel receiver to the default main context from the main thread
...
It requires acquiring the main context for thread-safety reasons and
that is only possible from the main thread itself.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/319
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1099 >
2023-02-22 10:02:45 +02:00
Sebastian Dröge
f08b65ece1
gtk4: Don't unnecessarily set the sink to READY to retrieve the context
...
That's not needed and will cause the GL context messages to be not
distributed inside the pipeline.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1099 >
2023-02-21 21:36:45 +02:00
Sebastian Dröge
8aa5125d5b
gtk4: Refactor and simplify GL context handling
...
Create a single, global GDK GL context and the corresponding GStreamer
GL display and wrapped GStreamer GL context when initializing the first
sink and continue using that for all further sinks.
Additionally, don't create a full GStreamer GL context inside the sink
but only distribute the wrapped GL context in the pipeline so that
elements that actually need a full GL context can create one that is
sharing with that one. The sink itself does not need a full GStreamer GL
context.
Then inside the sink check that any GL memory that arrives was created
by a GL context that can share with the wrapped GDK GL context and only
then use it.
And lastly, use the correct GL contexts for a) creating a sync point and
b) actually waiting on it.
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/318
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1099 >
2023-02-21 21:36:45 +02:00
Sebastian Dröge
93051dba0e
ci: Update image version
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096 >
2023-02-20 13:08:51 +02:00
Sebastian Dröge
143bf7608e
ci: Update to cargo-c 0.9.15
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096 >
2023-02-20 13:08:46 +02:00
Sebastian Dröge
53b6efaa6e
ci: Update to dav1d 1.1
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096 >
2023-02-20 11:09:21 +02:00
Sebastian Dröge
9fc1404415
Update minimum supported Rust version to 1.66
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096 >
2023-02-20 11:09:01 +02:00
Seungha Yang
59222f7a35
mp4mux: Ignore framerate update
...
like mp4mux in -good does already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1094 >
2023-02-16 03:43:01 +09:00
Seungha Yang
6b15e772ac
fmp4mux: Ignore framerate update
...
like mp4mux in -good does already
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1094 >
2023-02-16 02:23:56 +09:00
Arun Raghavan
487d7fb26b
hlssink3: Allow GIOStream signal handlers to return None
...
If creating a playlist or fragment stream fails (disk is full, the
directory is removed, ...), we will currently crash because the signal
handler expects a non-None GIOStream. The actual callback is allowed to
return None values and we handle this in the caller, so let's not have
this restriction on the signal handler.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1093 >
2023-02-14 11:25:44 -05:00
Guillaume Desmottes
77e99e92fb
spotifyaudiosrc: use Settings Default to define default props
...
Makes it easier to change one property's default value.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1074 >
2023-02-13 18:04:53 +01:00
Sebastian Dröge
51d61af863
Add mp4
plugin to README.md
2023-02-13 11:56:33 +02:00
Sebastian Dröge
b0664b3c85
Update CHANGELOG.md for 0.10.1
2023-02-13 11:54:46 +02:00
Sebastian Dröge
04e101c605
Optimize various error message / debug message formatting
...
Directly make use of format strings instead of formatting a string
beforehand and then passing it to the macros.
2023-02-13 11:50:57 +02:00
Sebastian Dröge
034c0f0fd8
Add CHANGELOG.md for 0.10.0 release
...
This is the first one and only lists changes from 0.9.0 to 0.10.0
2023-02-12 13:15:17 +02:00