previous next

Chapter 7: Choosing Audiences for an Encoding Job

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.

Overview: 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:

  1. Change the settings that determine how every audience will encode streaming media.
  2. Choose the audience or audiences that you want to encode for.
  3. Edit any audience to reflect your encoding needs.
  4. Save the modified audience as a template. This step is optional.

Each of the above steps are covered in more detail throughout this chapter.

Adjusting Encoding Settings for All Audiences

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.

Setting the Audio Mode

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.

Setting the Video Mode

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:

Choosing a RealVideo Codec

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.

Using the High Quality Audio Resampler

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).

Using 2-Pass 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.

Resizing the Video

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.

Using the High Quality Resizing Filter

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:

  1. From the main window, click the Video Filters button.
  2. The Video Filters palette opens.

  3. Select the checkbox labelled High Quality Resize.
  4. When selected, the filter is enabled.

Choosing Audiences

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.

12 kbps Substream for 28k Dial-up 12 kbps
16 kbps Substream for 28k Dial-up 16 kbps
28k Dial-up 20 kbps
Wireless 20 kbps
26 kbps Substream for 56k Dial-up 26 kbps
56k Dial-up 34 kbps
64k Single ISDN 45 kbps
128k Dual ISDN 80 kbps
150k LAN (Local Area Network) 150 kbps
256k DSL or Cable modem 225 kbps
384k DSL or Cable modem 350 kbps
512k DSL or Cable modem 450 kbps
768k DSL or Cable modem 700 kbps
Download - VHS quality 750 kbps
Download - DVD quality 1500 kbps

To use an Audience Template to define an audience for your encoding job:

  1. Open the Audiences dialog.
  2. Select an Audience Template from the list of Templates.
  3. Click the right arrow button. ->
  4. 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.

  5. Use the templates to copy as many audiences as you need to your 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:

  1. Open the Audiences dialog.
  2. In the list of Audiences In Job, select the audience that you want to remove.
  3. Click the Delete button to delete the audience from the list.

Editing Audiences Selected for a 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 job—and 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.

Adjusting Video Stream Settings for an Audience

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.

Setting the Bit Rate for a Video Stream

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 movement—or other factors that can affect the data that needs to be streamed—will 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:

  1. From the Audiences palette, select a non-VBR audience from the list of audiences that you have selected to use with your job.
  2. Click the Edit button.
  3. The Audience Properties dialog for that audience opens.

  4. Enter a value for the bit rate in the Constant Target Bit Rate field.
  5. 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.

  6. Click OK to save the settings to this audience.

Adjusting the Target Frame Rate

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:

  1. From the Audiences palette, select an audience from the list of audiences that you have selected to use with your job.
  2. Click the Edit button.
  3. The Audience Properties dialog for that audience opens.

  4. In the Target Frame Rate field, enter a number from 0.01 to 30.
  5. Click OK to save the settings to this audience.

Adjusting Advanced Video Stream Options

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.

Setting the Maximum Startup Latency

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:

  1. From the Audiences palette, select an audience from the list of audiences in your job.
  2. Click the Edit button.
  3. The Audience Properties dialog for that audience opens.

  4. Click the Advanced Video Options button.
  5. The Advanced Video Options dialog opens.

  6. Enter a number for the Maximum Startup Latency between 4 and 25 seconds.
  7. Click OK to save the changes.

Setting the Maximum Time Between Keyframes

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:

  1. From the Audiences palette, select an audience from the list of audiences in your job.
  2. Click the Edit button.
  3. The Audience Properties dialog for that audience opens.

  4. Click the Advanced Video Options button.
  5. The Advanced Video Options dialog opens.

  6. Enter a number for the Maximum Time Between Keyframes, a value between 0 and 60 seconds.
  7. Click OK to save the changes.

Enabling Loss Protection

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:

  1. From the Audiences palette, select an audience from the list of audiences in your job.
  2. Click the Edit button.
  3. The Audience Settings dialog for that audience opens.

  4. Click the Advanced Video Options button.
  5. The Advanced Video Options dialog opens.

  6. Select whether you want to use Loss Protection.
  7. Click OK to save the changes.

Adjusting Audio Stream Settings for an Audience

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.

Changing RealAudio Codecs for Audio Only Encoding

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 data—just audio.

To change an audience's RealAudio codec used during audio-only encoding:

  1. From the Audiences palette, select an audience from the list of audiences that you have selected to use with your job.
  2. Click the edit button.
  3. The Audience Settings dialog for that audience opens.

  4. In the Audio Only Encoding section, choose a RealAudio codec that you will use for the Voice Codec.
  5. This codec will be used for this audience when you choose Voice as the Audio Mode in the Encoding Settings dialog.

  6. Choose a RealAudio codec that you will use for the Music Codec.
  7. This codec will be used for this audience when you choose Music as the Audio Mode in the Encoding Settings dialog.

  8. Click OK to save the setting to the audience.

Changing RealAudio Codecs for Audio/Video Encoding

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:

  1. From the Audiences palette, select an audience from the list of audiences that you have selected to use with your job.
  2. Click the edit button.
  3. The Audience Settings dialog for that audience opens.

  4. In the Audio/Video Encoding section, choose a RealAudio codec that you will use for the Voice Codec.
  5. This codec will be used when you choose Voice as the Audio Mode in the Encoding Settings dialog.

  6. Choose a RealAudio codec that you will use for the Music Codec.
  7. This codec will be used when you choose Music as the Audio Mode in the Encoding Settings dialog.

  8. Click OK to save the setting to the audience.
  9. 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 New Audience Templates

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:

  1. From the main window, select Edit>Audience Templates.
  2. The Audience Templates dialog opens.

  3. Select an Audience Template that is most similar to the template that you want to create.
  4. Click the Duplicate button.
  5. A copy of the Audience Template is made, and it is added to the template list.

  6. Type in a new Template Name.
  7. You can now edit the settings for the new template, using the procedures described in the above sections.
  8. Click the Apply button when finished.
  9. 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 Audience Templates

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:

  1. From the main window, select Edit>Audience Templates.
  2. The Audience Templates dialog opens, giving you a list of all Audience Templates saved on your computer.

  3. Select a template from the list.
  4. The template's name and settings appear in the dialog.
  5. You can now edit the settings for the template, using the procedures described in the above sections.
  6. Click Apply to save the changes to the template.
  7. 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.

Using Variable Bit Rate (VBR) Audience Templates

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.

About VBR Encoding

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 bandwidth—as needed—to handle the extra bits encoded during complex video scenes.

The following are limitations when using VBR:

Types of VBR Encoding

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.

Best Uses for Encoding Types
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.

Average Bit Rate VBR Encoding

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.

Video Quality VBR Encoding

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 specified—for 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.

Creating a VBR Audience Template

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:

  1. Open the Audience Templates dialog.
  2. Select an audience template from the list on the left.
  3. In the Audio/Video Encoding section of the dialog, select Variable Bit Rate.
  4. You can select one of two ways to vary the bit rate:
    1. Select Target Bit Rate and enter a value in the field.
    2. 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.

    3. Select Target Video Quality and enter a percentage in the field.
    4. 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.

  5. Enter a value for the Maximum Bit Rate that will occur during spikes of data transfer. You cannot enter a value greater than the bit rate you have available for the video stream.
  6. Click Apply to save the settings to the template.


RealNetworks, Inc. ©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.
previous next