(Please bear with me, I am technologically literate, but streaming & servers are technologies I need to work on)
I am a producer at a local Public Education/Access channel in Delaware County. We are looking to stream our live TV channel output to the internet, as well as having a library of On-Demand content.
Currently we have a 3rd party streamer called Epiphan VGA/DVI Broadcaster. It has 4 streams: RTSP, MPEG-TS, ASP, and Flash FLV. Those streams work, but makes HTML5 compatibility almost impossible.
I was wondering how we could incorporate Wowza into our workflow.
This is how I am understanding of how Wowza works, please correct me where I am wrong.
I have a dedicated ethernet connected PC (Quick question to any server techs: Is Windows or Linux better for this?) with attached storage. I install Wowza like an application. However, in order to manage Wowza would I have to get comfortable with a minimal level of coding? It seems Wowza is not your typical application. I tried the web demo, and wasn't really able to get any use out of it.
Once the application is installed and I have it working, I'd then create an "Application" to process the Live Stream. I would set up the stream in Incoming Publishers; with my Epiphan device I can "publish" the stream to certain things (RTSP Announce, RTP/UDP Push, MPEG-TS RTP Push, MPEG-TS RTP/EDP push). So I'd tell my Epiphan device to Push the stream to the internal Wowza IP, and with, what I am assuming is an AddOn, the Wowza Application would then reencode the stream and publish it externally for the world to consume.
This system could then record a live stream and make the files available OnDemand. So if we had an OnDemand library, all of the video files would be located on external harddrives attached to the computer. I also assume we'd need extremely fast drives.
With all of this in mind, how would one machine do the work of reencoding streams and handling the bandwidth and disk speeds for OnDemand viewing?
Wowza is easy to install and extremely robust out of the box. There is also the
modules collection with many great features that are very easy to configure with no coding necessary.
And if you need more functionality, there is the
Wowza IDE which allows you to create custom modules and/or use sample code provided by the Wowza team or user contributions.
Wowza comes with "live" and "VOD" applications pre-configured and you can start streaming as soon as the install is complete. You can easily add new applications as needed but it is not necessary to do so to begin streaming.
If your encoder can send H.264 video and AAC or mp3 audio to Wowza you will not need to use the Wowza Transcoder. If you wish or have the need to do adaptive bitrate streaming, then you will need to use the Transcoder to create the set of streams in various bitrates.
NOTE: The easiest way to record a live stream is to use a StreamType of "live-record" (or choose "Record all incoming streams" under "options" while editing the "live" application from the Engine Manager)
This records all live streams published to this application from start to finish. For more control over how streams are recorded see:
These are the Minimum recommended production hardware specs:
CPU: Single Quad Core, 3.00 GHz or better
Disk: 2 or more in RAID 0 (striping)
Network: 1Gbps Ethernet
A 1g nic with 20% overhead accounted for = 800mbs throughput, which is 800 viewers for 1 mbs streams, or 1600 viewers for 500kbs streams, just as a reference. It will depend on what the stream size is, but sounds like you should be fine.