nanocosmos Documentation

nanocosmos Documentation

  • nanoStream Cloud
  • H5Live Player
  • nanoStream Webcaster
  • nanoMeet
  • nanoStream Apps and SDKs
  • Samples
  • FAQ

›nanoStream Cloud

nanoStream Cloud

  • Overview
  • Latest News
  • Introduction
  • Getting started
  • Live Encoding
  • SRT Ingest
  • Live Recording and VOD
  • Security Features

    • nanoStream Cloud Security
    • nanoStream Guardian

    Analytics

    • General
    • Worldmap
    • Zoom
    • Troubleshooting
    • Guardian
    • Analytics API

Cloud Dashboard

  • Getting started
  • Cloud Dashboard Overview
  • How-to

    • Start streaming
    • Stream List
    • Adaptive Bitrate
    • Secure Playback Tokens
    • nanoStream Cloud Tags
    • Embed nanoPlayer Code
    • nanoStream Webcaster

Bintu API

  • bintu api
  • bintu custom web hooks
  • bintu.live Stream Tags

Support

  • Network Diagnostics
  • Support

Video Tutorials

  • How to Setup a Low Latency Stream
  • Analytics For Low Latency Streams
  • How To Setup Streamgroups Through V3 Dashboard
  • How to Setup Optimal Latency Modes for Streaming
  • How To Setup Ingest Security For Your Live Streams
  • Implement Playback Security For Your Live Streams
  • Defend Against Misuse With nanoStream Guardian
Edit

nanoStream Cloud SRT Ingest Guide

Introduction

Thank you for your interest in SRT (Secure Reliable Transport) streaming on nanoStream cloud. We are glad that you can start using this new feature.

Feedback

We welcome any feedback that can help us improve the service. Send an email to support@nanocosmos.de with subject SRT feedback program and do share with us the following information:

  • Encoding or streaming software being used and hardware equipment setup.
  • Video and audio encoding, or streaming parameters being used. For example: format, resolution, bit-rate, and so on.
  • Full test results with description of expected outcomes and issues encountered.
  • All issues reported must contain a time frame in UTC and relevant stream names.

SRT Setup Guide

The SRT setup will require creating a new stream or making use of an existing stream in your organization account for publishing and viewing. In this workflow, SRT streaming protocol will be used for ingest while playing back with H5Live player or RTMP protocol. SRT playback is not supported at the moment.

Ingest

Supported Formats and Codecs

Stream formatMPEG-TS
Track countSingle channel of video and/or single channel of audio
Video codecH.264
Audio codecAAC

Server Domains and Port

Global domain (preferred)bintu-srt.nanocosmos.de
Asia domainbintu-srt-as.nanocosmos.de
Europe domainbintu-srt-eu.nanocosmos.de
North America domainbintu-srt-us.nanocosmos.de
South America domainbintu-srt-sa.nanocosmos.de
Port number5000

SRT Stream Id

SRT stream id format definition: prefix:streamname[:postfix]

  • prefix: push for ingest or publish action
  • streamname: existing Bintu stream name in the form XXXXX-YYYYY
  • suffix: record to enable VOD recording of a live stream (optional)

Stream Id limitations

  • The SRT protocol specification limits the Stream Id length to 512 characters.
  • Allowed character set in SRT Stream Ids: a-z,A-Z,0-9,?,&,=,-,_,, plus delimiter :.
  • Colon delimiter : is permited on the stream id, not on stream name nor stream name parameters.
  • Percent sign % is only allowed in the context of URL encoding.

Stream Id examples

Replace XXXXX-YYYYY with an existing Bintu stream name.

Basic push:
push:XXXXX-YYYYY

Push with vod recording:
push:XXXXX-YYYYY:record

Push with stream name parameters:
push:XXXXX-YYYYY?param1=one&param2=two

Push with stream name parameters and VOD recording:
push:XXXXX-YYYYY?param1=one&param2=two:record

Note: Some streaming applications where the SRT stream id needs to be configured as part of a URL, for example OBS Studio, may require the stream name parameters to use URL encoding. The URL encoding can be applied to the entire Stream Id or stream name parameters only. The URL encoded parts will be decoded accordingly on the server side.
See the following examples:

Push with URL encoded stream id:
push%3AXXXXX-YYYYY%3Fparam1%3Done%26param2%3Dtwo

Push with URL encoded stream name parameters:
push:XXXXX-YYYYY%3Fparam1%3Done%26param2%3Dtwo

Push with URL encoded stream name parameters and VOD recording:
push:XXXXX-YYYYY%3Fparam1%3Done%26param2%3Dtwo:record

Ingest Parameters

SRT modecaller
SRT transmission typelive
SRT latencyDefault is 500ms. Higher values can be used to maintain more buffer and will help to reduce packet drop in lossy transmission situations.
SRT timeoutRecommended is 1 second. Higher values can solve connect issues in case of longer routing distances or high round trip times (RTT).
SRT stream idSee Above.

Example of Setup using OBS Studio

OBS Studio is able to support SRT streaming in versions 25.0 or newer and has the flexibility of fine tuning capabilities. You can refer more here: SRT Protocol Streaming Guide

Note:
OBS expects timeout and latency values in microseconds, that is, seconds ⨉ 1000000.

Ingest Address

Global Ingest Domain (Recommended)

Setup server with:

srt://bintu-srt.nanocosmos.de:5000?mode=caller&latency=500000&timeout=1000000&transtype=live&streamid=push:XXXXX-YYYYY

For Europe Domain

Setup server with:

srt://bintu-srt-eu.nanocosmos.de:5000?mode=caller&latency=500000&timeout=1000000&transtype=live&streamid=push:XXXXX-YYYYY

For North America Domain

Setup server with:

srt://bintu-srt-us.nanocosmos.de:5000?mode=caller&latency=500000&timeout=1000000&transtype=live&streamid=push:XXXXX-YYYYY

For South America Domain

Setup server with:

srt://bintu-srt-sa.nanocosmos.de:5000?mode=caller&latency=500000&timeout=1000000&transtype=live&streamid=push:XXXXX-YYYYY

Whereby XXXXX-YYYYY is an existing Bintu stream name in your organization account and latency, andtimeout values provided in microseconds.

Stream Transcoding and ABR

If your organization account has transcoding feature enabled you may set up ABR with SRT. Just use the pass-through stream name for SRT ingest.

Playback

SRT playback is not supported at the moment. Playback is possible using the H5live Player or through RTMP protocol.

Using H5Live Player

For a single bit-rate stream, the ingested stream can be played out with the following playback URL:

https://demo.nanocosmos.de/nanoplayer/release/nanoplayer.html?entry.rtmp.streamname=XXXXX-YYYYY

Whereby XXXXX-YYYYY is the Bintu stream name previously set up for SRT ingest.

For ABR playback, you can setup a stream group on the latest dashboard v3. Find more information following the video guide in the link:

How To Setup Streamgroups Through V3 Dashboard

For the corresponding stream group setup, find the player configuration here:

Stream group configuration

If you are on a secure Bintu organization account, you will find information on playback with secure parameters here:

Secure playback with H5Live

Using RTMP

Following, an example using RTMP protocol playback with ffplay from the ffmpeg project on the command line:

ffplay rtmp://bintu-play.nanocosmos.de/play/XXXXX-YYYYY

Whereby XXXXX-YYYYY is the Bintu stream name that was configured in the SRT ingest.

Last updated on 9/11/2023
← Live EncodingLive Recording and VOD →
  • Feedback
  • Ingest
    • Supported Formats and Codecs
    • Server Domains and Port
    • SRT Stream Id
    • Ingest Parameters
    • Example of Setup using OBS Studio
    • Ingest Address
    • Stream Transcoding and ABR
  • Playback
    • Using H5Live Player
    • Using RTMP
Contact
HomepageContactSupportLegal Terms
Products
Nanostream Cloud with Bintu.LiveH5Live Low Latency HTML5-PlayernanoStream WebcasterNanostream Apps and SDK
More
BlogTwitterFacebookLinkedInGitHubStar
nanocosmos GmbH
Copyright © 2023 nanocosmos GmbH - doc version Mon Sep 11 2023 09:43:20 GMT+0000 (Coordinated Universal Time)