Event Based DVR

I needed to ask you a couple of questions regarding wowza’s platform capability…

  • Is it possible to break timeshift chunks into different episodic files? In the multi-screen lingo, this is known as event based timeshift. For example, lets assume we are recording Fox which has a show called ‘House’ aired at 9PM everyday. Assuming we are saving 3 days of timeshift information, when the user wishes to watch House Episode 10 (Aired Day before Yesterday), he will be allowed to do so. Once the episode finishes, we want the application to stop and give a prompt to the user that the next episode (Episode 11, aired Yesterday) is also available with us for him to view. The user can then choose to watch the next archived episode by click on ‘Yes’. My questions are…

  • Is this possible to do with your platform?

  • How does your platform give me information on which chunks house is stored in?

  • Is there a serial order in which these chunks are created? In my understanding, the server will continuously keep recording content as days pass and will serially maintain the chunk information.

  • How will the playlist.m3u8 (For HLS implementations) be created? Will our CMS need to create that on our own or is there an automated way to do so using the Wowza platform?

  • We also have a requirement for Pause / Resume for channels who we currently do not have timeshift rights for. The limitation being that unlike timeshift (With an archive duration of 3 days), here the cashing window will be for 45 minutes only (Or whatever we finally decide). So, for example, if you are watching ESPN and press pause during a game, the user can resume from where he paused from only within a 45 minute window. If he chooses to resume after 45 minutes (Say 50 minutes), the playback will start 5 minutes after the point he paused from because 50 minutes is 5 minutes after 45 minutes. Its more like a shifting window. Needed to understand how can we make this possible using the Wowza platform.

    I really feel that Wowza is a great engine. If I can meet my requirements I would love to use this in production. I have a trial license, will testing of the above be possible within that license?

    Will I need to use APIs to do the above? Do I have to build my platform in Java to use those APIs? My CMS is built in PHP, how do I control Wowza using PHP? Thanks, in advance!

Hi,

Thank for your feedback on Wowza Streaming Engine it is good to hear. In answer to your questions

  • Event based timeshift could be achieved with our LiveStreamRecord APIs. A tutorial can be found here

Live Stream Record

This allows you to break recordings as you need to, so as one show stops and another starts you can segment the recording into the files that you need. This is the most efficient way to produce an event based playback. How you trigger the segmentation is something that you would need to integrate but from the APIs this hopefully gives you some idea what can be done.

  • Pause/Resume - This can be done with our nDVR Add On , details here

Wowza nDVR Tutorials

There are multiple APIs for the nDVR system, ie. make it available per channel etc etc

Andrew.

Thank you very much Andrew, for your speedy response. I am falling in love with Wowza with every passing day :slight_smile:

In extension to my question above, I read the link you posted and I quote “Live Stream Record, formerly a free AddOn, is incorporated into Wowza Media Server 3.5 as an API that gives you more control over recording live streams to video on demand files. This feature enables you to control the live stream recording process using a web-based user interface, HTTP URL queries, or programmatically. Powerful APIs are included to support splitting of in-process live streams into multiple on-demand MP4 (QuickTime container) files or FLV (Flash Video container) files, with the split points based on video duration, clock time, or file size.”

My encoder will throw HLS packets for the live stream continuously. Will it be possible to collate these packets into shows and save them as different HLS based entities?

Thank you, Andrew, for your speedy reply. I went to the link you referred, and I quote…

“Live Stream Record, formerly a free AddOn, is incorporated into Wowza Media Server 3.5 as an API that gives you more control over recording live streams to video on demand files. This feature enables you to control the live stream recording process using a web-based user interface, HTTP URL queries, or programmatically. Powerful APIs are included to support splitting of in-process live streams into multiple on-demand MP4 (QuickTime container) files or FLV (Flash Video container) files, with the split points based on video duration, clock time, or file size.”

I am using a Harmonic Live Encoder which auto encodes the live stream to H.264 HLS (TS) chunks. Does Wowza have the capability to split these chunks into different assets (based on Clock Time) and store them as separate entities? I did not get information on that directly from reading the documentation. Thanks!