Forum

Play VOD file if RTMP not live

Shane 2019-10-26 22:05:12 UTC in Nimble Streamer

Is it possible to somehow have FFMPEG play a static MP4 file (looped) for a stream if that stream is not live?

For instance, I'd like a stream to play a looped file. However, if we start publishing via RTMP the stream will be live from that. Once there is no live RTMP, would go back to playing the file looped from ffmpeg.

Possible?

Shane 2019-10-26 22:28:07 UTC 

Forgot to add stream shouldn't be interrupted across live/playback events.

Essentially, trying to do this (Wowza example): [url]https//www.wowza.com/docs/how-to-loop-a-pre-roll-until-a-live-stream-starts-loopuntillive[/url]

Thanks!

Shane 2019-10-27 02:35:45 UTC 

To follow up, I learned about hot swapping source streams. I think I can do it with that.

I've been experimenting, and have a couple of questions about that:

1) I attempted to use Transcoder to make a new version of the incoming source stream, so that I could make sure the resolution and audio sample rate remain constant (in case something on the source encoder is changed). For instance, i transcoded "live" to "live1". Then I attempted to use "live1" as the source for another transcoding scenario that creates ABR versions for my final output. However, it seems that doesn't work. I can view live1 just fine, but transcoder doesn't seem to like to use it as a source for the ABR. In theory this should work, right?

2) I'm using an MP4 video for the source of the Fallback stream. It works fine...BUT, when it gets to the end of the video, it interrupts the stream on end players. If I reload the player, it starts playing fine. So something about when it gets to the end of the video causes an issue. I have tried putting a PNG overlay on to sort of "stabilize" it, but that didn't work. Any other way to get this to loop seamlessly?

3) Would there be any way to swap out that mp4 file (overwrite or something) to make the Fallback encoder start playing a new MP4 instead? Without interrupting end user stream player of course.

Thanks!

Post a reply


Post a new question

Categories:

Tags:

nimbleNimble StreamerFAQHLSDVRnimble streamerRTMPhlsSRTABRcacheAPIwmsauthNimbletranscoderrtmpsrtapidvrffmpegVODudpRTSPsldpfailoverDASHstreamingrtspwmspanelSLDPliveyoutubevodUDPmp4paywallabrsubtitlesDispersavideoLarixmulticastandroidaudiolivestreamingWMSAuthMPEG-DASHpay-per-viewgeoMPEG-TSdashstreameredgebandwidthWMSPanelsslthumbnailWindowsencryptionhttpsplaylistwhite labelconfigsmilFFMPEGperformanceCORSchunksraspberry pire-streamingmpeg-dashpublish controlcorsadvertizercloudfrontDRMRepublishingrepublishingvlcS3user agentNDIristrules.confadvertisingipv6MPEGTSFastSpringRAMwms panelRecordingFMLEfileVATcrossdomainSMILmpegtsaespushakamaiPullserverswowzamobilecodecerrorSSLbalanceTranscodem3u8TranscoderchromecastWowzaIDreportingbugconfigurationdownloadsnapshotAndroidnimblestreamerdomainawsLarix BroadcasterraspianloopAWSoriginscte35CDNamazonupdateiproutesVidillionHttpslarix broadcasterplaylist_dvrsecuritychunkmpeg-tsIPUInimble webcam html5Registration Issuedirect link32-bit Windowstwitchcache_controlitworkmecudalive abr support mpeg-dashwmspanelapibeirutreloadWWDCdubaideep statsCentOS v6.4hls to multicast udpnooblogIIS Smooth StreamingcloudmediaAbrHTTPSHot-linking protectionHDSvaddioeventalertsjwplayer websitewhmcsbaselinetimelineVaddioAV BridgeAuthentication in HLSPI3 UbuntuPi4view timepriceresourceNimble Streamer APIlimitOld logsCloud Storagescte-35screencastinterfacesencrytpionloadbalancingmetadatamod_rewriteattaching domainsprofilelarix abrcontainergbpsAxisID3 tags*wmsauthsignsdpshoutcasthighhds streamciscolocalWMSCONFIG_HOMEdatmessagecost.net hotlinkrestreamrtmp abrgentoo install server nimblehls restreamingPublic Iptranscoding using NvidiaPaywall AuthVLCresumeniblerofflinedocumentationNimble streamer upgradeTrancoderconcurrent-connectionsVideo Playertransocding republishingdecoderServer-sideAliaslost trafficstoppedNimble Streamer versionicecast urlhot linkingpay per viewchangedvr_archivesmpeg dashamfLarix Grovenginx rtmp nimblelebanonlocationmanifestTCOobswildcardRaspian BusterMP4 not playedspaceexportopensslonSteam stopped workingseekingHLS vodExpression Encoderanalyticsapplicationpaywallimuxamazon web servicenginxPlayReadydvr stream twicerepublishHLS PlayerAXVVGhot-linkDASH Playerjpegblocknvencdebian7brandingtriallive video on demandbandwithmicrosoft streamMP4screen freezecan't registererrorsserverrocksoftlog traffic statsLarge DVR filesprivate networkTelegramno WMSPanellive videosourcenimblesessionidFFmpegmultiple originsinterleavingSLDP PLayerABR DASHprogressive downloadmac osx installLive Streamingwotermarkheadervimeohelp errorvideo stopstreamslog nimble analysertmp playbackload balancezabbixAdsvideojscache expiryattachmentHEVCcdnvsombitrate#restreamlive streamViewer Statsvod no soundconcurrent connectionadaptiveAV1 codecdvr streamconnectivityUbuntu 20 ARM - AWSunique visitorJWPLAYERNGINX-RTMPDelaympeg2tsServer-Side-Task-Controldisk migrationWidevinedvr on wmspanel4Kcrossdomain more then 1 domainscreen capturestereo to monoFairplaycpuaes encryptionnot foundCPU LoadsubscriptionpullAS3WMSPanel settingslive pull settingsABR HLS BitratesbuttAWS 3rtmp for YouTubeinstall players setup ready to goDVRSettingstwitch larix broadcaster androiddrmAppleDelete recordsControl APInimble streamer web server php script pageautomationLive streamingvideo loopstarttime duration seekpointadd_chunk failedPost processingfake extensionrebootloggingnimble streamer vod hls transmuxinglearnermonitormobile app live streamingCross Domainoutrateudp streaminginsert logoapi accessDeep statsicecastDVRStreamsloadbalancerweb playercontent-dispositionUbuntu artful 17.10Transcoder MPEG DASHinvalidMPEG DASHblock downloadAVCaptureMovieFileOutputdvr streamsNimble ServerlivestreamNimble CapacityABR DVR problemHotlinking ProtectionStreaming routefacebookSecurityRTMP republishLive Switchernot to stealLive Broadcastsecure streamingpaymentstatsadvp9premium featureThumbnailsserver incorrect timecontentRTMP RepublishLiveLIVEdemandIOSHow to do live stream with multiple audio trackssaiDVR Setting limitProgressivenimble aliasesLoad-Balancingnimble streamer mpeg-ts multiple inputswmsAuthSignthumbnail dvr-thumbnailrmtpInterlaceno internetreportssoundHLS Meta Tag editing.Video cant be playedS3 AWStranscoder nimbleavoid refreshraspberrySecureJetson NanoPaywalllivestreamintransocdercredentialsautomateuser_agentstorage space availabledisktranscodevbv-maxrateFailoverVR-360publish streamStream Delayhd25trafficAArch64webhookdvr to livelivestream bitratedockerDVRRecordingAuthbuildrist set fecABR bitratesPacketizingdomain lockUsers limitoutputcloudflareVOD HLS streaming on public IPDVR SettingPORTlarixanalisyssctedelaympeg4storagealias route.movInvalid frame headerno soundincoming streamSubtitlesLL-HLS DVRav1 codecNimbleStreamerhttp servera recordwirecastfastspringNimble streamermp2 audioaliasdata slicesplayer sldpbuffering videoSO_RCVBUFdistributionVP9bufferqataritworkscdnvideo.jsQuickTimevideo streaminglatencyno audioCentos 8dissapointmentpay-per-minute3.6.1-1compatibility protocolsmultiplexMax connectionUDP MulticastCSSactionscript 3server ssl errorTeradek Decoderubuntu 18restarthelpFallbackrulesError when installinghow-tomanage_dvraws amazonserver ip21SSL requestMPEG2 Videologo in streamincomingmulti-viewersha265RIST Bondingplayoutmultiple audio udphotlink protectionRaspberryPi4ultra low latencyvideo audioSRT protocolanalyseStreamIDprogressivebroadcast videofallbackRaspberrytasks-control4GNimble_CrushwebrtcRTMP to SRTrtsp push androidartifactstuningWowza AgentRemote StorageSSAIprerollstreamrtmp sldp nimblenimble on cloudLinuxgpu{stream}OBSBroadcastvideo and audio not matchLarix broadcasterGoogle DriveHLS StreamingPIDurlSnapshotsspeedup my videoiOSMPEG-DashsubfolderTLSV 1.2 Certificatedynamic linksAmazonTVfirenimble.confrtmp republishing transcodeIIS Media ServicstrackfairplayNginxbroadcasterOSXmd5Nimble connectionsabr fallbackletsencryptmultipointrulethumbnailsEncoderdvbNetworkRAM Loadstatus:errortranscodingdownTonyFFMPEG;RTMP;I/O errorissuepricinggoogle cloud storageLL-HLSGopHTML5 playerAddendartpnimble dvrBandwidthdurationYadifportsRokumultiplemainmultistreamingRistmultiple 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.