From 80f86645646a642b312ba344896c72bb13efc0f9 Mon Sep 17 00:00:00 2001 From: Sanchayan Maity Date: Thu, 2 May 2024 18:05:15 +0530 Subject: [PATCH 1/4] net/quinn: Use camel case acronym Part-of: --- docs/plugins/gst_plugins_cache.json | 4 ++-- net/quinn/src/quinnquicsink/imp.rs | 2 +- net/quinn/src/quinnquicsrc/imp.rs | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/plugins/gst_plugins_cache.json b/docs/plugins/gst_plugins_cache.json index 6526cc80..ad008d5b 100644 --- a/docs/plugins/gst_plugins_cache.json +++ b/docs/plugins/gst_plugins_cache.json @@ -3896,7 +3896,7 @@ "author": "Sanchayan Maity ", "description": "Send data over the network via QUIC", "hierarchy": [ - "GstQuinnQUICSink", + "GstQuinnQuicSink", "GstBaseSink", "GstElement", "GstObject", @@ -4056,7 +4056,7 @@ "author": "Sanchayan Maity ", "description": "Receive data over the network via QUIC", "hierarchy": [ - "GstQuinnQUICSrc", + "GstQuinnQuicSrc", "GstBaseSrc", "GstElement", "GstObject", diff --git a/net/quinn/src/quinnquicsink/imp.rs b/net/quinn/src/quinnquicsink/imp.rs index 888facbd..c1aa730f 100644 --- a/net/quinn/src/quinnquicsink/imp.rs +++ b/net/quinn/src/quinnquicsink/imp.rs @@ -324,7 +324,7 @@ impl ObjectImpl for QuinnQuicSink { #[glib::object_subclass] impl ObjectSubclass for QuinnQuicSink { - const NAME: &'static str = "GstQuinnQUICSink"; + const NAME: &'static str = "GstQuinnQuicSink"; type Type = super::QuinnQuicSink; type ParentType = gst_base::BaseSink; } diff --git a/net/quinn/src/quinnquicsrc/imp.rs b/net/quinn/src/quinnquicsrc/imp.rs index 23f36190..9af42d23 100644 --- a/net/quinn/src/quinnquicsrc/imp.rs +++ b/net/quinn/src/quinnquicsrc/imp.rs @@ -315,7 +315,7 @@ impl ObjectImpl for QuinnQuicSrc { #[glib::object_subclass] impl ObjectSubclass for QuinnQuicSrc { - const NAME: &'static str = "GstQuinnQUICSrc"; + const NAME: &'static str = "GstQuinnQuicSrc"; type Type = super::QuinnQuicSrc; type ParentType = gst_base::BaseSrc; } From 3a3cec96ffef7365481b76efb52f3c80759f2362 Mon Sep 17 00:00:00 2001 From: Sanchayan Maity Date: Thu, 2 May 2024 18:18:17 +0530 Subject: [PATCH 2/4] net/quinn: Add pipeline example Part-of: --- net/quinn/src/quinnquicsink/mod.rs | 13 +++++++++++++ net/quinn/src/quinnquicsrc/mod.rs | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/net/quinn/src/quinnquicsink/mod.rs b/net/quinn/src/quinnquicsink/mod.rs index 198ddd94..53a1c814 100644 --- a/net/quinn/src/quinnquicsink/mod.rs +++ b/net/quinn/src/quinnquicsink/mod.rs @@ -7,6 +7,19 @@ // // SPDX-License-Identifier: MPL-2.0 +/** + * element-quinnquicsink: + * @short-description: Send data over the network via QUIC + * + * ## Example sender pipeline + * ```bash + * gst-launch-1.0 -v -e audiotestsrc num-buffers=512 ! \ + * audio/x-raw,format=S16LE,rate=48000,channels=2,layout=interleaved ! opusenc ! \ + * quinnquicsink server-name="quic.net" client-address="127.0.0.1" client-port=6001 \ + * server-address="127.0.0.1" server-port=6000 certificate-file="certificates/fullchain.pem" \ + * private-key-file="certificates/privkey.pem" + * ``` + */ use gst::glib; use gst::prelude::*; diff --git a/net/quinn/src/quinnquicsrc/mod.rs b/net/quinn/src/quinnquicsrc/mod.rs index 0acf7876..203095fa 100644 --- a/net/quinn/src/quinnquicsrc/mod.rs +++ b/net/quinn/src/quinnquicsrc/mod.rs @@ -7,6 +7,19 @@ // // SPDX-License-Identifier: MPL-2.0 +/** + * element-quinnquicsrc: + * @short-description: Receive data over the network via QUIC + * + * ## Example receiver pipeline + * ```bash + * gst-launch-1.0 -v -e quinnquicsrc caps=audio/x-opus server-name="quic.net" \ + * certificate-file="certificates/fullchain.pem" private-key-file="certificates/privkey.pem" \ + * server-address="127.0.0.1" server-port=6000 ! opusparse ! opusdec ! \ + * audio/x-raw,format=S16LE,rate=48000,channels=2,layout=interleaved ! \ + * audioconvert ! autoaudiosink + * ``` + */ use gst::glib; use gst::prelude::*; From edd7c258c8f968f3373590009becf046da701466 Mon Sep 17 00:00:00 2001 From: Sanchayan Maity Date: Thu, 2 May 2024 18:18:38 +0530 Subject: [PATCH 3/4] Add `quinn` plugin to README Part-of: --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index dc107d15..3dcac73b 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,9 @@ You will find the following plugins in this repository: - `onvif`: Various elements for parsing, RTP (de)payloading, overlaying of ONVIF timed metadata. + - `quinn`: Transfer data over the network using QUIC + - `quinnquicsink`/`quinnquicsrc`: Send and receive data using QUIC + - `raptorq`: Encoder/decoder element for RaptorQ RTP FEC mechanism. - `reqwest`: An HTTP source element based on the [reqwest](https://github.com/seanmonstar/reqwest) library. From 2bfb6ee01673f673c12dac6b97b36d11dc0f87e7 Mon Sep 17 00:00:00 2001 From: Sanchayan Maity Date: Thu, 2 May 2024 19:22:58 +0530 Subject: [PATCH 4/4] Add `quinn` to default-members Part-of: --- Cargo.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/Cargo.toml b/Cargo.toml index 0af8a443..3b851df7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -88,6 +88,7 @@ default-members = [ "net/webrtc/protocol", "net/webrtc/signalling", "net/ndi", + "net/quinn", "text/ahead", "text/json",