Difference between revisions of "GstRtspSink"
m (→Overview) |
m |
||
(34 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | <seo title=" | + | <seo title="GStreamer rtspsink element | GStreamer | RidgeRun" titlemode="replace" metakeywords="GStreamer, Linux SDK, Linux BSP, Embedded Linux, Device Drivers, NVIDIA, Jetson, TX1, TX2, Jetson AGX Xavier, Xavier, Jetson TX1, Jetson TX2, Jetson Xavier, NVIDIA Jetson Xavier, NVIDIA Jetson Orin, Jetson Orin, Orin, NVIDIA Orin, NVIDIA Jetson AGX Orin, Jetson AGX Orin, Embedded Linux driver development, Linux Software development, Embedded Linux SDK, Embedded Linux Application development, GStreamer Multimedia Framework, GStreamer RTSP, RTSP, RTSPsink, rtspsink element, GStreamer rtsp sink element, RTSP sink GStreamer element" metadescription="This RidgeRun developer wiki guide is about GStreamer rtspsink element which permits high performance streaming to multiple computers using the RTSP protocol."></seo> |
− | + | {{GstRtspSink/Head|previous=|next=Getting the code|keywords=}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
<table> | <table> | ||
<tr> | <tr> | ||
− | <td><div class="clear; float:right">{{ | + | <td><div class="clear; float:right">{{__TOC}}</div></td> |
<td> | <td> | ||
<html> | <html> | ||
− | <div | + | <div id='product-component-ca9907c10e6'></div> |
+ | <script type="text/javascript"> | ||
+ | /*<![CDATA[*/ | ||
+ | |||
+ | (function () { | ||
+ | var scriptURL = 'https://sdks.shopifycdn.com/buy-button/latest/buy-button-storefront.min.js'; | ||
+ | if (window.ShopifyBuy) { | ||
+ | if (window.ShopifyBuy.UI) { | ||
+ | ShopifyBuyInit(); | ||
+ | } else { | ||
+ | loadScript(); | ||
+ | } | ||
+ | } else { | ||
+ | loadScript(); | ||
+ | } | ||
+ | |||
+ | function loadScript() { | ||
+ | var script = document.createElement('script'); | ||
+ | script.async = true; | ||
+ | script.src = scriptURL; | ||
+ | (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(script); | ||
+ | script.onload = ShopifyBuyInit; | ||
+ | } | ||
+ | |||
+ | function ShopifyBuyInit() { | ||
+ | var client = ShopifyBuy.buildClient({ | ||
+ | domain: 'ridgerun1.myshopify.com', | ||
+ | storefrontAccessToken: 'b0ca98633a82de5d2f63cd51f5af30ac', | ||
+ | }); | ||
+ | |||
+ | ShopifyBuy.UI.onReady(client).then(function (ui) { | ||
+ | ui.createComponent('product', { | ||
+ | id: [1684629127239], | ||
+ | node: document.getElementById('product-component-ca9907c10e6'), | ||
+ | moneyFormat: '%24%7B%7Bamount%7D%7D', | ||
+ | options: { | ||
+ | "product": { | ||
+ | "buttonDestination": "checkout", | ||
+ | "variantId": "all", | ||
+ | "width": "240px", | ||
+ | "contents": { | ||
+ | "imgWithCarousel": false, | ||
+ | "variantTitle": false, | ||
+ | "description": false, | ||
+ | "buttonWithQuantity": false, | ||
+ | "quantity": false | ||
+ | }, | ||
+ | "text": { | ||
+ | "button": "Purchase Now" | ||
+ | }, | ||
+ | "styles": { | ||
+ | "product": { | ||
+ | "@media (min-width: 601px)": { | ||
+ | "max-width": "100%", | ||
+ | "margin-left": "0", | ||
+ | "margin-bottom": "50px" | ||
+ | } | ||
+ | }, | ||
+ | "button": { | ||
+ | "background-color": "#0196ba", | ||
+ | "font-family": "Open Sans, sans-serif", | ||
+ | "font-size": "18px", | ||
+ | "padding-top": "17px", | ||
+ | "padding-bottom": "17px", | ||
+ | "padding-left": "50px", | ||
+ | "padding-right": "50px", | ||
+ | ":hover": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "border-radius": "5px", | ||
+ | ":focus": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "font-weight": "bold" | ||
+ | }, | ||
+ | "quantityInput": { | ||
+ | "font-size": "18px", | ||
+ | "padding-top": "17px", | ||
+ | "padding-bottom": "17px" | ||
+ | }, | ||
+ | "compareAt": { | ||
+ | "font-size": "12px" | ||
+ | } | ||
+ | }, | ||
+ | "googleFonts": [ | ||
+ | "Open Sans" | ||
+ | ] | ||
+ | }, | ||
+ | "cart": { | ||
+ | "contents": { | ||
+ | "button": true | ||
+ | }, | ||
+ | "styles": { | ||
+ | "button": { | ||
+ | "background-color": "#0196ba", | ||
+ | "font-family": "Open Sans, sans-serif", | ||
+ | "font-size": "18px", | ||
+ | "padding-top": "17px", | ||
+ | "padding-bottom": "17px", | ||
+ | ":hover": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "border-radius": "5px", | ||
+ | ":focus": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "font-weight": "bold" | ||
+ | }, | ||
+ | "footer": { | ||
+ | "background-color": "#ffffff" | ||
+ | } | ||
+ | }, | ||
+ | "googleFonts": [ | ||
+ | "Open Sans" | ||
+ | ] | ||
+ | }, | ||
+ | "modalProduct": { | ||
+ | "contents": { | ||
+ | "img": false, | ||
+ | "imgWithCarousel": true, | ||
+ | "variantTitle": false, | ||
+ | "buttonWithQuantity": true, | ||
+ | "button": false, | ||
+ | "quantity": false | ||
+ | }, | ||
+ | "styles": { | ||
+ | "product": { | ||
+ | "@media (min-width: 601px)": { | ||
+ | "max-width": "100%", | ||
+ | "margin-left": "0px", | ||
+ | "margin-bottom": "0px" | ||
+ | } | ||
+ | }, | ||
+ | "button": { | ||
+ | "background-color": "#0196ba", | ||
+ | "font-family": "Open Sans, sans-serif", | ||
+ | "font-size": "18px", | ||
+ | "padding-top": "17px", | ||
+ | "padding-bottom": "17px", | ||
+ | "padding-left": "50px", | ||
+ | "padding-right": "50px", | ||
+ | ":hover": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "border-radius": "5px", | ||
+ | ":focus": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "font-weight": "bold" | ||
+ | }, | ||
+ | "quantityInput": { | ||
+ | "font-size": "18px", | ||
+ | "padding-top": "17px", | ||
+ | "padding-bottom": "17px" | ||
+ | } | ||
+ | }, | ||
+ | "googleFonts": [ | ||
+ | "Open Sans" | ||
+ | ] | ||
+ | }, | ||
+ | "toggle": { | ||
+ | "styles": { | ||
+ | "toggle": { | ||
+ | "font-family": "Open Sans, sans-serif", | ||
+ | "background-color": "#0196ba", | ||
+ | ":hover": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | ":focus": { | ||
+ | "background-color": "#0187a7" | ||
+ | }, | ||
+ | "font-weight": "bold" | ||
+ | }, | ||
+ | "count": { | ||
+ | "font-size": "18px" | ||
+ | } | ||
+ | }, | ||
+ | "googleFonts": [ | ||
+ | "Open Sans" | ||
+ | ] | ||
+ | }, | ||
+ | "productSet": { | ||
+ | "styles": { | ||
+ | "products": { | ||
+ | "@media (min-width: 601px)": { | ||
+ | "margin-left": "-20px" | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | }); | ||
+ | }); | ||
+ | } | ||
+ | })(); | ||
+ | /*]]>*/ | ||
+ | </script> | ||
</html> | </html> | ||
</td> | </td> | ||
<td><center> | <td><center> | ||
− | {{ | + | {{Sponsor Button}} |
+ | {{ContactUs Button}} | ||
</center></td></tr></table> | </center></td></tr></table> | ||
− | == Features == | + | == GstRtspSink Overview == |
+ | RTSP Sink is a [https://www.ridgerun.com/gstreamer GStreamer] element which permits high performance streaming to multiple computers using the [https://en.wikipedia.org/wiki/Real_Time_Streaming_Protocol RTSP] / [https://en.wikipedia.org/wiki/Real-time_Transport_Protocol RTP] protocols. The GstRtspSink element leverages previous logic from GStreamer's [https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-rtsp-server/html/GstRTSPServer.html RTSP server] with extensions to create a GStreamer sink element providing benefits like greater flexibility, easy application integration, and quick gst-launch prototyping. | ||
+ | |||
+ | With GstRtspSink you have the flexibility to stream different content to the same client, such as audio and video. You can also send different streams to different clients. This means that within a single GStreamer pipeline you can stream multiple videos, multiple audios, and multiple lip-sync audio+video streams, each one to a different client using a different RTSP mapping. In the [[GstRtspSink - Advanced examples|Advanced Examples]] page different streaming possibilities are shown. | ||
+ | |||
+ | == GStreamer RTSP Sink Features == | ||
GstRtspSink supports the following features: | GstRtspSink supports the following features: | ||
Line 40: | Line 237: | ||
''(1) The number of simultaneous streams is limited by the hardware capabilities.'' | ''(1) The number of simultaneous streams is limited by the hardware capabilities.'' | ||
− | == Supported Formats == | + | == GstRtspSink Supported Formats == |
GstRtspSink supports the following formats: | GstRtspSink supports the following formats: | ||
*Video | *Video | ||
− | **H264 | + | **H264 |
− | **MPEG4 | + | **H265 |
− | ** | + | **VP8 |
− | ** | + | **VP9 |
+ | **MPEG4 | ||
+ | **JPEG | ||
+ | **DIVX | ||
*Audio | *Audio | ||
− | **AAC | + | **AAC |
− | **AC3 | + | **AC3 |
− | **PCMA | + | **PCMA |
− | **PCMU | + | **PCMU |
− | **OPUS | + | **OPUS |
*Transport Stream A/V | *Transport Stream A/V | ||
− | + | *KLV Metadata | |
== Getting Started == | == Getting Started == | ||
Line 61: | Line 261: | ||
Start navigating this wiki by going to the [[GstRtspSink - Getting the code|Getting the Code]] page in the table of contents. | Start navigating this wiki by going to the [[GstRtspSink - Getting the code|Getting the Code]] page in the table of contents. | ||
− | + | {{ContactUs}} | |
+ | |||
+ | {{GstRtspSink/Foot|previous=|next=Getting the code}} |
Latest revision as of 11:53, 25 February 2023
|
Error creating thumbnail: Unable to save thumbnail to destination
|
GstRtspSink Overview
RTSP Sink is a GStreamer element which permits high performance streaming to multiple computers using the RTSP / RTP protocols. The GstRtspSink element leverages previous logic from GStreamer's RTSP server with extensions to create a GStreamer sink element providing benefits like greater flexibility, easy application integration, and quick gst-launch prototyping.
With GstRtspSink you have the flexibility to stream different content to the same client, such as audio and video. You can also send different streams to different clients. This means that within a single GStreamer pipeline you can stream multiple videos, multiple audios, and multiple lip-sync audio+video streams, each one to a different client using a different RTSP mapping. In the Advanced Examples page different streaming possibilities are shown.
GStreamer RTSP Sink Features
GstRtspSink supports the following features:
- GStreamer-1.0 and Gstreamer-0.10 versions
- Configurable mappings for each stream. The mapping is the text string used at the end of the RTSP URL: rtsp://$SERVER_IP/$MAPPING
- Configurable TCP port number
- Automatic payloader detection according to the negotiated pipeline capabilities
- Multiple independent streams (1):
- Video only streams
- Audio only streams
- Video+Audio streams
- Multicast networking support
- RTSP over HTTP Tunneling support
- Basic Authentication control by user and password
- Fine-grained stream control
- Designed for use in embedded products: supports zero-copy pipelines
(1) The number of simultaneous streams is limited by the hardware capabilities.
GstRtspSink Supported Formats
GstRtspSink supports the following formats:
- Video
- H264
- H265
- VP8
- VP9
- MPEG4
- JPEG
- DIVX
- Audio
- AAC
- AC3
- PCMA
- PCMU
- OPUS
- Transport Stream A/V
- KLV Metadata
Getting Started
Start navigating this wiki by going to the Getting the Code page in the table of contents.
RidgeRun Resources | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||
Contact Us
|