Sebastian Dröge
9903d536b5
mp4mux: Factor out running time to UTC time calculation into a function
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/979 >
2022-11-18 12:21:25 +02:00
Sebastian Dröge
aa7fd34097
mp4mux: Remove unnecessary error case of negative PTS when doing the ONVIF UTC time calculations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/979 >
2022-11-18 12:21:25 +02:00
Sebastian Dröge
02fc343642
gif: Update to gif 0.12
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/980 >
2022-11-18 09:03:21 +00:00
Sebastian Dröge
456fb276d6
Revert "Update for pango API changes"
...
This reverts commit 6e54d3cea9
.
The change was wrong and the pango bindings work the same as before
again.
2022-11-18 10:58:41 +02:00
Sebastian Dröge
6e54d3cea9
Update for pango API changes
...
pango::Language::from_string() can fail and also can accept None as
argument.
2022-11-18 09:46:50 +02:00
Sebastian Dröge
1981ffbea0
Provide explicit type to Iterator::sum()
calls to avoid ambiguity
2022-11-17 10:16:26 +02:00
Thibault Saunier
6b11284e8a
webrtcsink: Make the turn-server prop a turn-servers
list
...
So that we can simply specify several turn servers at once
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/973 >
2022-11-16 14:48:16 +00:00
Guillaume Desmottes
2642410702
spotify: fix "start a runtime from within a runtime" with static link
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/976 >
2022-11-16 13:20:38 +01:00
Arun Raghavan
3abd13e57b
aws: s3sink: Treat stopping without EOS as an error for multipart upload
...
This allows us to try to clean up based on configuration (abort /
complete / do nothing) if the pipeline is shut down without an EOS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/970 >
2022-11-15 02:28:35 +00:00
Sebastian Dröge
bf9f7a747e
closedcaption: Update for deprecated chrono functions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/978 >
2022-11-12 18:41:08 +02:00
Sebastian Dröge
3094bd96df
version-helper: Update for deprecated chrono functions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/978 >
2022-11-12 18:24:48 +02:00
Guillaume Desmottes
37cb636140
webrtc: README: fix couple of links
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/975 >
2022-11-11 14:51:46 +01:00
Mathieu Duponchelle
66e7b314f7
webrtcsink: improve debug
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/972 >
2022-11-10 15:00:19 +00:00
Sebastian Dröge
4d310434ab
mp4mux: Skip gap buffers instead of writing empty samples
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/974 >
2022-11-10 12:59:53 +02:00
Sebastian Dröge
2b4fd40d62
mp4: Add ONVIF non-fragmented MP4 muxer
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/974 >
2022-11-10 12:59:53 +02:00
Sebastian Dröge
97bb327b2a
mp4: Remove unneeded cast in tests
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/974 >
2022-11-10 12:44:46 +02:00
Tim-Philipp Müller
8d1c7cef3e
ci: add trigger job and only run documentation job post-merge
...
- require manual trigger to run pipeline on branches and MRs
- require manual trigger to run pipeline post-merge (excl. docs)
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/417
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/965 >
2022-11-09 20:47:22 +02:00
Tim-Philipp Müller
cc8d84330c
ci: add integration stage and move documentation job to that
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/965 >
2022-11-09 20:37:43 +02:00
François Laignel
e1afa43aa3
ts/udpsink: handle items in the PadSinkHandler
...
... instead of forwarding them to a Task via a channel.
This improves CPU usage by 5% according to `udpsrc-benchmark-sender`
with the `tuning` feature using default audio test buffers and
400 streams on the same ts-context.
It is expected to improve latency significantly. This is inferred
from `ts-standalone`: latency shrinks from around 5ms to 1.5µs
using the `task` sink compared to the `async-mutex` sink.
The async Mutex is mandatory here as we need to hold the lock
across await points.
2022-11-09 07:55:04 +00:00
François Laignel
29a490f6dc
ts: introduce ts-audiotestsrc
...
This makes it easy to generate "listenable" signals and to evaluate
discontinuities.
When the `tuning` feature is activated and the `main-elem` property
is set, the element can log the parked duration in %, which is an
image of the CPU usage for the ts-context.
This commit adds a test mode to `udpsrc-benchmark-sender` which
generates default audio buffers from `ts-audiotestsrc`. The `rtp`
mode is modified so that it uses `ts-audiotestsrc`.
2022-11-09 07:55:04 +00:00
François Laignel
9b96cfc452
ts/standalone: add new Sinks
...
Contrary to the existing Task Sink, the Async and Sync Mutex Sinks
handle buffers in the `PadSinkHandler` directly. The Async Mutex
Sink uses an async Mutex for the `PadSinkHandlerInner` while the
Sync Mutex Sink uses... a sync Mutex.
All Sinks share the same settings and stats manager.
Use the `--sink` command line option to select the sink (default is
`sync-mutex` since it allows evaluating the framework with as little
overhead as possible.
Also apply various fixes:
- Only keep the segment start instead of the full `Segment`. This
helps with cache locality (`Segment` is a plain struct with many
fields) and avoids downcasting the generic `Segment` upon each
buffer handling.
- Box the `Stat`s. This should improve cache locality a bit.
- Fix EOS handling which took ages for no benefits in this
particular use case.
- Use a macro to raise log level in the main element.
- Move error handling during item processing in `handle_loop_error`.
This function was precisely designed for this and it should reduce
the `handle_item`'s Future size.
2022-11-09 07:55:04 +00:00
François Laignel
4616f0a4a4
ts/standalone: move current sink under task_sink
2022-11-09 07:55:04 +00:00
Sebastian Dröge
f22be3a586
deny: Update
2022-11-09 09:15:55 +02:00
Sebastian Dröge
10d8cc21e6
mp4: Update to url 2
2022-11-09 09:15:50 +02:00
Sebastian Dröge
360e4275ed
threadshare: Update to concurrent-queue 2
2022-11-09 09:15:38 +02:00
Sebastian Dröge
c2f403f998
gst-plugin-mp4: Add new MP4 plugin with a non-fragmented MP4 muxer
2022-11-08 19:08:47 +02:00
Sebastian Dröge
a5f3197651
Add missing doc
features to WebRTC plugins
2022-11-07 18:06:29 +00:00
Sebastian Dröge
f062b7cf0d
fmp4mux: Make media/trak timescales configurable
...
And refactor a bit of code for easier extensibility.
2022-11-07 18:06:29 +00:00
Sebastian Dröge
e87251c7d9
ci: Update to cargo-c 0.9.14
2022-11-05 16:26:23 +00:00
Jan Beich
d01779dc6c
meson: optionalize pango dependency used by net/onvif
...
Similar to -Dpango=<auto|enabled|disabled> in gst-plugins-base.
2022-11-05 08:19:12 +00:00
Jan Beich
9aeaac5a96
ndi: provide Unix fallback after 3fe9e4a207
...
error[E0425]: cannot find value `LIBRARY_NAME` in this scope
--> net/ndi/src/ndisys.rs:336:23
|
336 | path.push(LIBRARY_NAME);
| ^^^^^^^^^^^^ not found in this scope
error[E0425]: cannot find value `LIBRARY_NAME` in this scope
--> net/ndi/src/ndisys.rs:339:33
|
339 | path::PathBuf::from(LIBRARY_NAME)
| ^^^^^^^^^^^^ not found in this scope
2022-11-05 02:51:28 +00:00
Sebastian Dröge
7ac29827d2
fmp4mux: Don't allow VP9 for CMAF
...
This would require setting the correct compatible band for VP9 in CMAF,
which is not implemented yet.
2022-11-03 16:53:01 +02:00
Sebastian Dröge
6706f3a4b4
fmp4mux: Add initial Opus support
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/239
2022-11-03 16:53:01 +02:00
Sebastian Dröge
9504e4d540
docs: Remove some stale entries of renamed elements
2022-11-03 15:09:20 +02:00
Arun Raghavan
54c84a7211
aws: Skip s3 test on Windows until we figure out why it times out
2022-11-02 13:14:08 -04:00
Sebastian Dröge
ba20fc735e
ci: Only warn about unknown lints instead of denying
2022-11-01 11:27:01 +02:00
Sebastian Dröge
a8250abbf1
Fix various new clippy warnings
2022-11-01 10:27:48 +02:00
Sebastian Dröge
31d4ba2eae
fmp4mux: For VP9, write resolution into the tkhd and include a stss box to signal that not all frames are sync samples
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/957 >
2022-10-31 15:20:19 +02:00
Sebastian Dröge
976ae5707e
webrtc: Update to human_bytes 0.4
2022-10-31 14:11:29 +02:00
Sebastian Dröge
6ceeadc0f0
aws: Update to aws 0.21/0.51
2022-10-31 14:11:29 +02:00
Sebastian Dröge
7106b0484d
fmp4mux: Remove unused uuid dependency
2022-10-28 12:45:42 +03:00
Sebastian Dröge
938f4e4f1c
fmp4mux: Clip negative PTS to zero/last PTS instead of erroring out
...
This can happen at the beginning of a stream if upstream is
rtpjitterbuffer and it has problems figuring out timestamps in the
beginning due to resetting / skew.
2022-10-27 14:47:16 +03:00
Sebastian Dröge
627bf756b1
fmp4mux: Send force-keyunit events for now if the ideal position has already passed
2022-10-27 12:53:09 +03:00
Sebastian Dröge
a56435801d
fmp4mux: Add debug log when writing the mfra box
2022-10-26 17:22:20 +00:00
Sebastian Dröge
27fac33c44
fmp4mux: Reset timing infos to None if a stream only contained gap events for a whole fragment
2022-10-26 17:22:20 +00:00
Sebastian Dröge
cab4cd3b8c
fmp4mux: If a stream is longer than the main stream at EOS, simply include all of its buffers in the last fragment nonetheless
2022-10-26 17:22:20 +00:00
Sebastian Dröge
ce166b4d8f
whipsink: Add object to debug logs
2022-10-26 16:20:26 +03:00
Matthew Waters
d067fb2ec8
fmp4mux: don't require dts for predictive-only formats like vp9
2022-10-26 11:42:13 +00:00
Guillaume Desmottes
d46857d3b1
aws: fix title in README
...
The title was not matching the actual plugin name which was confusing.
2022-10-26 11:13:47 +02:00
Sebastian Dröge
4c7dfceb9a
deny: Update
2022-10-25 11:03:32 +03:00