This chapter describes how you can set up Helix Producer to encode streaming media tailored to your audience. You will learn how to choose the type of audio and video you are encoding to create a better output. You will learn how to select your audiences, either by using a preset audience or create a new one and save it as a template. Finally, you will learn about Variable Bit Rate audiences.
When you are setting up a job, you must choose one or more audiences that you will be targeting. These audiences will be encoded as separate streams, and each will be encoded with settings based on the bit rate for the audience.
For a summary of how audiences work within Helix Producer, see "Targeting Audiences".
The basic steps to selecting audiences is as follows:
Each of the above steps are covered in more detail throughout this chapter.
You can change various settings to reflect how you want Helix Producer to encode the final streaming media. These settings allow you to adjust the output depending on a number of factors:
These encoding settings will affect all destinations that you have defined in the output. Each setting can be found in the Encoding Settings section of the Audiences palette.
To open the Audiences palette, click the Audiences button on the main window.
| Tip: Any changes you make to the Audiences palette will be automatically updated for the current job. You can leave the palette open as you continue to set up a job or switch to another job. |
When you select the Audio Mode, you are telling the Helix Producer the type of audio being encoded. You can choose between Voice and Music for the Audio Mode.
Separate audio codecs exist that encode either voice data or music data better. Each audience that you will select has different codecs assigned for either Voice Audio Mode or Music Audio Mode. Thus, this setting allows you to specify that either a Voice codec or a Music codec is used when you are encoding your audio.
If you are unsure of which Audio Mode to choose because your audio content is mixed, the Music codecs provide the greater range and work best in mixed- use cases. Also, if you are encoding at a high bit rate, the Music codecs can give you a better quality, even for audio that contains all spoken word.
The Video Mode you select in the Audiences palette should determined by the amount of motion within the video. Examples of video clips with lots of "motion" are shots of people running, or quick pans of the camera from one person to another and back again, with each person talking in an animated fashion. Alternately, examples of video without motion are simple shots without any panning, or shots of scenery.
You can choose from the following:
If you desire better clarity during scenes with much motion, you can choose the Sharpest Image mode. This mode will use more encoding time on the clarity of the image, but at the expense of frame rate.
In the Audiences palette, you can choose which version of RealVideo you will use to create your streaming media clips. Each version uses a different method to compress your original video data into a format that is best for streaming.
A new video codec, RealVideo 9, is now included in Helix Producer. RealVideo 9 allows you to create the best quality video for any bit rate, especially at high- bandwidth rates. The following is a summary of the new features of RealVideo 9:
Choosing a RealVideo codec affects who can view your streaming video clip. Only those members of your audience who have a player with the selected video codec installed can play back the video. While the newest video codec gives you the best video, if you know that many people in your target audience have an older player version, it may be best to select an older codec.
When the audio sample rate of the source audio is different than required from the audio codec, Helix Producer must resample the audio. If you choose this option, the resampled audio will be of a higher quality, but the encode will need more resources (more time for encoding on-demand, and more processing power for live encoding).
In the Audiences palette, you can also select whether or not you want Helix Producer to use 2-Pass Encoding every time that it encodes RealMedia for the job. This setting will only be in effect when you are encoding files as your input to a RealMedia file output (i.e., it is not applied for live capture or live broadcasts). If you define your input and output (even one of multiple destinations) as anything other than files, this setting will be ignored.
As its name indicates, each time a job is encoded with 2-Pass Encoding enabled, the encoding process will be comprised of two passes. The first pass analyzes the data in the input media file to determine where the most bits are required in the file. The second pass encodes the file using the analysis provided by the first pass.
Using this feature results in better video for your RealMedia file, but the drawback is that the encoding process will take longer than encoding in a single pass.
If you want the video of the encoded output to be resized, you can make that adjustment in the Audiences palette. Enter a value (in pixels) for the new height and width. If you leave these settings blank, the size of the original video will be used for the encoded output video. If you resize the video to a much larger size, the output video will not have the same quality.
If you want to keep the original video's ratio of height to width in the output video, select Maintain Aspect Ratio. If you do not keep the original ratio, the output video image will appear stretched or squashed.
If you are also cropping the input video, the crop will occur before resizing. See "Cropping the Input Video" for more information on cropping video.
Whenever you resize input video, you can degrade the quality of the image. The High Quality Resizing filter is designed to make up for this degradation if it is selected for resized video. The trade-off is that more processing, and time, is needed during the encode to fix the resized video.
| To turn on the High Quality Resizing filter: |
The Video Filters palette opens.
Before you encode, you choose the audience or audiences you want to encode for. For each audience, a separate stream is encoded based on the type or speed of Internet (or Intranet) connection that your audience members possess. For example, if you predict that your audience will be primarily DSL or Cable Modem users, you will want a stream tailored for that bit rate.
When you choose to encode for an audience, you are telling Helix Producer to create a stream for that audience. You can choose more than one audience for an encoding job, but the size of the encoded output will grow with every stream added.
Helix Producer comes with a variety of audience definitions that have been created for a variety of audience types. These installed audience definitions are Audience Templates. An Audience Template is a text file that contains information about the settings for the audience. When you subsequently use a template to define an audience for a job, that information is copied into the job.
While you can change the settings in an Audience Template, it is recommended that you become familiar with these default Audience Templates before you start changing their settings. See "Creating New Audience Templates" for more information on creating your own templates.
Below is a list of the default Audience Templates that are installed with Helix Producer and their respective bit rates.
| To use an Audience Template to define an audience for your encoding job: |
A copy of the settings is the selected Audience Template is transferred into the job, and the audience name appears in the list of audiences used for the job.
While you can add a number of audiences, each one that is added adds more encoding time and uses computing resources during the encode. It is recommended to use two or three different ones that you know you need.
You can also remove an audience that has been added to a job.
| To remove an audience from your encoding job: |
While the Audience Templates that are installed with Helix Producer are created specifically for the target bit rate, you can fine-tune these settings once you have copied the template into your encoding job.
When you edit a job's audience, the changes you make will only apply to the current joband not to the Audience Template itself. See "Creating New Audience Templates" for information on editing a template.
This section describes the different settings that make up an audience and shows you how to change them to suit your needs.
One component of an audience is the video stream. The way in which Helix Producer creates the stream for the audience is based on a variety of settings that you can adjust.
Encoding a video stream is a complex task, so there are a variety of settings that you can use to adjust how the video codec creates the output video stream. You can set a target for the bit rate, set a target frame rate, and other advanced options.
The bit rate for an audience's video stream is the rate at which encoded information (bits) will be sent to your intended audience. You can adjust this to any number you wish, but it should be realistic. A 56 kbps modem won't be able to receive 100 kbps. It won't even be able to receive at 56 kbps because of packet loss during transmission.
When an audience template uses a constant bit rate, that simply means that at all times during playback, an audience will stream at one bit rate. The advantage to using a constant bit rate is that you can maintain a constant bit rate for connections that require a hard and fast limit on the bit rate. The disadvantage is that video clips with variations in movementor other factors that can affect the data that needs to be streamedwill lose video quality during those times where lots of data needed to be sent.
| Note: For information on using Variable Bit Rate (VBR) encoding, see "Using Variable Bit Rate (VBR) Audience Templates". |
| To set a constant bit rate for an audience: |
The Audience Properties dialog for that audience opens.
You should not enter a value greater than the bit rate you have available for the video stream.
| Tip: To calculate the maximum bit rate for video available, add the bit rate of the selected Music Codec to the Average video bit rate with music that is listed in the Audio/Video Encoding section of the dialog. |
The frame rate is the frequency at which the video stream is updated with new frames. This value is measured in frames per second. A high frame rate gives a smoother appearance to the motion of the video because more frames are sent per second to the audience's players. A lower frame rate can give a choppy appearance to the video. And a very low frame rate will make the video appear like a number of still images.
Some examples of common frame rates are: 24 frames per second (fps) is standard for film, whereas 30 fps is the standard for NTSC broadcast video. For lower bit rates, a frame rate of 10-15 fps is generally the best compromise of motion and quality.
| To set the target frame rate for an audience: |
The Audience Properties dialog for that audience opens.
In addition to the above, basic settings for the video stream, you can adjust more advanced settings that give you more control about how the video stream is created.
This settings allows you to set the maximum time the clip will pre-buffer before playing begins. The pre-buffer time is used by the video codec to store bits that will be necessary during high-action scenes. The larger the value, the longer the user before the clip starts, but the video's quality will be better.
| To set the startup latency: |
The Audience Properties dialog for that audience opens.
The Advanced Video Options dialog opens.
This setting allows you to choose how often keyframes are encoded. Keyframes are frames of video that are encoded in their entirety. In between these keyframes, each frame of video is encoded as a change from the earlier keyframe. Thus, less information about the video needs to be encoded.
Typically, the RealVideo codec will put a keyframe when needed (the scene changes drastically), but will put one every ten seconds if not needed. If you add more keyframes, more information will be encoded resulting in a greater bit rate required to stream the clip.
| To set the time between keyframes: |
The Audience Properties dialog for that audience opens.
The Advanced Video Options dialog opens.
You also have an option to add error correction information to the encoded file that will harden the file against packet loss when streaming. These lost packets may be reconstructed by the player.
| To enable loss protection: |
The Audience Settings dialog for that audience opens.
The Advanced Video Options dialog opens.
All streaming audio clips use a RealAudio "codec." Codec is a short name for compressor/decompressor algorithm. Helix Producer uses RealAudio codecs to tell a computer how to convert audio input into streaming audio clips. On the receiving end, decoding software, such as RealOne Player, use these same codecs to expand the streaming clips into digitized audio data.
RealNetworks has developed an array of RealAudio codecs, and each one is designed for a type of audio encoded at a specific bit rate. For example, one RealAudio codec compresses mono music for 32 kbps. Another compresses stereo music for that same bit rate. For a detailed list of RealAudio codecs, see "RealAudio Codec Reference".
RealAudio codecs squeeze down the audio data from the source by, in part, throwing out data, which makes RealAudio a "lossy" compression format. RealAudio doesn't delete data indiscriminately, though. It first jettisons portions you can't hear, such as very high and very low frequencies. Next, it removes as much data as needed while keeping certain frequencies intact.
The type of codec you choose (voice, mono, or stereo) determines which frequencies stay and which go. Voice encoding favors frequencies in the normal human speaking range. Music (mono and stereo) encoding retains a broader frequency range.
There are two types of encoding that you can choose RealAudio codecs for: Audio Only Encoding and Audio/Video Encoding. Audio Only codecs are used when the input for a job has no video datajust audio.
| To change an audience's RealAudio codec used during audio-only encoding: |
The Audience Settings dialog for that audience opens.
This codec will be used for this audience when you choose Voice as the Audio Mode in the Encoding Settings dialog.
This codec will be used for this audience when you choose Music as the Audio Mode in the Encoding Settings dialog.
Audio/Video Encoding codecs are for when you are also encoding video data. Thus, you have less bandwidth to work with and need to select a lower bit rate for the codec.
| To change an audience's RealAudio codec used during audio/video encoding: |
The Audience Settings dialog for that audience opens.
This codec will be used when you choose Voice as the Audio Mode in the Encoding Settings dialog.
This codec will be used when you choose Music as the Audio Mode in the Encoding Settings dialog.
| Tip: When you choose an audio codec for Audio/Video encoding, the resulting Video Bit Rate that can be used for the video portion of the encoding job is calculated and displayed for you. |
Creating an Audience Template gives you the ability to use your audience settings for later jobs. You can also share your Audience Template with others who will be encoding for the same audience.
While you can simply edit one of the default Audience Templates to create your own template, the best way to customize a template is to create a new Audience Template.
| To create a new Audience Template: |
The Audience Templates dialog opens.
A copy of the Audience Template is made, and it is added to the template list.
Your new, custom template appears in the list of Audience Templates. And a new template file is saved on your computer so that it can be used when creating encoding jobs.
The rest of this section shows you how to adjust settings for an Audience Template.
Editing an Audience Template is similar to adjusting settings for an audience. The difference is that the changes you make to a template can be used for future jobs.
You edit a template using the Server Templates dialog. This dialog also shows you all Server Templates that have been saved to your machine. It allows you to quickly scan through the different templates so that you can edit them or review their settings.
When you make changes to an Audience Template, you are only making the changes to the information saved in the template file. Thus, the changes will not take place in any jobs that were already created using the template. To add these changes to a job, you must remove the audience from the Audiences In Job list, then select the template again to copy its settings into the job.
| To edit an Audience Template: |
The Audience Templates dialog opens, giving you a list of all Audience Templates saved on your computer.
| Tip: If you have altered and saved the original default templates, you can restore the original templates that are included with Helix Producer by clicking the Restore Selected Template button or the Restore All Templates button on the Audience Templates dialog. |
For most video clips that you want to encode, there exists a balance of needs. On one hand, you want to preserve the quality of the encoded video during the high-action scenes. But on the other hand, you need to keep the encode bit rate at a level at which your audience can view the video without interruption by buffering.
Variable Bit Rate (VBR) encoding gives you the ability to balance these needs when you encode with an Audience Template.
Most video clips have different scenes with various levels of complexity. Complexity can arise when there is a large amount of motion in the video, such as a car chase where there are many subjects moving in different directions. Naturally, complex video scenes are the most difficult for Helix Producer to encode.
When you set Helix Producer to encode at a constant bit rate (CBR), all scenes, regardless of their complexity, are encoded equally. Thus, highly complex scenes lose video quality once encoded.
With VBR, however, these complex scenes are treated differently. When you specify a target bit rate for encoding, it is usually below the actual bit rate for the connection. For example, a 384 kbps DSL/ Cable modem audience will be targeted at 350 kbps. This extra bandwidth is generally saved for network congestion or similar constraints on the transfer of the encoded data. If you were to specify a CBR near the threshold bit rate, your audience would lose the connection or suffer rebuffering often. VBR allows Helix Producer to use this extra bandwidthas neededto handle the extra bits encoded during complex video scenes.
The following are limitations when using VBR:
There are two ways to use VBR encoding. The first option is to specify an average bit rate at which Helix Producer will encode the streaming video clip. The second option is to specify a video quality at which Helix Producer will attempt to encode the streaming video clip.
The table below gives you a summary of the best uses for all three types of encoding possible with Helix Producer: CBR, Average Bit Rate VBR, and Video Quality VBR.
| Types of Encoding | Best Uses |
|---|---|
| CBR | Narrowband streaming |
| VBR - Average Bit Rate | Broadband streaming |
| VBR - Video Quality | Downloadable files, DVD content |
Both of the VBR options are defined in detail below.
| Note: When you create a VBR RealMedia file, Helix Producer saves the file with a .rmvb extension to distinguish it from normal RealMedia files, which have a .rm extension. |
This type of VBR encoding tells Helix Producer to try and stay at a target bit rate, on average. The target average bit rate that you specify should be below the maximum bit rate possible for the connection type. In this respect, it is similar to CBR encoding as it stays below the bit rate threshold. Thus, your audience is less likely to lose a connection or experience rebuffering.
But when the video clip becomes more complex, Helix Producer can use the extra bit rate for a limited time so that the video quality can be maintained. Once the complex video scene is over, the specified average bit rate is resumed. If a complex scene is especially long, Helix Producer will lower the bit rate (and the video quality) to keep to the specified average.
Therefore, the best use for average bit rate VBR encoding is for a broadband audience, where the connection can withstand the occasional increase in bit rate.
This type of VBR encoding is for when you are more concerned about preserving the quality of the video image than losing your audience. Here, you specify a percentage of quality that you want Helix Producer to maintain.
To keep the video quality, the encoded bit rate may remain at a high bit rate even staying at the maximum bit rate specifiedfor as long as the video complexity also remains high.
Therefore, the best use for video quality VBR encoding is when you are creating a RealMedia file that will be downloaded by your audience. It is not suited for streaming with a Helix Universal Server.
Helix Producer comes with a number of templates created with different audiences in mind. Their default settings are suggested settings for a particular audience, allowing you to edit the template to suit your needs. You can edit an existing VBR template, or you can create a new VBR template.
While you can create a VBR template for any bit rate, it is recommended that you only use VBR for bit rates above 150k.
| To create a VBR Audience Template: |
If you use this method, Helix Producer will create a RealMedia clip that uses the target bit rate as the average for the duration of the clip.
If you use this method, Helix Producer will create a RealMedia clip that uses the video quality as a basis for varying data transfer, and will stream at this quality, regardless of bit rate.
|
|
©2002 RealNetworks, Inc.
For more information, visit RealNetworks Click here if the Table of Contents frame is not visible at the left side of your screen. |