Forum

Pay-per-view: Limit client to specified maximum concurrent connections or bandwidth

Jacques Snyman 2015-04-14 09:51:46 UTC in Paywall: WMSAuth and beyond

Is there any way we can limit a client (authorised by PPV handler) to only a specified maximum number of concurrent connections or maybe limit the amount of bandwith available to that specific client?

Alex Pokotilo 2015-04-14 10:26:45 UTC 

if you authenticate your clients and can assign unique IDs to your clients you can check how many streams each unique clients view and stop signing urls for your clients. Nimble cannot distinguish one client from another and your web site need to use login information for given client to assign client's id appropriately so that based on that id you can check how many streams client currently watch and block it temparary if limit exceed

Jacques Snyman 2015-04-14 10:43:02 UTC 

Thats what I thought, yes... the only issue I'm dealing with is, how do I know (from the website) when a client has closed their connection (stopped vieing the stream), so that I can allow subsequent connections again?

Alex Pokotilo 2015-04-14 12:00:27 UTC 

you will see clients disconnect in ppv handler

Jacques Snyman 2015-04-14 12:10:53 UTC 

Perfect. Thanks

Paul 2016-03-09 14:17:24 UTC 

Jacques, please can you help me.

Do you have any working PPV code examples I could see for the PPV?

I have not done PHP/MySQL etc in many years and it will take me a long time to get this working.

It would be a great help if you have any pages/code that shows how to integrate with database to see if user has paid / has membership or not.

I have seen the basic examples on github but for me to go from that to a full working system will be a very difficult task.

Thank you

Yury Udovichenko 2016-03-09 23:38:37 UTC 
Paul 2016-03-10 11:42:36 UTC 

Thanks, had not seen the first guide with the database queries.

Hopefully that will help me.

Post a reply


Post a new question

Categories:

Tags:

nimbleNimble StreamerFAQHLSDVRnimble streamerRTMPhlsSRTABRcacheAPIrtmpwmsauthNimbletranscodersrtapidvrffmpegVODudpRTSPsldpfailoverDASHvodstreamingrtspwmspanelSLDPliveyoutubeUDPmp4paywallabrsubtitlesDispersavideoLarixaudiomulticastandroidlivestreamingWMSAuthMPEG-DASHpay-per-viewgeoMPEG-TSdashstreameredgebandwidthWMSPanelsslthumbnailWindowsencryptionhttpsplaylistwhite labelconfigsmilFFMPEGCORSperformancechunksraspberry pire-streamingmpeg-dashpublish controlcorsadvertizercloudfrontDRMrepublishingRepublishingvlcS3user agentNDIristrules.confadvertisingipv6MPEGTSFastSpringRAMwms panelRecordingfileFMLEVATcrossdomainSMILmpegtsaespushakamaiPullserversmobilewowzacodecerrorSSLbalancechromecastTranscodem3u8TranscoderWowzaIDbugreportingconfigurationdownloadsnapshotawsLarix BroadcasterAndroidnimblestreamerdomainraspianloopAWSscte35originCDNroutesamazonupdateipplaylist_dvrVidillionHttpslarix broadcastersecuritychunkmpeg-tsEncoderIPUInimble webcam html5Registration Issuedirect link32-bit Windowstwitchcache_controlitworkmecudalive abr support mpeg-dashwmspanelapibeirutreloadWWDCdubaideep statsCentOS v6.4hls to multicast udpnooblogIIS Smooth StreamingcloudmediaAbrHTTPSHot-linking protectionHDSvaddioeventalertsjwplayer websitewhmcsbaselinetimelineVaddioAV BridgePI3 Ubuntuview timeAuthentication in HLSPi4Nimble Streamer APIpriceresourceinterfaceslimitOld logsCloud Storageencrytpionscte-35screencastloadbalancingmetadatamod_rewriteprofilelarix abrgbpsAxisID3 tagswmsauthsignattaching domainshighhds streamcontainer*sdpshoutcastciscolocal.net hotlinkWMSCONFIG_HOMERTMP republishdatmessagecostresumerestreamrtmp abrgentoo install server nimblePublic Iptranscoding using NvidiaPaywall Authhls restreamingofflinedocumentationNimble streamer upgradeTrancoderconcurrent-connectionsVLCniblerServer-sideVideo Playertransocding republishingdecoderstoppedNimble Streamer versionAliaslost trafficpay per viewicecast urldvr_archivesmpeg dashnginx rtmp nimblechangeTCOobswildcardRaspian BusterexportopensslamfLarix GrovelebanonlocationmanifestMP4 not playedspaceonSteam stopped workingExpression EncoderseekingHLS vodHLS Playeranalyticsapplicationpaywallimuxamazon web servicenginxPlayReadyDASH Playerdvr stream twicerepublishAXVVGhot-linkjpegblocknvencdebianscreen freezecan't register7brandingtriallive video on demandbandwithmicrosoft streamMP4errorsserverrocksoftlog traffic statsno WMSPanellive videoLarge DVR filesprivate networkinterleavingSLDP PLayerTelegrammac osx installwotermarksourcenimblesessionidFFmpegmultiple originsvimeohelp errorABR DASHprogressive downloadLive Streamingload balancezabbixheadercache expiryvideo stopcdnvsomstreamslog nimble analysertmp playbacklive streamViewer StatsAdsvideojsattachmentHEVCbitrate#restreamDelaympeg2tsServer-Side-Task-Controlvod no soundconcurrent connectionadaptiveAV1 codecdisk migrationdvr streamconnectivityUbuntu 20 ARM - AWSunique visitorJWPLAYERNGINX-RTMPdvr on wmspanelscreen capturestereo to monoaes encryptionWidevinesubscription4Kcrossdomain more then 1 domainFairplayWMSPanel settingslive pull settingsABR HLS Bitratescpurtmp for YouTubenot foundCPU LoadpullAS3buttAWS 3install players setup ready to goDVRSettingstwitch larix broadcaster androiddrmAppleDelete recordsControl APIloggingnimble streamer vod hls transmuxingnimble streamer web server php script pageautomationLive streaminglearnerCross Domainvideo loopinsert logostarttime duration seekpointadd_chunk failedPost processingfake extensionDVRStreamsrebootpremium featuremonitormobile app live streamingProgressiveoutrateudp streamingapi accessDeep statsicecastloadbalancerUbuntu artful 17.10Transcoder MPEG DASHinvalidMPEG DASHweb playercontent-dispositionAVCaptureMovieFileOutputblock downloaddvr streamsNimble ServerlivestreamNimble CapacityABR DVR problemStreaming routeHotlinking ProtectionfacebookSecuritypaymentLive Switcherstatsnot to stealLive Broadcastsecure streamingcontentRTMP Republishvp9addemandIOSThumbnailsserver incorrect timeLiveLIVELoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignsoundHLS Meta Tag editing.How to do live stream with multiple audio trackssaiDVR Setting limitthumbnail dvr-thumbnailrmtpInterlaceno internettranscoder nimblereportsVideo cant be playedS3 AWSavoid refreshraspberrySecureJetson NanoPaywalllivestreamintransocderstorage space availablediskcredentialspublish streamStream Delayhd25trafficAArch64automateuser_agentwebhookdvr to livetranscodevbv-maxratedomain lockUsers limitoutputcloudflareVOD HLS streaming on public IPFailoverVR-360larixanalisyssctelivestream bitratedockerDVRRecordingAuthInvalid frame headerno soundincoming streamSubtitlesbuildrist set fecABR bitratesPacketizingGopDVR SettingPORTdelaympeg4LL-HLS DVRav1 codecNimbleStreamerstoragealias route.movhttp servera recordwirecastVP9fastspringNimble streamermp2 audioaliasdata slicesplayer sldplatencyno audiobuffering videoSO_RCVBUFdistributionbufferqataritworkscdnvideo.jsQuickTimevideo streamingcompatibility protocolsmultiplexCSSactionscript 3server ssl errorCentos 8dissapointmentpay-per-minuteTeradek Decoderubuntu 183.6.1-1Max connectionUDP Multicastincomingmulti-viewerrestarthelpFallbackRIST Bondingplayoutrulesmanage_dvrhow-toError when installingaws amazonserver ip21SSL requestmultiple audio udphotlink protectionRaspberryPi4ultra low latencyMPEG2 Videologo in streamprogressivebroadcast videosha265video audioSRT protocolanalyseStreamIDprerollstreamrtmp sldp nimblenimble on cloudfallbackRaspberrytasks-controlNimble_Crushwebrtc4GLinuxRTMP to SRTrtsp push androidartifactstuningWowza AgentRemote StorageSSAIvideo and audio not matchLarix broadcastergpu{stream}OBSBroadcastnimble.confrtmp republishing transcodeIIS Media ServicstrackGoogle DriveHLS StreamingPIDurlSnapshotsthumbnailsmultipointrulespeedup my videoiOSMPEG-Dashrtpnimble dvrBandwidthdurationYadifportsRokumd5OSXbroadcasterNimble connectionsabr fallbackletsencryptfairplayNginxramNetworkRAM Loadstatus:errortranscodingdownTonyFFMPEG;RTMP;I/O errorhot linkingTRANSCODEissuepricinggoogle cloud storagedvbnimble aliasesNimble StreamWMSAUTHLL-HLSHTML5 playerAddendasubfolderTLSV 1.2 Certificatedynamic linksAmazonTVfiremultiplemainmultistreamingRistmultiple audioadjustsoftware versionre-publishingSRT RTMP

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.