Rasberry Pi - Nimble Server Performance

George 2017-02-06 13:39:53 UTC in Nimble Streamer

I have installed Nimble Server on Rasberry Pi as per instructions provided on the site.

But I am not even able to play 1 single mp4 video from a Android mobile client. Video stutters a lot, same video when loaded through Nimble on Windows work absolutely fine.

Dashboard of Nimble Streamer show 1% CPU load & 2% RAM load on RPi so its not overburdened. I am unable to figure out whats making it work in such sluggish manner.

Any help would be greatly appreciated...


Yury Udovichenko 2017-02-07 07:59:01 UTC 


You say you tried it on Android client. This might be bandwidth issue of your network.
Please try playing it on PC and measure the download speed to compare it to your mobile network capacity.

George 2017-02-07 09:16:20 UTC 

Hi Yury,
Thanks for your response, somehow things have improved now. I am able to play on 4 devices without any issue. On adding 5 devices things start to crawl.

[1] Only thing I could notice was that memory of RPi goes upto 921708 of 947732, maybe this is prohibiting more users to gain access. Is there anything that can be done to reduce this memory consumption ?

[2] Is there a Jessie upgrade version ? I have Whizzy at the moment ?


Alex Pokotilo 2017-02-07 09:20:18 UTC 

if your PI transmux mp4 -> hls it require enough disk IO and some memory. I'm recommend to increase RAM cache in server settings for prevent Nimble from using your ROM for hls chunk cache.
you can check PI with live stream and same users and if works your problem is in ROM speed for sure

George 2017-02-07 10:35:25 UTC 

Hi Yury,
Thanks for your response, I have made the following changes. Retesting now...

#max_cache_size = 64
max_cache_size = 80

#max_disk_cache_size = 4096
max_disk_cache_size = 6000


George 2017-02-07 10:37:40 UTC 

For Live stream I do not have Pi Camera yet :(

George 2017-02-07 11:52:15 UTC 

Hi Alex,
What I found that if I stop Nimble Streamer service the memory (RAM)is not de-allocated, I have to reboot to that. Could this be the problem resulting in video stuttering after 4 devices ?


George 2017-02-12 17:22:01 UTC 

response would be much appreciated, I would suggest keeping paid support option for customers genuinely interested in getting a response asap...

Alex Pokotilo 2017-02-13 01:34:15 UTC 

Please increase RAM/ROM cache via gui

config method will not work. it's obsolete

George 2017-02-13 18:47:48 UTC 

I increased:
[1] Max RAM cache size(MB) from 80 to 320
[2] Max file cache size(MB) from 4000 to 16384

But still Nimble would serve just 6 connections which is the same as with earlier settings, no difference at all :(

George 2017-02-13 18:48:43 UTC 

These changes were done from the WMSPanel Web UI, not manually.

Alex Pokotilo 2017-02-14 03:51:24 UTC 

Nimble will not be able to serve more vod streams on PI then.
Try to use different transmuxer to compare or use server platform for your need.

George 2017-02-14 17:48:04 UTC 

Hi Alex,
It was not Nimble problem but Chrome that does not allow more than 6 connection to the same IP. I was able to overcome this and test on Firefox where it served almost 10 connections. Will be doing more stress testing tomorrow...


Post a reply

Post a new question



nimbleNimble StreamerFAQHLSDVRRTMPhlsnimble streamerABRcachewmsauthNimbleAPIdvrapiSRTtranscoderffmpegrtmpVODfailoversrtsldpstreamingDASHwmspanelvodrtspudppaywallsubtitlesDispersaRTSPSLDPvideoyoutubeabrlivelivestreamingmp4WMSAuthMPEG-DASHpay-per-viewgeobandwidthdashstreameredgeWMSPanelWindowsencryptionUDPhttpswhite labelconfigsmilmulticastsslFFMPEGMPEG-TSaudioCORSchunksraspberry pire-streamingmpeg-dashandroidperformanceadvertizercorsvlccloudfrontDRMS3user agentrules.confplaylistadvertisingipv6MPEGTSFastSpringRAMthumbnailFMLEVATcrossdomainipupdatempegtsSMILRecordingaespushakamaiwowzaserversPullmobilecodecerrorSSLbalanceTranscodem3u8chromecastplaylist_dvrWowzaIDreportingconfigurationbugdownloadnimblestreamerdomainLarixrepublishingLarix BroadcasterRepublishingmpeg-tsraspianVidillionHttpsloopchunkawsAWSNDIoriginCDNrouteswms panelpublish controlamazonIPnimble 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 HLSnginx rtmp nimblePi4AV BridgepriceVaddiolimitOld logsPI3 Ubuntuscte-35screencastview timeattaching domainsinterfacescontainerDVRRecordingloadbalancingmod_rewritemetadataprofileID3 tagsgbpsAxisdatmessageWMSCONFIG_HOMErestreamcostwmsauthsignhighhds hotlinkhls restreamingVLCgentoo install server nimbleniblerPublic Iptranscoding using NvidiaPaywall AuthofflinedocumentationNimble streamer upgradedecodertransocding republishingVideo PlayerTrancoderconcurrent-connectionsfileAliaslost trafficServer-sidestoppedNimble Streamer versionmainicecast urlrulehot linkinglebanonlocationmanifestchangeMP4 not playedspacepay per viewLarix Groveamfseekingdvr_archivesmpeg dashobsTCORaspian BusteropensslonSteam stopped workingnginxPlayReadyamazon web servicelimuxdvr stream twiceHLS vodsdphot-linkAXVVGanalyticspaywalapplicationExpression Encoderblocknvenc7brandingHLS PlayertrialDASH PlayerMP4microsoft streamdebianerrorsrocksoftlog traffic statslive video on demandbandwithserverscreen freezecan't registerprogressive downloadABR DASHFFmpegmultiple originsnimblesessionidprivate networkLarge DVR filesheaderno WMSPanelsourcelive videointerleavingSnapshotslog nimble analysertmp playbackmac osx installvideojswotermarkvideo stopvimeohelp erroradaptiveAV1 codecNGINX-RTMPJWPLAYERload balancestreamscache expiryattachmentcdnvsomlive streamvod no soundconcurrent connection4Kcrossdomain more then 1 domainViewer Statsdvr streamconnectivityUbuntu 20 ARM - AWSunique visitorcpumpeg2tsDelayServer-Side-Task-ControlWidevinedisk migrationAWS 3buttscreen capturestereo to mononot foundCPU Loaddrmpullresourceaes encryptionAS3subscriptionTranscoderLive streamingsecurityABR HLS Bitrateslive pull settingsWMSPanel settingstwitch larix broadcaster androidDVRSettingsinstall players setup ready to goDelete recordsApplertmp for YouTubeudp streamingoutratevideo loopicecaststarttime duration seekpointrebootnimble streamer vod hls transmuxingloggingmonitorlearnernimble.confrtmp republishing transcodeIIS Media Servicsinsert logoapi accessDeep statsloadbalancerweb playerdvr streamsautomationnimble streamer web server php script pageNimble Streamer APIlivestreamAVCaptureMovieFileOutputblock downloadcontent-dispositionNimble CapacityABR DVR problemPost processingadd_chunk failedfake extensionMPEG DASHUbuntu artful 17.10Transcoder MPEG DASHLive SwitcherNimble Servernot to stealLive Broadcaststatus:errorFFMPEG;RTMP;I/O errortranscodingHotlinking ProtectionStreaming routeRTMP republishPIDMPEG-Dashlarix broadcasterbroadcasterOSXpaymentstatsreloadpremium featureserver incorrect timeThumbnailsLiveLIVEadvp9contentRTMP RepublishdemandHow to do live stream with multiple audio trackProgressivenimble aliasesHLS Streamingthumbnail dvr-thumbnailLoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignsoundHLS Meta Tag editing.rmtpno internetdelaympeg4transcoder nimbleSecureJetson Nanodvr on wmspanelVideo cant be playedS3 AWSuser_agentautomateAndroidreportsavoid refreshraspberryBroadcastdockerlivestream bitratepublish streamStream Delaytraffichd25AArch64transcodevbv-maxrateVR-360Failoverdomain lockVOD HLS streaming on public IPoutputUsers limitcloudflareanalisysscteABR bitratesPacketizingbuildincoming streamno soundInvalid frame headerHTML5 playerGopwirecasta recordhttp server.movalias routestorageNimbleStreamerav1 codecspeedup my videoiOSfastspringmp2 audioNimble streamerdata slicesaliasplayer sldpdistributionlatencyqataritworkscdnvideo.jssoftware versionadjustPaywallvideo and audio not matchissuepricinggoogle cloud storagediskstorage space available3.6.1-1dissapointmentpay-per-minutecompatibility protocolsRAM Loadtransocderlivestreaminhow-tomanage_dvrError when installingrulesDVRStreamsaws amazonSO_RCVBUFbuffering videoUDP MulticastMax connectionMPEG2 Videologo in streamnimble on cloudprerollIOSrestarthelpFallbackdynamic linksTLSV 1.2 CertificateSSL requestserver ip21credentialsFairplayincomingmulti-viewerVP9sha265durationBandwidthnimble dvrrtpscte35ubuntu 18Teradek Decodervideo audioCross DomainSRT protocolabr fallbackNimble connectionsmd5DVR Setting limitssaibufferRIST BondingplayoutControl APIfallbackPORTDVR SettinganalyseStreamIDhotlink protectionultra low latencyRaspberryPi4gpuRaspberrytasks-controlbroadcast videoprogressivewebhookdvr to liveRTMP to SRTvideo streamingQuickTimeartifactsrtsp 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.