Mathieu Duponchelle
4074f4c275
transcriberbin: simplify latency query implementation
...
By always replying with a synthetic latency
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1925 >
2024-11-18 19:24:57 +01:00
Mathieu Duponchelle
10a022e457
transcriberbin: expose unsynced source pads for original transcripts
...
.. when the transcriber exposes those.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1915 >
2024-11-18 17:30:54 +00:00
Mathieu Duponchelle
b5bd7d047c
awstranscribe: output original transcripts to separate pad
...
When the transcriber is used in a live situation, it can be useful
to save a transcript for editing after the fact when producing a
VOD.
Each source pad now gets an "unsynced_" pendant. That unsynced pad
is pushed to from the context of the "live" source pad task. Flow
returns from the unsynced pads are ignored, we simply check the
last flow return before attempting to push the next transcript.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1915 >
2024-11-18 17:30:54 +00:00
Jordan Petridis
39e9ad1d29
cargo: Default to thin lto for the release profile
...
Normal "fat" lto is quite resource heavy and requires
a lot of ram at compile time. Thinlto is a
much lighter alternative that produces comparable results
performance but it scales much better. [1] [2] [3]
All browser engines also compile with thinlto exclusively,
as it's almost as fast and saves considerable amount of
link time in the build.
[1]: https://doc.rust-lang.org/cargo/reference/profiles.html#lto
[2]: https://clang.llvm.org/docs/ThinLTO.html
[3]: https://blog.llvm.org/2016/06/thinlto-scalable-and-incremental-lto.html
In a test build on a windows machine, this brings down
the from scratch compile time from 7m30s to roughly 5m.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1922 >
2024-11-18 16:33:21 +02:00
Jochen Henneberg
28a200be30
fmp4mux: Fixed comment and removed commented code from test
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1921 >
2024-11-18 09:52:23 +00:00
Jochen Henneberg
08c026cea6
fmp4mux: Accept tag updates before stream starts
...
Tag updates should be done if either the tag is set before the stream
started or if tag changes are allowed while the stream is already
running.
Fixes #629
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1921 >
2024-11-18 09:52:23 +00:00
Sanchayan Maity
28e66e150f
net/quinn: Use aggregator as base class for quinnroqmux
...
While at it, also update and fix the docs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1775 >
2024-11-18 11:46:20 +05:30
Sanchayan Maity
8dc8aa6f55
Update docs for quinn elements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1775 >
2024-11-18 10:59:53 +05:30
Sanchayan Maity
accb6b02ea
net/quinn: Add muxer and demuxer for RTP over QUIC
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1775 >
2024-11-16 11:46:13 +05:30
Sanchayan Maity
d5425c5225
net/quinn: Fix test using QUIC Stream
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
5bf44b6187
net/quinn: Enable log feature
...
This is required if and when we do need to capture logs from quinn for
debugging.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
324f3531be
net/quinn: Use aggregator as base class for quinnquicmux
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
46f1fb4430
Update docs for quinn elements
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
5c829e6ca8
net/quinn: Add quinnquicdemux to support stream demultiplexing
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
f4ecf3873b
net/quinn: Handle multiple stream connections in quinnquicsrc
...
While at it, use PushSrc as base class. quinnquicsrc never supported
seeking and only ever operated in push mode. Length and offset for
create from BaseSrc was also never really honoured. Use PushSrc as
the base class which is more appropriate.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
babb6f360b
net/quinn: Support stream multiplexing in quinnquicsink
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
1cc2682b55
net/quinn: Add quinnquicmux to support stream multiplexing
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
0eb3f52356
net/quinn: Add helper for queries
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
0e89a79727
net/quinn: Add helper for adding stream id as meta to buffers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1634 >
2024-11-15 23:14:13 +00:00
Sanchayan Maity
9b5f4b48ca
docs: Fix CI failure due to missing GRAY10_LE16 entry
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1920 >
2024-11-15 20:00:09 +05:30
Mathieu Duponchelle
d993c95e38
transcriberbin: fix initial transcription setup
...
Only link the audio tee with the pad transcriber when it is not
in passthrough mode.
Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/628
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1916 >
2024-11-14 17:35:33 +00:00
Mathieu Duponchelle
4284fe953a
transcriberbin: expose lateness property
...
Directly mapped to the lateness property on the transcriber object.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1910 >
2024-11-14 16:40:14 +00:00
Taruntej Kanakamalla
75a0baa6fa
threadshare: udp: avoid getifaddrs in android
...
until the issue https://github.com/mmastrac/getifaddrs/issues/5 is fixed
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1917 >
2024-11-14 20:01:42 +05:30
Taruntej Kanakamalla
1963dad67e
threadshare: net: correct the member name in ip_mreq
...
missed changing to `ifr_interface` after switching to the libc crate
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1917 >
2024-11-14 16:43:59 +05:30
Taruntej Kanakamalla
b16379d00b
threadshare: udp: add multicast-iface property
...
similar to the non threadshare counterparts, the ts-udpsink can accept
only one multicast interface and the ts-udpsrc can accept a list of
interfaces to be listening on for the multicast.
Use the getifaddrs crate to get the available network interfaces and filter
the desired interfaces from the available interfaces
Reuse a custom api written for PTP helper to join and leave multicast group
for IPv4 based addresses. Continue to use the UdpSocket crate's _multicast_v6
to join/leave an IPv6 multicast group
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1420 >
2024-11-14 00:02:04 +00:00
Jochen Henneberg
580e06a002
fmp4mux: Let test consume remaining buffers after EOS
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1914 >
2024-11-13 13:35:56 +01:00
Jochen Henneberg
b95f39f4bf
fmp4mux: Avoid error on caps change with incomplete GOP pushed
...
New fragments may accept inter-frames if an incomplete GOP has been
pushed after a caps change and upstream did not handle the
force-key-unit event.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1914 >
2024-11-13 10:25:58 +01:00
Thibault Saunier
1dcf0943db
tracers: buffers-lateness: Add a signal to force writing log file
...
This way applications can write the queue levels info whenever it wants
and does not need to wait for the application to quite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1912 >
2024-11-12 13:04:43 -03:00
Thibault Saunier
153d4c7ac5
tracers: queue-levels: Add a signal to force writing log file
...
This way applications can write the queue levels info whenever it wants
and does not need to wait for the application to quite.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1912 >
2024-11-12 13:04:43 -03:00
Sebastian Dröge
def8a29cc6
Update CHANGELOG.md for 0.13.3 release
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1905 >
2024-11-12 11:51:30 +02:00
Sebastian Dröge
a56d82340d
Update CHANGELOG.md for 0.13.2
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1826 >
2024-11-12 11:51:30 +02:00
Jerome Colle
f88c88ddb3
webrtcsink: set rtpgccbwe min bitrate
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1896 >
2024-11-07 18:00:12 +00:00
Jochen Henneberg
26a6c3b7b9
fmp4mux: Fixed caps change handling for multiple streams
...
* Moved FKU code into separate function.
* Send FKU for each stream where the caps change happened.
* Send FKU for each stream where an incomplete GOP has been pushed on
caps change.
* Push incomplete GOP from stream if the early fragment end would not
contain that stream otherwise.
* If an incomplete GOP has been pushed on the previous fragment accept
inter-frames on the next fragment and do not drop them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1895 >
2024-11-07 14:35:09 +00:00
Sebastian Dröge
e7813ca3fc
deny: Update
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1911 >
2024-11-06 11:05:44 +02:00
Sebastian Dröge
f73ade7ea4
Update Cargo.lock
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1911 >
2024-11-06 11:03:35 +02:00
Sebastian Dröge
ef39046e18
Update to thiserror 2
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1911 >
2024-11-06 11:02:41 +02:00
Mathieu Duponchelle
635a83a8d7
transcriberbin: notify passthrough at the appropriate time
...
We want to enable passthrough internally, and only notify that
internally it has been enabled once the transcriber has been unlinked.
This way applications connected to the notify handler can synchronously
update the properties and attempt to disable passthrough again.
Doing so properly requires a refactoring of the transition to the
passthrough state, with the currently set passthrough mode maintained
separately from the target passthrough state.
This commit also finishes the work left incomplete in
17d7997137
by moving the passthrough
property to the sink pad class, making each transcriber passthrough
state independent from the others.
Also adds an example to demonstrate the behavior
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1856 >
2024-11-05 12:23:54 +00:00
Mathieu Duponchelle
5f8e8b4873
aws: add wrapper for the polly text to speech API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1899 >
2024-11-05 08:46:48 +00:00
Guillaume Desmottes
ce7d314349
spotify: make common module public
...
Karapulse implements its own bin wrapping spotifyaudiosrc,
spotifylyricssrc and videotestsrc for rendering Spotify songs.
This element has lived in my own gst-plugins-rs branch for ages but now
that spotifylyricssrc has been usptreamed I'd like to move it to the
Karapulse source tree.
But to be able to do so it needs to be able to use the common module
from the spotify plugin.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1907 >
2024-11-02 16:14:08 +01:00
Sebastian Dröge
76282cd385
gtk4: Add missing interfaces to the widget
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1904 >
2024-11-02 13:00:28 +02:00
Sebastian Dröge
f4b93dc0fb
Update Cargo.lock
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1904 >
2024-11-02 12:28:46 +02:00
Guillaume Desmottes
c7c71a830c
spotify: bump librespot dep to 0.6
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1902 >
2024-11-01 15:12:46 +01:00
Thibault Saunier
93ade2526d
tracer: snapshot: Add some documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
f752516e31
tracer: snapshot: Add an explicit \xdg-cache\
parameter
...
Instead of that magically xdg-cache string
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
344326434c
tracers: snapshot: Add an option to use folders for each snapshot
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
f6d550d571
tracers: snapshot: Add an option to add pipeline pts in file names
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
6551a4631c
tracers: pipeline_snapshot: Add a "cleanup-mode" to remove dot files when wanted
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
e531c7f625
tracers: pipeline_snapshot: Make it controllable inside apps
...
Exposing properties so that user can configure it when instantiating it
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Thibault Saunier
27b02445d0
tracers: pipeline_snapshot: Allow passing dot-dir as a parameter
...
Overriding the default GST_DEBUG_DUMP_DOT_DIR env var
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1889 >
2024-11-01 07:09:58 +00:00
Nirbheek Chauhan
d9ed642057
ci: Switch from URL to PATH for trigger CI variable
...
Use a path, which contains the namespace and the repo name instead of
the complete URL when triggering the Cerbero CI pipeline. Some of the
jobs in the Cerbero pipeline (specifically the examples build) need to
curl the API, and they need the path for that, not the website or git
URL.
The examples build doesn't use gst-plugins-rs, but we change this at
the same time as the monorepo for consistency.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1900 >
2024-10-31 04:05:24 +05:30