WMSPanel API plans?

Mark P. 2020-06-03 17:15:44 UTC in Nimble Streamer

Hi Yuri,

I love the ideas behind SRT and SLDP.

I still need to understand the technologies and how to use them as technologies, not as a ready made app that does everything for me. I need to define my requirements and build accordingly.

I am not sure if there are plans to have Nimble Streamer provide a developer API for configuration and authentication, separate from WMSPanel. Otherwise, if WMSPanel implements the authentication scheme using the callback scheme described in the Access Control doc (i linked to from the SRT library github issue) and provides a user registration widget in the same way Stripe provides a payment widget (can be integrated into other apps) then Haivision becomes a platform provider not a technology vendor. In that case, I would be using the SRT library, which wouldn't exist without Haivision and your efforts, but in that case I'd lose SLDP since I don't think SLDP is an open standard.

I'm wondering if I should go down that route and maybe use ffplay and build a native app for my clients to use to play SRT directly, and use SRT library to implement the server, with authentication.

Can you please provide me with your advise and perspective on this?

Alex Pokotilo 2020-06-04 03:58:53 UTC 

Thanks for asking good questions.

- Haivision will not become the sole platform provider with SRT from my perspective and based on public information they provide. The main sources of success of SRT story are the open-source permissive license, a great market placement and a great support for SRT development community. SRT will be popular as long as they go this way. If you're afraid that they will get SRT to themselves and stop working with the community, then I would say that RIST will replace SRT immediately. I know SRT people and they are very smart guys not to do that. There are competitors who are ready to replace them. I don't see such risk even long-term. Don't consider this as an advice, that's just my own "IMHO".

- SLDP was intended to replace RTMP when we realized that RTMP playback will stop working shortly. We didn't have any long assumptions about this beast and we didn't want to support it for too long initially. We just wanted to provide people with some options to work in browsers. But people liked it and forced us to add mobile support too. And so we did. We were not sure why SLDP is in use in the world where webRTC exists, but now I realize its place and why people like it.
As you see there is no any huge idea or great plan to make it a widespread technology. Softvelum has always been a small software vendor with very limited development/marketing(almost absent)/support resources so we cannot afford to provide good protocol documentation, examples, reference implementation etc. I believe that if some big software house acquires the company they will be able to handle all of that. But Softvelum itself cannot afford that and hence will do what we actually can afford, that is - provide software for our clients.

- Speaking of access control for SRT. We're working right now on the feature to provide our clients the ability to create separate JSON file for each SRT input and support different SRT publish policies based on that file. You will be able to use Publish control ( feature in conjunction with SRT passphrase and that JSON file.
This feature will be part of an Addenda ( subscription.

- Long story short: SLDP is neither a game changer nor webRTC competitor but just an interesting solution especially for managed networks. If you believe in it, then encourage a good software house to grab our team and do good things with SLDP, like haivision did with SRT. I was part of that and understand I cannot do the same.

- Softvelum will support SLDP and provide our clients with protocol support like before, since it's a popular soluton. But if you need something open and ready to support it on your own or paying for that from your pocket, please make this decision yourself.

Post a reply

Post a new question



nimbleNimble StreamerFAQHLSDVRRTMPhlsnimble streamerABRcachewmsauthNimbleAPIdvrapirtmpSRTtranscoderffmpegVODsrtfailoverDASHsldpstreamingrtspwmspanellivevodudppaywallsubtitlesDispersaRTSPSLDPvideoyoutubeabrlivestreamingmp4WMSAuthMPEG-DASHpay-per-viewgeodashstreamerbandwidthedgeWMSPanelWindowsUDPencryptionhttpswhite labelconfigsmilmulticastsslFFMPEGMPEG-TSaudioCORSchunksraspberry pire-streamingmpeg-dashperformancecorsadvertizervlcrepublishingcloudfrontDRMS3user agentandroidrules.confplaylistadvertisingipv6MPEGTSFastSpringRAMthumbnailFMLEVATcrossdomainipupdatempegtsSMILRecordingaespushakamaiwowzaserversPullcodecmobileerrorSSLbalanceTranscodem3u8chromecastplaylist_dvrWowzaIDreportingconfigurationbugdownloadpublish controlnimblestreamerdomainLarixRepublishingLarix Broadcasterraspianmpeg-tsloopVidillionHttpschunkAWSawsoriginNDICDNrouteswms panelamazonIPnimble webcam html5UIbitrateRegistration Issuedirect link32-bit Windowstwitchcache_controlitworkmelive abr support mpeg-dashwmspanelapiresumertmp abrbeirutWWDCdubaideep statsCentOS v6.4hls to multicast udpnooblogWowza AgentRemote StorageIIS Smooth StreamingcloudmediaAbrHTTPSHot-linking protectionHDSvaddioalertsjwplayer websitebaselinewhmcsAuthentication in HLSPi4nginx rtmp nimblepriceAV BridgelimitOld logsscte-35VaddioscreencastPI3 Ubuntuview timeattaching domainscontainerinterfacesDVRRecordingloadbalancingmod_rewritemetadatadatmessageWMSCONFIG_HOMEprofilerestreamcostID3 tagsgbpsAxiswmsauthsignhighhds streamlocalciscohls hotlinkVLCniblergentoo install server nimblePublic Iptranscoding using NvidiaPaywall Authdecodertransocding republishingVideo PlayerofflinedocumentationNimble streamer upgradeAliasTrancoderconcurrent-connectionslost trafficfileServer-sideicecast urlrulestoppedNimble Streamer versionmainhot linkingchangelebanonlocationmanifestLarix GroveamfMP4 not playedspacepay per viewseekingonSteam stopped workingdvr_archivesmpeg dashobsTCORaspian BusteropensslHLS vodnginxPlayReadyamazon web servicelimuxdvr stream twiceanalyticspaywalapplicationsdphot-linkAXVVGExpression Encoderblocknvenc7brandingHLS PlayerdebiantrialDASH Playermicrosoft streamMP4errorsrocksoftlog traffic statslive video on demandbandwithserverscreen freezecan't registernimblesessionidFFmpegmultiple originsprogressive downloadABR DASHprivate networkLarge DVR filessourceSnapshotsheaderno WMSPanellive videointerleavinglog nimble analysertmp playbackmac osx installvideo stopvideojswotermarkstreamsvimeohelp erroradaptiveAV1 codecattachmentNGINX-RTMPJWPLAYERload balancecache expiryvod no soundconcurrent connectiondvr streamconnectivityUbuntu 20 ARM - AWSunique visitorcdnvsomlive stream4Kcrossdomain more then 1 domainViewer StatsWidevinecpumpeg2tsDelayServer-Side-Task-Controldisk migrationnot foundCPU LoadpullAWS 3buttscreen capturestereo to monoAS3drmresourceaes encryptionsubscriptioninstall players setup ready to gotwitch larix broadcaster androidDVRSettingsDelete recordsAppleTranscoderLive streamingsecurityABR HLS Bitrateslive pull settingsWMSPanel settingsrtmp for YouTubevideo loopstarttime duration seekpointrebootudp streamingoutratemonitoricecastnimble streamer vod hls transmuxingloggingapi accessDeep statsloadbalancerlearnerweb playernimble.confrtmp republishing transcodeIIS Media Servicsinsert logocontent-dispositiondvr streamsautomationnimble streamer web server php script pageNimble Streamer APIlivestreamAVCaptureMovieFileOutputblock downloadNimble CapacityABR DVR problemNimble ServerPost processingadd_chunk failedfake extensionMPEG DASHUbuntu artful 17.10Transcoder MPEG DASHLive SwitcherRTMP republishnot to stealLive Broadcaststatus:errorFFMPEG;RTMP;I/O errortranscodingPIDHotlinking ProtectionStreaming routefacebookMPEG-Dashlarix broadcasterbroadcasterOSXpaymentstatspremium featureserver incorrect timeThumbnailsreloadLiveLIVEadvp9contentRTMP RepublishdemandHow to do live stream with multiple audio trackssaiDVR Setting limitProgressivenimble aliasesrmtpno internetHLS Streamingthumbnail dvr-thumbnailLoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignsoundHLS Meta Tag editing.reportsavoid refreshraspberrySecureJetson Nanotranscoder nimbledvr on wmspanelVideo cant be playedS3 AWSuser_agentautomateAndroidBroadcasttranscodevbv-maxratedockerlivestream bitrateVR-360Failoverpublish streamStream Delaytraffichd25AArch64ABR bitratesPacketizingbuilddelaympeg4.movalias routestoragedomain lockVOD HLS streaming on public IPoutputUsers limitcloudflareanalisysscteno soundInvalid frame headerincoming streamwirecasta recordhttp serverHTML5 playerGopNimbleStreamerav1 codecfastspringmp2 audioNimble streamerdata slicesaliasplayer sldpdistributionqataritworkscdnvideo.jsspeedup my videoiOSissuepricinggoogle cloud storagePaywallvideo and audio not matchdissapointmentpay-per-minutesoftware versionadjustdiskstorage space available3.6.1-1RAM LoadtransocderlivestreaminUDP MulticastMax connectioncompatibility protocolsSO_RCVBUFbuffering videoError when installinghow-tomanage_dvrrulesDVRStreamsaws amazonMPEG2 Videologo in streamIOSrestartFallbackhelpnimble on cloudprerollserver ip21SSL requestVP9sha265video audioCross DomainSRT protocolabr fallbackNimble connectionsmd5credentialsFairplayincomingmulti-viewerDVR SettingPORTanalyseStreamIDdurationBandwidthnimble dvrrtpControl APIfallbackbufferRIST Bondingplayoutscte35ubuntu 18Teradek DecoderlatencygpuRaspberrytasks-controlhotlink protectionultra low latencyRaspberryPi4RTMP to SRTwebhookdvr to livebroadcast videoprogressivedynamic linksTLSV 1.2 CertificateQuickTimevideo streamingartifactsrtsp push androidtuningactionscript 3server ssl errorCSSRist

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.