NDI interesting for Nimble?

Joël 2016-05-21 15:24:00 UTC in WMSPanel functionality

Hi, I use NDI to get video sources over IP for live streaming.
Till now only the secondaire monitor by a presentation with powerpoint. But a lot more is possible to send or receive by NDI
Is NDI something for Nimble to adopt? To transmux NDI to HLS maybe?

Yury Udovichenko 2016-05-22 03:54:47 UTC 

Hi Joel,

Do you mean NewTek NDI? What are the adtantages for you?

Steve 2020-04-14 02:26:11 UTC 

I'd like to revive this. Personally for me, the advantages would be: use an origin nimble server to ingest multiple remote streams, send them to an edge server for cleanup (where a possible NDI header can be attached?) and then to a laptop where I will separate the remote feeds in a software switcher. Unless there is another way to get a low latency / high bitrate option for remote feeds, the best I've come up with is UDP/SRT > Nimble > NDI > software switcher.

With RTMP being phased out, I need to figure out another way to utilize NDI. Thanks!

Yury 2020-04-14 02:30:50 UTC 

Steve, we know there are tools allowing to convert SRT or RTMP into NDI. We keep Nimble Streamer concentrated on broadcast protocols. As for relatively "exotic" protocols - we leave the money on a table for those who have more experience in field production than we do.

Roberto Brito 2020-05-03 03:23:04 UTC 

I fully agree with the colleague's idea!

In some IP based scenarios it would fit like a glove to transport NDI over SRT (and vice versa) without having to resort to intermediate applications

Yury 2020-05-03 23:38:05 UTC 

Roberto, can you share your use case? E.g. what are the tools use use now and what is your scenario?

NDI-PLEASE 2020-05-12 03:18:34 UTC 

Hi Yuri! There are certainly use cases for NDI via Nimble Streamer. Unfortunately due to the Pandemic many folks who have more experience in the production field than you do (using your quote above) are scrambling to establish their businesses on cloud resources and shifting their strategy. What used to be SDI cables and physical devices for transit, encoding, and decoding is now virtual machines, VMix, OBS, and a whole new world of protocols. At this point NDI is one of the most "lossless" protocols out there and unfortunately without going in too much detail, it would be absolutely a game changer for NDI support in Nimble Streamer for lots of folks. Certain software have crappy encoding and transcoding functionality but certain software are great for specific tasks like replays. It would be nice to be able to use nimble streamer for all ingress and egress to eliminate more hops of encoding.

Yury 2020-05-12 03:32:33 UTC 


As I understand, NDI is primarily used in closed environments like studios, it's not used over the Internet. On the contrary, Nimble Streamer is primary designed for streaming over opened unmanaged networks. So they just don't match from our point of view.

Can you give examples of how Nimble could change this NDI game? What added value would it bring to the professionals like yourself? It's not impossible for us to add NDI, we just need to understand what we can bring to the market.


NDI-PLEASE 2020-05-12 03:53:00 UTC 

Thanks for your response. You are correct, and I believe due to it's massive bandwidth requirements (100MB+) is why it's used in closed environments. You can see a recent real world example of Riot Games running LCS here:

They have a nice diagram showing their infrastructure running in AWS. Using best-in-class software will make the production crew most efficient and use things like VMix for what it's good at (replays) and OBS for what it's good at (encoding in the is case, but it is also better at transcoding than VMix from a lot of testing. VMix does not expose custom ffmpeg options as an example).

Imagine using a cloud service for your full production environment. 4 production machines and a nimble streamer instance. One of those machines can be used for web cameras for a team, another can be used for web cameras for another team (and in this case VMix calls are just "easy", so vmix would be best in class here). You load up VMix, you start adding scenes, you start mixing, and you start producing. You're getting observer feeds (the people who are sending SRT of the game feeds to your nimble instance and then over to VMix or OBS, somehow). One angle here is to possibly run the game in the cloud and have an observer use something in close proximity and send the feed over NDI to VMIX directly instead of hitting VMix. You get to the point where you now need to encode the final product and transcode it for Twitch or another streaming service. Well, unfortunately VMix transcoding seems not up for the job. A lot of folks use it for things like replays and like I mentioned earlier, during physical events we don't see a lot of network protocols being used.

Cloud production is going towards becoming a commodity. We are not using NDI over the internet. We are using Nimble to be our interface between internal ("LAN in the cloud") and external (from the Internet, SRT example). We would like to deliver the internal streams via NDI. It's because NDI is easy on system resources at the expense of bandwidth which is ample and cost-free if you're not leaving a provider.

NDI-PLEASE 2020-05-13 02:31:42 UTC 

Checking in here, hoping my wall of text made sense! Thank you!

Yury 2020-05-13 02:33:47 UTC 

Hi there! We have indeed read your text and gave it a deep thought. I think we'll consider implementing NDI in Nimble Streamer, so once we have anything to try out - we'll contact you to get your feedback.
Thank you!

NDI-PLEASE 2020-05-13 02:35:18 UTC 

That would be AMAZING! We would love to provide any input or feedback. You have my e-mail, reach out if you'd like to chat or discuss further!

Yury 2020-05-13 02:36:58 UTC 

Sure, thanks!

Roberto Brito 2020-05-13 16:18:32 UTC 

Hello folks !

Very good to see that the broadcaster community is engaged and showing that there is a need for tools evolution, just as it is very good to see Nimble also accept to be part of this evolution!

Today NDI is adopted for signal distribution on local networks (it was designed for that) but broadcasters lack more professional solutions for transport and distribution over the internet without the need for intermediate solutions (adding much latency xD )...

NDI is already supported by a wide range of media frameworks and we could start from the assumption that for the simple fact that it is already an IP-based protocol, its flows could be accessible to the Nimble engine and able to be converted into the various formats it supports.

So..I`m very proud of your decision and look forward to hearing from you!

Best regards !

Yury 2020-05-13 22:45:11 UTC 

Thank you for your feedback!

Gisli 2020-05-18 07:11:29 UTC 

Just found this post I had been looking into the same. And I would love to test NDI directly in NIMBLE until now I have had to use some other software like OBS or VLC to convert srt into NDI as many srt streams within VMIX is very demanding on the system.

Yury 2020-05-18 07:15:31 UTC 

Thanks for your feedback. We'll proceed with development and will update people in this forum thread as soon as we have anything to test for you, stay tuned.

Jonathan 2020-05-21 06:55:58 UTC 

This would be amazing. We have been looking for this solution. Hope development goes quickly & smoothly

Plamen 2020-05-27 17:39:46 UTC 

Wow, Nimble NDI support would be an absolutely amazing feature to have! Now more than ever, we need options for moving video around in the cloud!

Yury 2020-05-27 23:46:08 UTC 


Stay tuned for updates!

Post a reply

Post a new question



nimbleNimble StreamerFAQHLSDVRRTMPnimble streamerhlsABRcachewmsauthNimbleAPItranscoderffmpegdvrapiVODfailoverrtmpstreamingDASHwmspanelvodudprtsppaywallsubtitlesDispersaRTSPyoutubelivelivestreamingmp4MPEG-DASHWMSAuthpay-per-viewgeosldpdashvideostreameredgeabrWindowsencryptionhttpsUDPwhite labelconfigsmiluser agentFFMPEGmulticastSRTsslaudioMPEG-TSre-streamingmpeg-dashchunksraspberry piCORSandroidsrtbandwidthadvertizercorsvlcS3WMSPanelDRMrules.confadvertisingipv6MPEGTSFastSpringRAMwms panelthumbnailFMLEVATcrossdomainupdateRecordingmpegtsplaylistSMILwowzaakamaiaespushserversm3u8TranscodeSSLerrorbalanceplaylist_dvrWowzachromecastconfigurationIDreportingbugdomainnimblestreamerperformanceIPloopHttpsVidillionchunkmobilerepublishingawsAWSdownloadorigincloudfrontpublish controlcodecmpeg-tsCDNraspiannimble webcam html5UIroutesbitrateRegistration Issuedirect link32-bit Windowstwitchanalysecache_controlitworkmelive abr support mpeg-dashwmspanelapirtmp abrbeirutWWDCdubaideep statshls to multicast udplogcloudIIS Smooth StreamingmediaHot-linking protectionHTTPSAbrHDSvaddioalertsAuthentication in HLSCentOS v6.4jwplayer websitepricebaselinewhmcslimitOld logsscreencastnginx rtmp nimbleAV BridgeVaddioattaching domainsPI3 Ubuntuview timeWMSCONFIG_HOMEmessagerestreamcostinterfacesDVRRecordingloadbalancingmod_rewritemetadataprofilehls restreamingID3 tagsgbpsAxisVLCwmsauthsignhighhds streamresumeniblerlocalciscodecodertransocding republishingVideo hotlinkAliaslost trafficgentoo install server nimblePublic Iptranscoding using NvidiaPaywall AuthlocationlebanonmanifestofflinedocumentationipMP4 not playedspaceTrancoderconcurrent-connectionsicecast urlfileruleseekinghot linkingchangeamfServer-sideplayoutPlayReadyamazon web servicelimuxtasks-controldvr stream twicestoppedmainhot-linkAXVVGondata slicesaliasblocknvencconnectivitydvr streamunique visitorHLS vodpay per viewpaywalapplicationanalytics7brandingtrialMP4microsoft streamdvr_archivesmpeg dasherrorsobsTCOlog traffic statsrocksoftopenssldebianExpression Encoderprogressive downloadABR DASHlive video on demandFFmpegmultiple originsnimblesessionidbandwithHLS PlayerheaderDASH Playerserverlog nimble analysertmp playbackvideojssourceSnapshotsadaptiveAV1 codecNGINX-RTMPJWPLAYERPullvideo stopprivate networkLarge DVR filescrossdomain more then 1 domain4Kno WMSPanelsoundHLS Meta Tag editing.streamslive videoattachmentmac osx installvod no soundconcurrent connectionwotermarkhelp errorvimeoAWS 3buttload balanceFairplayfallbackamazonControl APIRemote StorageWowza AgentLive streamingTranscodervsomcdnnot foundsecuritylive streampullAS3Widevinempeg2tsServer-Side-Task-Controltwitch larix broadcaster androidDVRSettingsinstall players setup ready to goDelete recordsAppledisk migrationicecastscreen capturestereo to monodrmvideo loopresourceaes encryptionsubscriptionstarttime duration seekpointrebootmonitordvr streamsABR HLS Bitrateslive pull settingsnimble.confrtmp republishing transcodeIIS Media Servicsautomationnimble streamer web server php script pageNimble Streamer APIlivestreamrtmp for YouTubeapi accessDeep statsinterleavingweb playerABR DVR problemNimble CapacityoutrateLive Switcherscreen freezecan't registercontent-dispositionactionscript 3Live Broadcastnot to stealnimble streamer vod hls transmuxinglogginglearnerCross DomainNimble Serverinsert logoRTMP republishPIDAVCaptureMovieFileOutputblock downloadbroadcasterOSXPost processingadd_chunk failedfake extensionMPEG DASHUbuntu artful 17.10Transcoder MPEG DASHtranscodingFFMPEG;RTMP;I/O errorstatus:errornimble on cloudprerollHotlinking ProtectionStreaming routepremium featureThumbnailsserver incorrect timelarix broadcasterMPEG-DashLiveLIVEHow to do live stream with multiple audio trackpaymentProgressivenimble aliasesstatsrmtpno internetreloadSecuredemandreportsraspberryavoid refreshAndroiduser_agentdvr on wmspanelVideo cant be playedS3 AWSBroadcastLarixprogressivelivestream bitratecredentialsHLS Streamingthumbnail dvr-thumbnailLoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignPORTDVR Settingvbv-maxratetranscodeRepublishinglatencyadjustdelaympeg4buildPacketizingABR bitratestranscoder nimbleubuntu 18Teradek DecoderSLDPVR-360Failoverabr fallbackNimble connections.movalias routestoragedistributionspeedup my videoiOSgoogle cloud storagepricingissuecpucloudflareUsers limitoutputVOD HLS streaming on public IPdomain lockcontentRTMP RepublishCSSanalisyssctevideo.jsitworkscdnqatartransocderlivestreaminrtsp push androidartifactscache expiryvideo streamingQuickTimepublish streamtraffichd25AArch64incoming streamno soundInvalid frame headerstorage space availabledisk3.6.1-1mp2 audiofastspringwebhookdvr to livedissapointmentpay-per-minuteSO_RCVBUFbuffering videoadvp9nimble dvrdurationBandwidthgpuav1 codecNimbleStreamerPaywallvideo and audio not matchDVRStreamsaws amazonrulesError when installingFallbackhelprestartIOSViewer StatsNDIDVR Setting limitssaibufferGopHTML5 playerMPEG2 Videologo in streamUDP MulticastMax connectiona recordwirecasthttp serverSSL requestserver ip21

This website or its third-party tools use cookies, which are necessary to its functioning and required to achieve the purposes illustrated in the Privacy Policy. If you want to know more or withdraw your consent to all or some of the cookies, please refer to the Privacy Policy.
By closing this banner, scrolling this page, clicking a link or continuing to browse otherwise, you agree to the use of cookies.