1

My school is setting up a professional television studio that is going to be recording a 1080p stream into a server I am expected to design with a $5000 budget. I do not know what format the video will be coming to me in, all I know is that they want to stream both live and prerecorded. However, I am not sure where to start.

I have selected a Dual Xeon Quad-Core 2.4 Ghz with 12 GB RAM, 10Gbps Ethernet, and eight 2TB hard drives to be run in RAID 10. With all of that I'm almost over budget and I still did not add a card to pick up the video.

I guess my questions are:

  1. Is video streaming CPU-intensive or memory-intensive (where should I focus my budget)?
  2. I probably will not have money to get a Windows Server license, so is this all possible on Linux?
  3. What software is required to actually stream the videos? I have heard of JPlayer but is that only client-side or both?

I apologize for the big questions, but I have never done video streaming before and need some pointers.

5
  • 3
    Why do you need 10Gbps ethernet? Does the rest of your network support it? I think you need to rewind a little bit and instead of jumping straight to speccing out a server, do some requirements modelling and work out exactly what it is the server needs to do. You've specced out a decent server, but it seems very general purpose. Also I think "professional television studio" is a bit misleading :P
    – micmcg
    Dec 13, 2010 at 6:41
  • If you're not sure where to start then I'd start by filling in the unknowns, starting with the video format. Until you know what that is, you don't know how processor intensive it will be, what systems will support streaming it, how much disk space will be used per hour of filming, etc, and until you know those things you just can't build a solution. Start with that kind of stuff and only then worry about server spec and OS licences...
    – Rob Moir
    Dec 13, 2010 at 6:54
  • 2
    I'm also a little confused when you say you can't get windows licences (I can understand preferring another platform of course) because the cost of these in education is absolutely trivial under their educational pricing schemes.
    – Rob Moir
    Dec 13, 2010 at 6:56
  • Where will you be streaming to? Other machines within the school or people viewing externally? If you are streaming externally are you colocating this server in a data centre?
    – ollybee
    Dec 13, 2010 at 11:19
  • I doubt $5000 will be enough. Dec 13, 2010 at 15:31

4 Answers 4

2

You use above H/W for streaming you use CentOS visit following link for the setup

http://studyhat.blogspot.com/2010/02/darwin-streaming-server-on-rhelfedora.html

http://studyhat.blogspot.com/2010/02/straming-server-linux.html

1

Make sure you get a proper workstation/server class motherboard because you will want to be shuffling around a lot of data. You will need the higher bandwidth of PCI-X or multiple PCI-E 2.0 slots.

1

Is video streaming CPU-intensive or memory-intensive (where should I focus my budget)?

It depends on how many streams you need to capture / how many clients are reading the streams. But the main bottleneck will be disk I/O. How much video do you need to keep offline? At HD rates, your 8Tb is going to fill up surprisingly quickly.

I probably will not have money to get a Windows Server license, so is this all possible on Linux?

Maybe. There are several options for RTSP described here. NB if you want to maintain a low-res archive, then ffmpeg also converts formats. What do you expect users to watch video with?

For live video feeds, RTSP is probably the way to go - but for on-demand video, progressive download has a lot of advantages (there are lots of free flash players for PD).

What software is required to actually stream the videos?

For PD, just a webserver and a scripting language (PHP or Perl being the obvious candidates). For RTSP, you need a RTSP sserver - Darwin is an obvious choice. Bother require a client program - but that can be a flash player, alternatively, there is increasing support for HTML5 video. See this page for a description of video formats.

1

1.Is video streaming CPU-intensive or memory-intensive (where should I focus my budget)?

Neither nor. It only requires substantial CPU when you do encoding. But encoding is not streaming. Memory intensive when streaming MANY recorded streams as the disc and IO buffers eat you alive.

2.I probably will not have money to get a Windows Server license, so is this all possible on Linux?

Really? You wont have little money? Note that schools get HUUUUGE discounts + school wide deals so likely your school has the licenses lying around. Otherwise you are out of luck - windows streaming services are pretty much the lowest cost solution I can think of. Adobe is a lot pricier. And that pretty much suims up all I know (Windows + Flash platforms) for streaming. It is a niche.

3.What software is required to actually stream the videos? I have heard of JPlayer but is that only client-side or both?

Windows. Client is media player, Silverlight. Server depends. Not live: IIS can do it with a Silverlight client and the intelligent streaming plug in. NICE - switches bandwidths on demand. Live: Microsoft Media Services. Encoding can / should happen on separate computers.

ENCODING 1080 in real time can be problematic. Seriously. You likely do not want to do it on the server. Most modern graphics cards have support for encoding (wich nice speeds) but servers dont tend to have higher grade graphics cards. Also the load balancing between this + streaming can be problematic.

You are also off with your hardware - the RAID 10 is unneeded, unless you have a LOT of archive that a LOT of people watch, different areas. IO load will not require a RAID 10 of 8 discs.

Not the answer you're looking for? Browse other questions tagged .