Livestreaming, parallel recording and stream "sectioning" possible?
we're planning to use Wowza as our main streaming server solution for an invitation to tender, but we're wondering whether it's possible to implement a sort of "time shifting" mechanism in Wowza. Basically, we're planning to deliver livestreams and have metadata attached to the stream in realtime. That metadata is going to be stored in a database and will be used in combination with a web frontend to allow the user to search for specific content of a stream.
What we need is:
1.) Live-streaming to a broad audience
2.) Recording of the livestream at the same time
3.) A method to give the user access to specific parts of the stream
We're planning to record the livestream as one file per day. The user will then click a link with prepared parameters indicating the start and end time of the part of the stream the user wishes to view. This "sectioning" happens automatically based on the search function and the metadata from the database. To the user, this should look as though he was viewing a, say, 5-minute-long separate clip. But actually, that fraction of the stream is being taken from that one big stream file.
Now to my questions: is such a thing possible with Wowza? Do you see any sticking points, anything we might want to consider doing instead?
Thank you in advance,
Last edited by potentialcustomer; 11-26-2008 at 02:02 AM.
You can use "live-record" streamtype to accomplish this. And you can provide a seek mechanism to jump to points in the stream. I have a little app that just uses an xml file for this (xml file with same name as stream), but same idea as caputuring in db essentially. You can see here:
The content/subject matter is small town conservation committee.
thanks for your input, we'll consider the stream type "live-record".
Your solution looks almost like what we're looking for. I assume your application isn't open-source so I could have a look into what you did?
Another question: is there a file size limit for Wowza-streams? It's highly likely that 24 hour long streams will be growing pretty large (>4GB), so is there any sort of file size limitation, anything we might better be looking out for?
You're right, it's not open source, it's not really done yet anyway. It's a Flex app.
The limitation for videos is 4.5 hours.
The next patch will support recordings longer than 4.5 hours. The new number is somthing like 1200 hours (of course at some point the file will be too big).
Well, such a 4.5 hours limitation is a little unfortunate. It will force us to do a stream rotation every ~4 hours and implement a mechanism that would open the correct stream file depending on the time index requested.
Thanks Richard for your help and warning us in advance.
Again, this limit will be raised in the next patch of the server.
There's still some confusion on my part. I'm wondering how live-record works exactly.
We're still in the process of evaluating encoding servers and I'm assuming that the chosen encoding server would provide us with sdp files that would have to be stored in Wowza's content directory. Inside those sdp files there's that rtp:// or rtsp:// link to the encoding server.
1.) It seems that I'd always need an sdp file when getting livestreams from sources other than the local file system, is that correct?
2.) Then, how would I go about recording those streams? Do I need to write my own module that captures the video/audio content?
3.) It seems that the videopassthru module is not what I am looking for, since it receives data from... what source exactly? Does it only work with local webcams?
4.) And what type of content can be recorded by Wowza? It seems that Wowza is unable to record H264/HE-AAC, so I think we'd better be creating flash video files (Sorenson with MP3 or Nellymoser?) with the encoding server, so that these can be saved with Wowza?
Sorry for that mess of questions. It's really a bit complicated for a newbie like me without any experience with streaming servers. Thanks for helping me clear up that mess.
Tags for this Thread