Wowza Community

Time Shifting Live Streams

According to the PR about Wowza 3, this nDVR plugin allows time-shifting, so you could have a live stream that goes into a giant disk buffer and comes out the other end some hours later. What do we need to configure this, how many wowza servers and how many nDVR licenses for 36 SDTV streams? Are there some good docs about how to delay an input stream for a given time zone and then deliver it to say Akamai or other HLS content delivery services? Can wowza delay an incoming RTMP stream from Flash Media Live Encoder and then push that stream using RTMP , as if it was the initial encode point?

  • Z

You could just record in Wowza, then use Push Publish.

https://www.wowza.com/docs/how-to-push-streams-to-cdns-and-other-services-push-publishing

Richard

duplicate

Does that mean it automatically starts pushing after the specific time delay has passed, for example, after 8 hours of disk has buffered?

Is there a way to treat the server as a large buffer that just keeps the video output delayed x hours from input? Can that be done without having to record, stop, play, i.e. can one start it rolling, pause for 8 hours, then let it roll for the next month uninterrupted and it will be continually delaying the inbound stream 8 hours before pushing it out via RTMP on the other side?

Can you please clarify if time shifting is different from a typical DVR function that forces you to record, stop and then play? That is what we are looking for, the ability to pump a stream into a buffer that is say 8 hours in size and stream out the other side, can you let me know if that is possible, and if so, what additional steps need to be taken to make this a reality?

Hi Scott,

So you are saying, time-shifting live video is not possible at this time, or that it requires some kind of hack to make it work? I wish there was a better way to describe what I mean by “time shifting” for google searches. I’m looking for a massive video delay buffer functionality, RTMP pushed in from FMLE and pushed out by the server again using RTMP. I thought that was what the blurb on the Wowza 3 info page said is a feature. Can you imagine the work a person would need to do to handle large numbers of live video streams that they had to run around hitting record, stop, and play for each time zone on earth without screwing up.

BTW, nDVR doesn’t handle rtmp out. It’s HTTP streaming only.

Hi Scott,

Will it work with the wowza push publishing plugin, and will video beyond the 8 hours expire from the buffer automatically?

Conceptually:

FMLE Encoder--------->8-hour-delay-buffer-wowza-3-machine-------------->CDN (wowza 2 cloud)

Does that mean it automatically starts pushing after the specific time delay has passed, for example, after 8 hours of disk has buffered?

No it does not. You would need to customize on your side to handle time shifting.

nDVR handles time shifting in the manner of seek, pause, etc.

Is there a way to treat the server as a large buffer that just keeps the video output delayed x hours from input? Can that be done without having to record, stop, play, i.e. can one start it rolling, pause for 8 hours, then let it roll for the next month uninterrupted and it will be continually delaying the inbound stream 8 hours before pushing it out via RTMP on the other side?

Can you please clarify if time shifting is different from a typical DVR function that forces you to record, stop and then play? That is what we are looking for, the ability to pump a stream into a buffer that is say 8 hours in size and stream out the other side, can you let me know if that is possible, and if so, what additional steps need to be taken to make this a reality?

Yes, playing back live time shifted is different from Wowza’s nDVR.

There is no out of the box way of playing nDVR as a time-shifted live.

Is there a way to treat the server as a large buffer that just keeps the video output delayed x hours from input? Can that be done without having to record, stop, play, i.e. can one start it rolling, pause for 8 hours, then let it roll for the next month uninterrupted and it will be continually delaying the inbound stream 8 hours before pushing it out via RTMP on the other side?

Can you please clarify if time shifting is different from a typical DVR function that forces you to record, stop and then play? That is what we are looking for, the ability to pump a stream into a buffer that is say 8 hours in size and stream out the other side, can you let me know if that is possible, and if so, what additional steps need to be taken to make this a reality?

I thought about this a bit more.

We do have some API-level functionality that allows you to programmatically select a playlist begin and end point. So one option to shift a 9 hour recording by 8 hours would be to use this API for a via API create a playlist that starts at time=0:00 through 1:00:00.

The caveat is that this stream would have a begin and end, so would have seek and pause but would not have additional live content being appended to it.

See https://www.wowza.com/docs/how-to-use-wowza-ndvr-playlist-request-api

Hi Scott,

So you are saying, time-shifting live video is not possible at this time, or that it requires some kind of hack to make it work? I wish there was a better way to describe what I mean by “time shifting” for google searches. I’m looking for a massive video delay buffer functionality, RTMP pushed in from FMLE and pushed out by the server again using RTMP. I thought that was what the blurb on the Wowza 3 info page said is a feature. Can you imagine the work a person would need to do to handle large numbers of live video streams that they had to run around hitting record, stop, and play for each time zone on earth without screwing up.

Well you called it a hack I didn’t. (smile) I said you could use the API to limit the requested playlist. I don’t think you would need to run around and hit record and stop.

Here’s how I see it would work-- You record the stream. Say you have recorded 9 hours. A request comes in. You determine what time zone the person is in, which will determine how much of the recorded content is available, you use this information to create a playlist request for that time period. That info is presented to that client.

It’s one recording, but you manage the different requests.

BTW, nDVR doesn’t handle rtmp out. It’s HTTP streaming only.

I publish a stream with nDVR. when client play the stream. can I know the if client has time-shifting.