François Laignel
348a1d0207
text/json: use renamed gst feature 'serde'
2022-09-12 20:15:18 +00:00
François Laignel
2355be1cef
ts/jitterbuffer: extra robustness for Windows CI
...
jitterbuffer tests crash on Windows CI sometimes. Activating logs
showed time values which are probably not expected in a regular
environment, but which can happen there. Adding extra robustness
to `next_wakeup` computation seems to fix the problem judging by
the few runs I triggered.
2022-09-12 18:42:34 +00:00
Sebastian Dröge
cc0ef5290f
rtpav1depay: Don't unnecessary map RTP payload a second time
...
`RTPBuffer` already has it mapped internally and can give direct access
to it as byte slice.
2022-09-12 18:14:39 +03:00
Sebastian Dröge
7edc9e656f
rtpav1pay: Don't push buffers downstream while holding mutexes
...
And also push all packets that can be generated as a time as a single
buffer list instead of one by one.
2022-09-12 18:14:39 +03:00
Sebastian Dröge
f9a8e121e1
rtpav1: Remove some unneeded lifetime annotations
2022-09-12 18:14:39 +03:00
Vivienne Watermeier
8d73b5008a
Add RTP de/payloader elements for AV1
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/881
2022-09-12 18:14:39 +03:00
Jordan Petridis
2bf5f0bf67
ci: combine windows build jobs
...
Instead of having a matrix of jobs, use a single job running
all the tests like the linux jobs do.
This helps with improved cache hits as most of the deps are shared
between the builds.
2022-09-12 16:35:56 +03:00
Jordan Petridis
23c07d3cb3
ci: declare the depencency between build jobs
...
This enables the pipeline to execute jobs asyncronously when
they are ready, regardless if the pipeline stage has finished.
2022-09-12 08:16:10 +00:00
Jordan Petridis
3313a93ff7
ci/linux: also build with --no-default-features
...
Close #240
2022-09-12 08:16:10 +00:00
Jordan Petridis
165f3a788b
ci/windows: Build all the crates at once
...
In gst-rs we build each crate on its own, since not all
crates share the same features and some conflict with each other.
However currently, that isn't the case in plugins-rs and instead
we can be building all the crates with the same flags and simplify
the the script.
Close #241
2022-09-10 14:29:23 +03:00
Thibault Saunier
f966b3a573
meson: Fix usage of python3 variable which was renamed recently
2022-09-09 10:01:12 +03:00
Thibault Saunier
528bbcf67e
onvifmetadatacombiner: Do not classify as Muxer
...
It confuses `encodebin` and technically it is not really a muxer so
as agreed on IRC, I am proposing to remove that classification.
2022-09-09 10:01:12 +03:00
Mathieu Duponchelle
419cc03133
awstranscriber: only set vocabulary filter when vocabulary is set
...
AWS otherwise refuses to start the transcription.
2022-09-09 06:53:54 +00:00
Mathieu Duponchelle
72b659b3ea
awstranscriber: fix set_property for language-code
2022-09-09 06:53:54 +00:00
Jordan Petridis
de3972a707
ci: Add visual studio/msvc builds
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/841 >
2022-09-08 15:12:59 +03:00
Jordan Petridis
4616e3225c
ci: allow jobs to be interrupted
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/841 >
2022-09-08 12:55:18 +03:00
Sebastian Dröge
919b60bb6b
ci: Update to cargo-c 0.9.12
2022-09-07 12:15:21 +03:00
Sebastian Dröge
81ee30771c
pngenc: Allow using deprecated compression levels
2022-09-06 19:33:55 +03:00
Xavier Claessens
ef78498dc2
ci: Fix running gst-inspect inside devenv
...
There are 2 gst-inspect-1.0 executables, one in root builddir and
another one in subprojects/gstreamer/tools/. The latter does not link on
gst-full, meson devenv is supposed to set the former first in PATH, but
it seems to be flicky.
2022-09-06 11:53:15 -04:00
Mathieu Duponchelle
5ebf9913a1
signalling: add and fix test for consumer disconnection
...
Fixes #92
2022-09-05 22:28:37 +02:00
Mathieu Duponchelle
08b79ab8f1
signalling tests: fix typo in test name
2022-09-05 22:28:37 +02:00
Jordan Petridis
3c6086caeb
video/rspng: add missing doc feature gate
2022-09-05 11:47:46 +03:00
Jordan Petridis
d8e3894209
togglerecord: Port example to GTK 4
2022-09-05 11:47:37 +03:00
Jordan Petridis
a60f4e9ae8
fallbackswitch: Port the example to GTK 4
2022-09-05 11:47:28 +03:00
Jordan Petridis
005fbafb30
threadshare: disable tests that can't work on windows
...
These depend on socket properties that are not available on windows
2022-09-05 11:47:20 +03:00
Jordan Petridis
602c2588dc
text/json: hard depend on ser_de feature of gst crate
...
It's a hard dep instead a feature that can be disabled. It was
working with default features, but it was failing to build with
--no-default-features
2022-09-05 11:47:12 +03:00
Sebastian Dröge
1a40186485
Update for GLib ParamSpec builder API changes
2022-09-05 11:45:47 +03:00
Sebastian Dröge
3924e2e563
ci: Fix up image tags
2022-09-04 23:20:31 +03:00
Sebastian Dröge
46dddaf31c
Update minimum supported Rust version to 1.63
2022-09-04 21:31:55 +03:00
Sebastian Dröge
4e7ce210cd
meson: Fix directory/plugin name mapping for new webrtchttp plugin
2022-09-03 11:30:34 +03:00
Sebastian Dröge
462d7aa81a
meson: Fix gstwebrtc/gstsdp subproject usage
2022-09-03 11:21:03 +03:00
Xavier Claessens
184f862307
meson: Fix deprecation warning
...
meson.build_root() has been renamed to meson.global_build_root() to not
be confused with meson.project_build_root().
2022-09-02 22:00:57 +00:00
Xavier Claessens
d1d7e99978
meson: Blacklist csound and threadshare plugins for gst-full
...
They are known to be broken:
- csound is missing pkgconfig file.
- threadshare duplicates rtp symbols from GStreamer.
2022-09-02 22:00:57 +00:00
Xavier Claessens
4ac60165a8
meson: Define gst_plugins with list of dependencies
...
This is needed to link gst-full with Rust plugins. The script requires
either python11 or the tomli module.
2022-09-02 22:00:57 +00:00
Xavier Claessens
ad48d5e8f2
meson: Import python module only once
2022-09-02 22:00:57 +00:00
Xavier Claessens
8f932a7641
ci: Store meson logs into artifacts
...
This helps debugging failures.
2022-09-02 22:00:57 +00:00
Xavier Claessens
934e6c3888
ci: Make gst-build job manual on MRs
2022-09-02 22:00:57 +00:00
Xavier Claessens
16f9c37c71
Fix missing pkgconfig requires
2022-09-02 22:00:57 +00:00
Thibault Saunier
664e2b75bd
tsjitterbuffer: Fix latency type when getting property
2022-09-02 21:41:35 +00:00
Taruntej Kanakamalla
67e9ba8286
whipsink: A GstBin implementation for WHIP
...
Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1410
Created a new plugin 'webrtchttp' to implement all the
WebRTC HTTP protocols under /net/webrtc-http directory.
WhipSink wraps around 'webrtcbin' with HTTP capabilites
to exchange SDP offer/answer so an ICE/DTLS session can
be established between the encoder/media producer (WHIP client)
and the broadcasting ingestion endpoint (Media Server).
Once the ICE/DTLS session is set up, the media will
flow unidirectionally from the WHIP client to the
broadcasting ingestion endpoint (Media Server).
Spec:
https://www.ietf.org/archive/id/draft-ietf-wish-whip-04.html
2022-09-03 00:18:59 +03:00
Sebastian Dröge
827099d22d
aws: Update to aws 0.18/0.48
2022-09-02 10:46:02 +03:00
Thibault Saunier
c3a1536849
gcc: Fix deadlock on shutdown
...
We were holding the element .state lock while trying to shutdown leading
to a deadlock.
Fixes: https://github.com/centricular/webrtcsink/issues/90
2022-08-31 18:11:30 +02:00
Sebastian Dröge
cb339c1bf8
onvifmetadataparse: Pass through other XML as is with the UTC times based on the buffer PTSs
2022-08-31 10:33:16 +00:00
Sebastian Dröge
420f36251a
onvif: Rename onvif(de)pay to rtponvifmetadata(de)pay and include the metadata specifier in the other element names too
...
This is more descriptive and avoids any future conflicts with other
kinds of ONVIF specific RTP (de)payloaders.
2022-08-31 13:00:53 +03:00
Mathieu Duponchelle
8605df4b16
webrtcsink: vp8/9: don't hardcode threads property
...
and keep it at its default of 0 (automatic).
Hardcoding that value triggered abnormally excessive CPU usage when
connecting multiple consumers.
2022-08-31 01:20:14 +02:00
Mathieu Duponchelle
5b694988d1
Update dependencies
2022-08-31 01:16:39 +02:00
Thibault Saunier
a4f036499e
protocol: Rework the way peers set their status
...
- Remove registration messages
- Add a setPeerStatus method which lets other peers know about their roles
2022-08-30 22:28:55 +02:00
Thibault Saunier
7e59bb519e
protocol: Add a welcoming message, removing registering as consumer requirement
...
Since clients know from the start their Peer ID it is fine to go ahead
and connect as a consumer without prior registration.
2022-08-30 22:28:55 +02:00
Thibault Saunier
dbcbfef8c7
Refactor signalling protocol around a Session ID
...
This allows for more use cases to be handled like having several session
between 2 peers, and it simplifies the code a bit and makes the protocol
sensibly cleaner
Webrtcsink has been refactored a bit to take the new concept into
account
2022-08-30 22:28:55 +02:00
Thibault Saunier
f243f5fe5c
protocol: Add an "Unregister" message type
...
This way we can use the same WebSocket where several peerTypes being
communicated and some those type can be unregistered, re registered
without ever closing the Socket connection.
This also introduces sensible symmetry between different message types.
2022-08-30 22:28:55 +02:00