|What's the best online video format to use for business?|
It's been 4 years since I mucked with, then promptly gave up on, RealMedia files.
Now I've got a client who needs to post up short video clips currently in .avi or .mpg format. He wants to hook them up to a password-protected area, so there won't be many, if any, people viewing them simultaneously. Clips are only about 2 minutes long. Currently, they're huge, 24mb and 36mb.
The assumption is the majority of his clients are on high-speed lines.
I know there's 3 formats out there: Quicktime, RealMedia, and that Windows format - can anyone tell me (or direct me to some research on)
1) Which format is the most common? Or should we always use 2 formats? If so, which ones?
2) In Ye Olden Days of last century, with RealMedia, you had to download a free encoder to change the files over to their format. Can you still download free encoders for the above software, or do you have to pay?
3) Also back then you could just put a file straight on any server, you didn't need any special server stuff to run it.. is this still the case?
Thanks kindly for your help.
1) All 3 are heavily used in my experience. Windows Media files are viewable by default by anyone using Windows 2000 onwards (as MS bundles the software in), though some automated upgrade might have to be done client side to see the latest content). I haven't used a mac in a while but I believe Quicktime is bundled in on Macs as the default media player?
2) There are still free versions of the real player clients - they just have certain functionality disabled, such as limiting you to a 3-band equalizer.
3) You can still stream from a standard HTTP server. Serving the file from a special media server just lets you serve content according to client bandwidth, and allow the client to jump to different parts of the file with a 2 second pause whilst it "rebuffers".
There is also MPEG format video which you can use for streaming. Experiment to get the best quality video for best size file and smooth playback on the client system.
... I'm thinking, since this is exclusively for high-bandwidth clients, to heck with the encoding formats, can't we just stick with .mpeg files to stream? What troubles might we run into with that?
Can a traditional server buffer and stream a 50mb file?
And, correct me if I'm wrong, but don't I just hyperlink to it - as in < a href="directory/sample.mpeg">click here to view 50mb file < /A >
Thanks for your help...
What about some of the newer codecs like DivX? They seem to be able to compress high quality video pretty well now.
a quote from the DivX site:
|The DivX® codec (short for compression-decompression) is based on the MPEG-4 compression standard. This codec is so advanced that it can reduce an MPEG-2 video (the same format used for DVD or Pay-Per-View) to ten percent of its original size. Video on regular VHS tapes can be reduced to about one hundredth of their original size. |
|... I'm thinking, since this is exclusively for high-bandwidth clients, to heck with the encoding formats, can't we just stick with .mpeg files to stream? What troubles might we run into with that? |
The trouble with MPEG is that if you compare files of the same video resolution (e.g. 640 x 480) with a more advanced codec (e.g. Windows Media), then the MPEG file works out a lot bigger than the windows media file if you wish to preserve the quality of video.
Bill's suggestion is quite a good one if you (or your clients) don't mind downloading and installing codecs. DivX is advanced, and can provide a good tradeoff on video quality, video resolution, and file size. Just provide the link to the codec you use, as they are not "official" yet.
Can a traditional server buffer and stream a 50mb file?
Yes, though it's always advisable to check on a test server first (if available), before trying it on the production server.
<a href="directory/sample.mpeg">click here to view 50mb file < /A >
That's all you need. However, you may find with this that the browser asks the user if they want to open or save the file, which kind of defeats the point, as it may download the whole lot first before playing it. :( You might need to put the full url in a file called sample.m1u, and link to this.
e.g. the file sample.m1u contains:
and your url contains:
|The trouble with MPEG is that if you compare files of the same video resolution (e.g. 640 x 480) with a more advanced codec (e.g. Windows Media), then the MPEG file works out a lot bigger than the windows media file if you wish to preserve the quality of video. |
Just to clarify - Windows Media in my understanding isn't actually a codec [siggraph.org]. It is a format that uses various different codecs (Cinepak being the most standard). Quicktime's Sorenson codec provides very good results also (especially the pro version).
While comparing MPEG1 to Windows Media files at 64x480 may well make WM look better, trying it at a smaller size will be more MPEG1 friendly. MPEG1 was never designed for full screen and doesn't perform well at that resolution at all. It is ideally half-size. MPEG2 is made for full screen applications (DVD). It does make a big difference how good your encoder is though - particularly 2 pass Variable bit rate encoders provide a far better quality at lower sizes. Good encoders will also let you crop/resize the image and specify precise bitrates to bring it down to whatever size you want.
The problem with going for either Quicktime, Windows Media or Realplayer files is that you run the risk of excluding part of your audience (I don't have Windows media player or real player on this computer for example).
In my experience MPEG1 is an excellent format (for CD-rom particularly) and my understanding is that the benefit of it is that it is compatible with all three players (although does have problems with pre win98/macOS9 computers). I have used MPEG1 for web delivery too - you just need an encoder that will let you specify bitrates and dimensions.
I haven't played with MPEG4 (or DivX) yet, but it is supposed to be better for web than MPEG 1, so is probably worth looking into. My concern is that it may not be as compatible (older versions of the players mainly) - I would be interested to see what others have found with that format as it comes standard with the new version of QT PRO.
OK: Here's a twist.
Since the client's already using Flash on another part of his site, we planned to move forward with Flash streaming video.
What difficulties, if any, might we encounter with this?
The only difficulties I can see are:
1) Clients will need broadband to get smooth video (or you build in a holding scene and wait for the video to download first before playing).
2) The clients must be on a platform that has a Flash MX client (and the client must be installed).
Other than that - good idea. Clients can then view the content directly in their web browser.
Hmm. I guess alternately, if the client doesn't have a Flash MX server, we just put the files/pages themselves on a Flash MX server site, and link over to that.
Not as graceful, but if it works smoothly across the most platforms, that's fine with me.