Broadcasting Live Video
The basic idea of broadcasting a live video stream using Macromedia Flash video is the same as the basic idea of streaming on-demand (pre-recorded) Flash video: you provide a video stream to Macromedia Flash Media Server (formerly Flash Communication Server), which streams it to people who visit your site, and those visitors view the stream using Macromedia Flash Player.
However, the way you provide the video stream for live video is very different: you need a source of live video, and that video feed must be encoded in real time as it is captured. Unlike the procedure for on-demand video, with live video the capturing, encoding, and publishing steps all happen at the same time.
Checklist for Capturing and Publishing Live Video
The following procedure explains how to capture and publish live video.
To capture, encode, and publish live video:
- Using the Flash authoring tool, create a SWF file that captures and transmits live video, also known as a broadcast application.
- Create a live streaming application on your Flash Media Server, or sign up for a live video streaming account on the Flash Video Streaming Service.
- Create another SWF file that plays streaming video, and publish this SWF file to your website.
- Connect a digital video camera or web camera to your computer, and then open the broadcast application that you created.
- Publish the live stream from your camera to your Flash Media Server or Flash Video Streaming Service.
- When visitors to your site browse to the SWF file on your website, Flash Player displays the live video stream for them.
Encoding Live Video
For a Flash video live video stream, the live video source can come from any camera connected to a computer. It could be a webcam connected to your laptop’s USB port or a digital video camera connected to a high-end video capture card.
Live video can only be streaming video. The other options available for on-demand video (embedded video and progressive-download FLV files) are not available for live video.
Flash Player 6 and later contains an audio and video encoder that lets you capture audio and video directly from any camera or microphone connected to your computer. You run a particular kind of SWF file, also called a broadcast application, on the computer that the camera is connected to. The broadcast application contains all of the settings that are required to encode the video in real time. Many of these settings are conceptually the same as those discussed in the on-demand sections of this document, such as bit rate and keyframes.
Capture cards and other live video encoding hardware improve the quality of live video by sending a better video signal to the broadcast application and moving much of the encoding processing from Flash Player to the hardware. However, such hardware is not necessary for basic live video streaming.
The broadcast application sends the live video to your Flash Media Server or to a Flash Video Streaming Service server, which republishes the live video to be viewed by anyone who connects to the stream.
The live video capabilities in Flash Media Server include audio push, record, and record-append. In addition to live video streaming, Flash Media Server lets you produce video chat, video messaging, webcasting, video conferencing, stop-motion capture, and so on.
The details of how to create a broadcast application are outside the scope of this document. However, Flash Media Server includes several sample applications and components that let you capture and broadcast live video.
In addition to the broadcast application, you must create a web page that allows visitors to view the broadcast. The process for creating such a page is similar to the process for creating any page for viewing a video stream.