HELIX MOBILE PRODUCER USER S GUIDE Helix Mobile Producer 13.1 Revision Date: 18 December 2009
RealNetworks, Inc. P.O. Box 91123 Seattle, WA 98111-9223 U.S.A. http://www.real.com http://www.realnetworks.com Copyright 2004-2009 RealNetworks, Inc. All rights reserved. Information in this document is subject to change without notice. All rights reserved. No part of this book may be reproduced, in any form or by any means, without permission in writing from RealNetworks, Inc. Helix, the Helix logo, the Real "bubble" (logo), RealProducer, Helix Producer, RealSystem Server, Helix Universal Server, RealAudio, RealVideo, RealMedia, RealPlayer, and RealOne Player are all trademarks or registered trademarks of RealNetworks, Inc. Other product and corporate names may be trademarks or registered trademarks of their respective owners. ------------------------------- Copyright (c) 1995-2009 RealNetworks, Inc. This product may incorporate one or more of the following: U.S. Patent # 5,917,835; U.S. Patent # 5,854,858; U.S. Patent # 5,917,954; U.S. Patent # 6,597,961; U.S. Patent #6,314,466. Other U.S. patents pending. All rights reserved. RealNetworks Lossless audio codec Copyright (c) 1999-2003 RealNetworks, Inc. All rights reserved. RealNetworks RealAudio Multichannel Codec Copyright (c) 2003 RealNetworks, Inc. All rights reserved. ACELP(r).net codec by VoiceAge Corporation Copyright(c) 2000-2002. All rights reserved. AAC and aacplus implementation developed by Coding Technologies. All rights reserved. The Ogg Multimedia Framework and the Vorbis audio compression tools have been provided by the Xiph.org Foundation. RealNetworks RealVideo 8 video codec Copyright (c) 1995-2004 RealNetworks, Inc. Portions Copyright (c) 1999-2000 Intel Corporation. All rights reserved. RealNetworks RealVideo 9 video codec Copyright (c) 1995-2004 RealNetworks, Inc. Portions Copyright (c) 1999-2003 Intel Corporation. All rights reserved. RealNetworks RealVideo 10 video codec Copyright (c) 1995-2004 RealNetworks, Inc. Portions Copyright (c) 1999-2003 Intel Corporation. All rights reserved. STLport (c) 1999, 2000 Boris Fomitchev. Copyright (c) 1994 Hewlett-Packard Company. Copyright (c) 1996,97 Silicon Graphics Computer Systems, Inc. Copyright (c) 1997 Moscow Center for SPARC Technology. Helix, RealAudio, RealNetworks, RealSystem, RealVideo, and SureStream are trademarks or registered trademarks of RealNetworks, Inc. All other companies or products listed herein are trademarks or registered trademarks of their respective owners. All rights reserved.
CONTENTS INTRODUCTION 1 How This Guide Is Organized... 1 Conventions Used in this Guide... 3 PART I: GETTING STARTED 1 INSTALLATION 7 System Requirements... 7 Licensing... 7 License File Location... 8 Evaluation Versions... 8 Installing on Windows... 8 Windows.Net RunTime... 9 Uninstalling the Program...10 Feature Availability...10 2 CODECS AND FILE FORMATS 11 Input Formats...11 Uncompressed Input Formats...11 Formats Requiring DirectX...11 Formats Requiring QuickTime...12 Output Choices...12 3GPP Release 5...13 3GPP Release 6...13 MP3...13 MPEG-4...13 RealMedia...14 Audio Codec Choices...14 AAC...14 AMR...18 MP3...20 RealAudio...21 Video Codec Choices...25 H.263...25 H.264...26 iii
Helix Mobile Producer User s Guide iv MPEG-4 SVP...27 RealVideo...28 Multi-Rate Streams...28 Rate Shifting...30 Encoding Requirements for Rate-Shifting Clips...30 Audience Template Modification...34 Switch Groups for 3GPP Clips...35 PART I: INPUTS AND OUTPUTS 3 INPUTS 39 Input Tab...39 Jobs and Job Files...40 Loading an Existing Job...41 Upgrading Older Job Files...41 File Input...41 Video Source File Size Limit...42 Capture Input...43 Input Duration...43 Audio Mixer...44 Audio Vendor Controls...44 Video Settings...45 Timeline Editor...47 Timeline Editing Controls...48 Source Properties...49 4 PREFILTERS 51 Audio and Video Preprocessing...51 Controls for Displaying and Enabling Prefilters...52 Audio Level...52 Audio Synchronization...53 Input Cropping...53 Cropping Controls...54 De-Interlace and Inverse-Telecine...55 Inverse-Telecine Prefilter...56 De-Interlace Prefilter...56 Video Noise...57 Low Noise Filtering...58 High Noise Filtering...58 Input Resize...58 Resize Controls...59 Maintain Aspect Ratio...60 High-Quality Resize...60
Contents Black-Level Correction...60 5 OUTPUTS 61 Output Tab...61 Single Outputs and Multiple Outputs...62 Outputs and Destinations...62 Outputs List...63 Output Selection...64 Output Name...65 Encoding Settings...65 Audience Control Buttons...65 Audience Templates...66 Audience Customization...67 Output File Destination...70 Archive Clips...70 Output File Extension...70 Progressive Download...71 Hint Track...71 Two-Pass Encoding...71 Output File Size...72 Metadata...72 Metadata Buttons...73 Metadata Entry...73 Metadata Titles and Values...74 PART II: ADVANCED AUDIO AND VIDEO SETTINGS 6 AUDIO CUSTOMIZATION 79 Audio Encoding Settings...79 Audio Codec...80 Channels...80 What is Stereo Surround?...81 What is Multichannel Audio?...83 Average Bit Rate...84 Sample Rate...84 What is a Sampling Rate?...84 7 VIDEO CUSTOMIZATION 87 Video Encoding Settings...87 Video Codec...88 Level...88 Video Average Bit Rate...89 Frame Rate...89 v
Helix Mobile Producer User s Guide vi Target Frame Rates...90 Factors that Affect RealVideo Frame Rates...91 Frame Size...92 Maintain Aspect Ratio...92 High-Quality Resize...93 Notes on Resizing...93 Encoding Complexity...95 Frame Rate Mode...95 8 ADVANCED VIDEO OPTIONS 97 Advanced Video Settings...97 Variable Bit Rate Video...98 VBR Compared to CBR...98 VBR Maximum Bit Rate...99 VBR Target Quality...100 Maximum Video Buffering (Preroll)...101 Maximum Key Frame Interval...102 What is a Key Frame?...102 Advantages of Lowering the Maximum Key Frame Interval...102 Costs of Lowering the Maximum Key Frame Time...103 Startup Latency Reduction During Broadcasts...103 PART III: BROADCASTING 9 BROADCAST FEATURES 107 Live Broadcasting...107 Broadcast Trial Runs...108 Types of Broadcasts...108 Helix Push Broadcast...109 Helix Advanced Push Broadcast...111 Helix Multicast Push Broadcast...113 RTP Push Broadcast...114 Helix Pull Broadcast...116 Server Broadcast Mode...118 Broadcast Transports...119 Encoder Redundancy...119 Forward Error Correction...121 Error Correction Percentage...121 Redundant Stream Protection...121 FEC Rates and Receiver Buffering...122 Archiving...122 Helix Mobile Producer Archiving...123 Helix Mobile Server Archiving...123
Contents Version 6 IP Addresses...123 10 SERVER DESTINATIONS 125 Server Destinations...125 Output Servers Buttons...125 Server Destination Templates...126 Helix Push Destination...127 Helix Push Basic Settings...128 Helix Push Advanced Settings...130 Helix Advanced Push Destination...132 Helix Advanced Push Basic Settings...132 Helix Advanced Push Advanced Settings...135 Helix Multicast Push Destination...137 Helix Multicast Push Basic Settings...137 Helix Multicast Push Advanced Settings...140 RTP Push Destination...141 RTP Push Settings...141 Helix Pull Destination...143 Helix Pull Basic Settings...144 Helix Pull Advanced Settings...147 PART IV: MONITORING 11 JOB MONITORING 151 Monitoring Tab...151 Starting a Job...152 Preview Section...152 Multiple Output Display...153 Audio Meters...153 Clipped Audio...154 Session Logging...155 Session Log Viewer...155 Logging Types...155 Settings Advisor...156 12 SNMP 157 SNMP Setup...157 SNMP Protocols...158 Authentication Protocols...159 Security Levels...159 Master Agent Configuration...160 Master Agent Configuration File...160 Master Agent Addresses and Ports...161 vii
Helix Mobile Producer User s Guide SNMP Security...162 Users...162 Security Level and Permissions...163 View Access Control Model...163 Users...164 Group Security...164 Groups...164 Views...165 Master Agent Start-Up...166 Master Agent on Windows...166 Management System...167 System Tree...168 Job Tree...169 Input Entry Tree...169 Output Entry Tree...170 Output Entry Stream Tree...170 Output Destination Files Tree...172 Output Destination Broadcast Servers Tree...172 PART V: APPENDIXES A PREFERENCES 177 Preferences File...177 File Location Preferences...177 Template Directories...178 Temporary Directory...178 Log File Preferences...179 Log File Location...179 Logging Settings...179 Log File Rolling...181 Output Preferences...182 Tabs for Output Types...183 Encoding Defaults...183 Output Directory and File Name Defaults...184 Output Server Defaults...185 Metadata Defaults...185 Signal Detection Preferences...185 Audio Watchdog Tests...186 Video Watchdog Tests...187 Message Suppression...189 Frame Analysis Period...189 SNMP Preferences...189 viii
Contents Enable SNMP...189 Address...190 Port...190 SNMP Traps...190 B AUDIENCE TEMPLATES 193 Predefined Audience Templates...193 Templates Included with Helix Mobile Producer...193 Customized Templates...194 16k Voice...195 28k Video...195 32k Music...196 56k Video...196 64k Music...197 65k Video...198 80k Video...198 96k Music...199 100k Video...200 128k MP3 Music...200 150k Video...201 300k Video...201 750k Video...202 1.5M Video...203 90% VBR Quality Video...204 C AUDIO AND VIDEO TIPS 205 Audio Capture...205 Source Media...205 Recording Equipment...205 Shielded Cables...206 Input Levels...206 Volume Levels for Live Broadcasts...206 Sampling Rates...206 Audio Optimization...207 DC Offset...207 Normalization...207 Dynamics Compression...208 Equalization...208 Video Recording...209 Video Staging...209 Scene Changes and Movement...209 Colors and Lighting...209 Video Output...210 ix
Helix Mobile Producer User s Guide Color Depth...210 Source Media Quality...210 INDEX 211 x
INTRODUCTION This guide explains how to use the graphical application of Helix Mobile Producer 13.1 to encode on-demand clips and live broadcasts. It describes the file formats and codecs that Helix Mobile Producer can use to create output. It also explains how to customize audio and video output to meet your viewers needs. For More Information: An additional guide, Helix Mobile Producer Command Line and Job File Reference, explains how to run Helix Mobile Producer 13.1 from the command line. It also describes the syntax of the job, audience, and server files used by the graphical application. How This Guide Is Organized The guide contains the following chapters. Chapter 1: Installation This chapter covers Helix Mobile Producer requirements and installation. Chapter 2: Codecs and File Formats This chapter explains the output file formats and codecs that Helix Mobile Producer supports. Chapter 3: Inputs As explained in this chapter, you can encode audio and video from a file or live input. Chapter 4: Prefilters By applying prefilters to the input, you can improve the audio and video quality as well as crop and resize a video. 1
Helix Mobile Producer User s Guide Chapter 5: Outputs This chapter explains how to define outputs and select audiences to control how the output is encoded. Chapter 6: Audio Customization In many instances, you ll want to refine the audio settings by customizing an audience definition. Chapter 7: Video Customization You can also customize the video settings of an audience to change, for example, the video codec used to encode the output. Chapter 8: Advanced Video Options This chapter explains advanced video customizations, such as defining the video preroll and creating a variable bit rate clip. Chapter 9: Broadcast Features Refer to this chapter for basic information about broadcasting a live stream. Chapter 10: Server Destinations When you are ready to broadcast a live event, you set up a server destination using the instructions in this chapter. Chapter 11: Job Monitoring This chapter explains how to start, stop, and monitor an encoding job. Chapter 12: SNMP Information in this chapter allows you to monitor Helix Mobile Producer using Simple Network Monitoring Protocol. Appendix A: Preferences This appendix explains how to modify the Helix Mobile Producer preferences to set overall encoding preferences. Appendix B: Audience Templates Audience templates define encoding settings such as the streaming bit rate. This appendix describes the predefined templates included with Helix Mobile Producer. Appendix C: Audio and Video Tips Good quality starts at the source. This appendix provides tips for creating high-quality audio and video input. 2
Introduction Conventions Used in this Guide The following table explains the typographical conventions used in this guide. Convention emphasis Notational Conventions Meaning Bold text is used for in-line headings, user-interface elements, URLs, and e-mail addresses. terminology Italic text is used for technical terms being introduced, and to lend emphasis to generic English words or phrases. syntax This font is used for fragments or complete lines of programming syntax (markup). syntax emphasis Bold syntax character formatting is used for program names, and to emphasize specific syntax elements. variables Italic syntax character formatting denotes variables within fragments or complete lines of syntax. [options] Square brackets indicate values that you may or may not need to use. As a rule, when you use these optional values, you do not include the brackets themselves. choice 1 choice 2 Vertical lines, or pipes, separate values that you can choose between.... Ellipses indicate nonessential information omitted from examples. 3
4 Helix Mobile Producer User s Guide
Part I: GETTING STARTED PART I This section explains how to install Helix Mobile Producer 13.1. It also covers the file formats and codecs that Helix Mobile Producer can use when encoding on-demand clips or live broadcasts.
Chapter 1: INSTALLATION CHAPTER 1 This chapter describes the hardware and software requirements for Helix Mobile Producer. It then explains how to install the product. System Requirements The following table lists the requirements for using Helix Mobile Producer 13.1. Helix Mobile Producer 13.1 System Requirements Hardware or Software Requirement Windows Version Windows XP SP3 Windows Vista Windows 7 Windows Server 2003 Windows Server 2008 Windows.Net runtime.net 2.0 (automatically installed if not present) Windows Installer CPU (minimum) RAM (minimum) Display Resolution version 3.0 (included with Windows XP SP2 and later) Pentium 4 or Core2Duo (recommended) 512 MB 1024x768 pixels or greater Note: When encoding multiple outputs, Helix Mobile Producer uses each processor core to encode an output. A fourcore processor can encode four outputs at the same time, for example. Licensing Helix Mobile Producer requires a license file to operate. This license is valid only for the machine on which you install Helix Mobile Producer. You use the 7
Helix Mobile Producer User s Guide Helix Mobile Producer installation program to generate a machine ID. Using this ID information, you can receive a valid license file from RealNetworks. License File Location The installation process copies the license file to the licenses directory under the main Helix Mobile Producer directory. On startup, Helix Mobile Producer reads this local copy of the license. The original license file is no longer required, but should be stored securely in case re-installation is required. Evaluation Versions Warning! You can read the XML-based license file using any text editor. However, making any changes to a license file invalidates the license and prevents Helix Mobile Producer from starting. To resolve this problem, contact RealNetworks for a valid license file. Evaluation versions of Helix Mobile Producer add a digital watermark to encoded video output. After you purchase Helix Mobile Producer, you will receive a new license file that removes the watermark. Installing on Windows To install Helix Mobile Producer, you need a binary installation file and a license file that enables the Helix Mobile Producer features. License files are delivered by e-mail after you receive your Helix Mobile Producer installer and generate your machine ID. Note: Your account must have Administrator privileges to install Helix Mobile Producer. For More Information: See System Requirements on page 7 for computer hardware and software requirements. To install Helix Mobile Producer onto Windows: 1. Close all running applications. 2. Double-click on the installation program icon. The installer unpacks the required files and opens the installation dialog. 3. Choose the product to install. 8
CHAPTER 1: Installation 4. Click Browse to navigate to the license file you received from RealNetworks. Then click Next. Note: If you have not received your license file, copy the 32- character machine ID shown by the installer. Then follow the instructions in the e-mail sent to you when you downloaded the Helix Mobile Producer installer. This generates a license file valid for the machine on which the installer is running. For More Information: If you have problems generating the machine ID or receiving a license, contact RealNetworks at http://www.realnetworks.com/support. 5. Read the license and click Accept to agree to its terms. 6. The next page allows you to choose the installation location. The default directory is under C:\Program Files\. You can change this directory by clicking the Browse button and selecting the new path. Note: The installer adds the installation directory to your Windows PATH variable. This allows you to run the commandline application from any directory on your machine. If you do not want to update the PATH value, remove the checkmark from the option. Tip: You must log out of Windows and log back in before a Path variable update takes effect. 7. In the final confirmation screen, verify your choices and click Install. Windows.Net RunTime On Windows, Helix Mobile Producer installs Microsoft.Net 2.0 SP1 if it is not present already. This installation does not affect other versions of the.net runtime. For example, you can have.net 3.0 and 3.5 installed on the same machine without conflict. Note: If the installer included the.net runtime, you will need to reboot your machine after the installation completes. 9
Helix Mobile Producer User s Guide Uninstalling the Program To remove Helix Mobile Producer from your machine, use the Add or Remove Programs dialog of the Windows Control Panel. The removal process deletes all files that were created by the installer. However, it does not remove any encoded outputs or job files created by Helix Mobile Producer. Feature Availability The following table explains the feature availability across the various versions of Helix Mobile Producer. Features not listed in this table are available in all versions. Feature Availability for Helix Mobile Producer Versions Feature Pro On-Demand Standard command-line application yes yes no SNMP monitoring yes yes no instances per machine 4 4 1 number of outputs for each encoding job 12 12 1 number of live broadcast streams per job unlimited 0 unlimited 10
Chapter 2: CODECS AND FILE FORMATS CHAPTER 2 This chapter explains the input and output formats, audio codecs, and video codecs that you can use with Helix Mobile Producer. Input Formats When creating content to encode, use uncompressed formats whenever possible. Otherwise, you compress the source once when you digitize it and again when you encode it in a streaming format. This double compression can decrease the image quality. Use a compressed source format only if Helix Mobile Producer supports the file as input. Uncompressed Input Formats Tip: Always keep copies of the video source files. You cannot convert encoded clips back to their original source formats or transcode them to other streaming formats. You can use the following file formats as input sources on any operating system that runs Helix Mobile Producer. Using these formats does not require installing other audio and video software: Uncompressed QuickTime 3, 4, and 5 (.mov) WAV audio files (.wav) Uncompressed AVI (.avi) Formats Requiring DirectX You can use the following file formats as inputs on Windows if you have DirectX 9.1 or higher installed: Compressed AVI (.avi) AIFF (.aif,.aifc,.aiff) 11
Helix Mobile Producer User s Guide QuickTime 2 (.mov) MPEG Formats Requiring QuickTime Note: Using MPEG-2 requires the DirectShow MPEG-2 reader. Tip: If you experience problems using MPEG inputs under DirectX, install QuickTime. For More Information: For the latest version of DirectX, go to http://www.microsoft.com. The following file formats can be used as sources on Windows if the latest version of QuickTime is installed: AU (.au,.snd,.ulw) Sound Designer II (.sd2) DV (.dif,.dv) QuickTime Flattened Movie (.mov,.qt) MPEG For More Information: For more about QuickTime, visit http://www.apple.com/quicktime/. Output Choices When you set up an encoding output, you first choose one of the supported output types: 3GPP Release 5, 3GPP Release 6, MP3, or RealMedia. Helix Mobile Producer constrains the available audio and video encoding options to values appropriate for the output type. For More Information: See Outputs List on page 63 for information about how you choose the output type. 12
CHAPTER 2: Codecs and File Formats 3GPP Release 5 3GPP Release 5 output is designed for older mobile media players. The format supports fewer video and audio codec choices than 3GPP Release 6. players: Media players compliant with the 3GPP R5 standard and the chosen audio and video formats. file type: 3GPP Release 5 (.3gp) audio: AMR-NB, AAC-LC video: H.263, MPEG-4 SVP multi-rate: no 3GPP Release 6 3GPP Release 6 output is designed for newer mobile media players. It supports a larger number of video and audio choices than 3GPP Release 5. players: Media players compliant with the 3GPP R6 standard and the chosen audio and video formats. file type: 3GPP Release 6 (.3gp) audio: AMR-NB, AMR-WB, AAC-LC, AAC+ video: H.263, H.264, MPEG-4 SVP multi-rate: yes (see Multi-Rate Streams on page 28) MP3 MP3 is the audio layer of the MPEG-1 standard. players: Any MP3-enabled player. file type: MP3 (.mp3) audio: MP3 video: none multi-rate: no MPEG-4 MPEG-4 is a general-purpose output format. players: MPEG media players compatible with the chosen audio and video formats. file type: MPEG-4 (.mp4), MPEG-4 audio (.m4a) 13
Helix Mobile Producer User s Guide audio: AMR-NB, AMR-WB, AAC-LC, AAC+ video: H.263, H.264, MPEG-4 SVP multi-rate: yes (see Multi-Rate Streams on page 28) RealMedia The RealMedia output is a proprietary RealNetworks format. players: Desktop versions of RealPlayer. Mobile devices based on Helix technology. file type: RealMedia (.rm,.ra,.rv,.rmvb) audio: RealAudio video: RealVideo multi-rate: yes (see Multi-Rate Streams on page 28) Audio Codec Choices The following are the audio codecs that you can choose. Note that all audio codecs encode at discrete bandwidths only. For example, RealAudio stereo music codecs provide 44 Kbps and 64 Kbps choices, but no bandwidths inbetween. For More Information: See Audio Encoding Settings on page 79 for details about how you choose an audio codec and select the audio bit rate. AAC Advanced Audio Coding (AAC) codecs create audio content at bit rates starting at 8 Kbps. Compared to MP3 audio, AAC provides superior quality. Note: Helix Mobile Producer does not support AAC encoding using the raw AAC format (.aac). Tip: AAC codecs support multiple sampling rates. You can have Helix Mobile Producer set the sampling rate, or you can choose a rate manually as described in the section Sample Rate on page 84. 14
CHAPTER 2: Codecs and File Formats AAC-LC Low-complexity AAC (AAC-LC) is the basic version of AAC compatible with any AAC-enabled media player. audio type: music channels: mono, stereo file types: 3GPP Release 5 and Release 6 (.3gp); MPEG-4 (.mp4,.m4a) video: Release 5: H.263, MPEG-4 SVP Release 6: H.263, H.264, MPEG-4 SVP MPEG-4: H.263, H.264, MPEG-4 SVP multi-rate: Release 5: no Release 6: yes MPEG-4: yes (see Multi-Rate Streams on page 28) AAC-LC Mono Codecs The following table lists the mono music codecs available with AAC-LC. AAC-LC Mono Music Codecs Bandwidth Codec Channels Sampling Rates 8 Kbps AAC 1 8000, 11025, 12000 10 Kbps AAC 1 8000, 11025, 12000 12 Kbps AAC 1 8000, 11025, 12000, 16000 16 Kbps AAC 1 8000, 11025, 12000, 16000, 22050, 24000 20 Kbps AAC 1 11025, 12000, 16000, 22050, 24000 24 Kbps AAC 1 11025, 12000, 16000, 22050, 24000, 32000 28 Kbps AAC 1 11025, 12000, 16000, 22050, 24000, 32000 32 Kbps AAC 1 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 40 Kbps AAC 1 16000, 22050, 24000, 32000, 44100, 48000 48 Kbps AAC 1 22050, 24000, 32000, 44100, 48000 56 Kbps AAC 1 22050, 24000, 32000, 44100, 48000 64 Kbps AAC 1 32000, 44100, 48000 80 Kbps AAC 1 32000, 44100, 48000 96 Kbps AAC 1 32000, 44100, 48000 112 Kbps AAC 1 32000, 44100, 48000 15
Helix Mobile Producer User s Guide AAC-LC Mono Music Codecs (continued) Bandwidth Codec Channels Sampling Rates 128 Kbps AAC 1 32000, 44100, 48000 160 Kbps AAC 1 32000, 44100, 48000 AAC-LC Stereo Codecs With AAC-LC, you can encode stereo audio at the following bit rates. AAC-LC Stereo Music Codecs Bandwidth Codec Channels Sampling Rates 24 Kbps AAC 2 11025, 12000, 16000, 22050, 24000 28 Kbps AAC 2 11025, 12000, 16000, 22050, 24000 32 Kbps AAC 2 11025, 12000, 16000, 22050, 24000 40 Kbps AAC 2 16000, 22050, 24000, 32000 48 Kbps AAC 2 22050, 24000, 32000, 44100, 48000 56 Kbps AAC 2 22050, 24000, 32000, 44100, 48000 64 Kbps AAC 2 32000, 44100, 48000 80 Kbps AAC 2 32000, 44100, 48000 96 Kbps AAC 2 32000, 44100, 48000 112 Kbps AAC 2 32000, 44100, 48000 128 Kbps AAC 2 32000, 44100, 48000 160 Kbps AAC 2 32000, 44100, 48000 192 Kbps AAC 2 32000, 44100, 48000 224 Kbps AAC 2 32000, 44100, 48000 256 Kbps AAC 2 32000, 44100, 48000 320 Kbps AAC 2 32000, 44100, 48000 AAC+ Also known as High Efficiency AAC (HE-AAC), AAC Plus includes the features of AAC-LC along with Spectral Band Replication (SBR). audio type: music channels: mono, stereo file types: 3GPP Release 6 (.3gp), MPEG-4 (.mp4,.m4a) 16
CHAPTER 2: Codecs and File Formats video: H.263, H.264, MPEG-4 SVP multi-rate: yes (see Multi-Rate Streams on page 28) AAC+ Mono Codecs For AAC Plus, you can encode single-channel (mono) audio at the following bit rates. AAC+ Mono Music Codecs Bandwidth Codec Channels Sampling Rates 8 Kbps AAC+ 1 16000, 22050, 24000, 32000 10 Kbps AAC+ 1 16000, 22050, 24000, 32000 12 Kbps AAC+ 1 16000, 22050, 24000, 32000 16 Kbps AAC+ 1 32000, 44100, 48000 20 Kbps AAC+ 1 32000, 44100, 48000 24 Kbps AAC+ 1 32000, 44100, 48000 28 Kbps AAC+ 1 32000, 44100, 48000 32 Kbps AAC+ 1 32000, 44100, 48000 40 Kbps AAC+ 1 32000, 44100, 48000, 96000 48 Kbps AAC+ 1 32000, 44100, 48000, 96000 56 Kbps AAC+ 1 32000, 44100, 48000, 96000 64 Kbps AAC+ 1 32000, 44100, 48000, 96000 80 Kbps AAC+ 1 96000 96 Kbps AAC+ 1 96000 128 Kbps AAC+ 1 96000 160 Kbps AAC+ 1 96000 AAC+ Stereo Codecs With AAC Plus, you can encode stereo audio at the following bit rates (Kbps). AAC+ Stereo Music Codecs Bandwidth Codec Channels Sampling Rates 24 Kbps AAC+ 2 32000, 44100, 48000 28 Kbps AAC+ 2 32000, 44100, 48000 32 Kbps AAC+ 2 32000, 44100, 48000 40 Kbps AAC+ 2 32000, 44100, 48000 17
Helix Mobile Producer User s Guide AAC+ Stereo Music Codecs (continued) Bandwidth Codec Channels Sampling Rates 48 Kbps AAC+ 2 32000, 44100, 48000 56 Kbps AAC+ 2 32000, 44100, 48000 64 Kbps AAC+ 2 32000, 44100, 48000, 96000 80 Kbps AAC+ 2 32000, 44100, 48000, 96000 96 Kbps AAC+ 2 32000, 44100, 48000, 96000 128 Kbps AAC+ 2 32000, 44100, 48000, 96000 160 Kbps AAC+ 2 96000 192 Kbps AAC+ 2 96000 224 Kbps AAC+ 2 96000 256 Kbps AAC+ 2 96000 AMR The Adaptive Multi-Rate speech codec (AMR) encodes voice data at a variety of speeds. Note: Helix Mobile Producer does not support AMR encoding using the raw AMR format (.amr). AMR-NB AMR-NB is the narrowband implementation of AMR. audio type: voice channels: mono file types: 3GPP Release 5 and 6 (.3gp); MPEG-4 (.mp4,.m4a) video: Release 5: H.263, MPEG-4 SVP Release 6: H.263, H.264, MPEG-4 SVP MPEG-4: H.263, H.264, MPEG-4 SVP multi-rate: Release 5: no Release 6: yes MPEG-4: yes (see Multi-Rate Streams on page 28) 18
CHAPTER 2: Codecs and File Formats You can encode AMR-NB at the following bit rates. AMR-NB Voice Codecs Bandwidth Codec Channels Sampling Rate 4.75 Kbps AMR-NB 1 8000 5.15 Kbps AMR-NB 1 8000 5.9 Kbps AMR-NB 1 8000 6.7 Kbps AMR-NB 1 8000 7.4 Kbps AMR-NB 1 8000 7.95 Kbps AMR-NB 1 8000 10.2 Kbps AMR-NB 1 8000 12.2 Kbps AMR-NB 1 8000 AMR-WB AMR-WB is the wideband implementation of AMR. audio type: voice channels: mono file types: 3GPP Release 6 (.3gp); MPEG-4 (.mp4,.m4a) video: H.263, H.264, MPEG-4 SVP multi-rate: yes (see Multi-Rate Streams on page 28) You can encode AMR-WB at the following bit rates. AMR-WB Voice Codecs Bandwidth Codec Channels Sampling Rate 6.6 Kbps AMR-WB 1 16000 8.85 Kbps AMR-WB 1 16000 12.65 Kbps AMR-WB 1 16000 14.25 Kbps AMR-WB 1 16000 15.85 Kbps AMR-WB 1 16000 18.25 Kbps AMR-WB 1 16000 19.85 Kbps AMR-WB 1 16000 23.05 Kbps AMR-WB 1 16000 23.85 Kbps AMR-WB 1 16000 19
Helix Mobile Producer User s Guide MP3 MP3 is a stand-alone audio format. Helix Mobile Producer encodes MP3 audio only as an MP3 file (.mp3). You cannot use MP3 audio as the soundtrack for a video stream. Use AAC instead. audio type: music channels: mono, stereo file types: MP3 (.mp3) video: none multi-rate: no MP3 Mono Codecs With MP3, you can encode single-channel (mono) audio at the following bit rates. MP3 Mono Music Codecs Bandwidth Codec Channels Sampling Rates 16 Kbps MP3 1 16000, 22050, 24000 24 Kbps MP3 1 16000, 22050, 24000 32 Kbps MP3 1 16000, 22050, 24000 40 Kbps MP3 1 16000, 22050, 24000 48 Kbps MP3 1 16000, 22050, 24000 56 Kbps MP3 1 16000, 22050, 24000 64 Kbps MP3 1 16000, 22050, 24000 80 Kbps MP3 1 32000, 44100, 48000 96 Kbps MP3 1 32000, 44100, 48000 112 Kbps MP3 1 32000, 44100, 48000 128 Kbps MP3 1 32000, 44100, 48000 160 Kbps MP3 1 32000, 44100, 48000 20
CHAPTER 2: Codecs and File Formats MP3 Stereo Codecs With MP3, you can encode stereo audio at the following bit rates (Kbps). MP3 Stereo Music Codecs Bandwidth Codec Channels Sampling Rates 40 Kbps MP3 2 16000, 22050, 24000 48 Kbps MP3 2 16000, 22050, 24000 56 Kbps MP3 2 16000, 22050, 24000 64 Kbps MP3 2 16000, 22050, 24000 80 Kbps MP3 2 32000, 44100, 48000 96 Kbps MP3 2 32000, 44100, 48000 112 Kbps MP3 2 32000, 44100, 48000 128 Kbps MP3 2 32000, 44100, 48000 160 Kbps MP3 2 32000, 44100, 48000 194 Kbps MP3 2 32000, 44100, 48000 224 Kbps MP3 2 32000, 44100, 48000 256 Kbps MP3 2 32000, 44100, 48000 320 Kbps MP3 2 32000, 44100, 48000 RealAudio You can use RealAudio as a stand-alone audio format, or as the audio track of a RealVideo clip. audio type: voice, music channels: mono, stereo, stereo-surround, multichannel file types: RealMedia (.rm,.ra,.rmvb) video: RealVideo multi-rate: yes (see Multi-Rate Streams on page 28) The following sections describe the RealAudio codecs available through Helix Mobile Producer. The codecs are listed in separate tables for voice, mono music, stereo music, stereo surround, and multichannel audio. 21
Helix Mobile Producer User s Guide RealAudio Voice Codecs Voice codecs produce the best results for voice-only audio input. RealAudio Voice Codecs Bandwidth Codec Channels Sampling Rate 5 Kbps RealAudio Voice 1 8000 6.5 Kbps RealAudio Voice 1 8000 8.5 Kbps RealAudio Voice 1 8000 16 Kbps RealAudio Voice 1 16000 32 Kbps RealAudio Voice 1 22050 64 Kbps RealAudio Voice 1 44100 Tip: The lowest-speed voice codec normally used to encode a RealAudio clip is 16 Kbps. The lower-speed codecs (5, 6.5, and 8.5 Kbps) are used as duress streams when the connection bandwidth drops in a multi-rate clip. They re also used to encode soundtracks for low-bandwidth RealVideo clips. RealAudio High-Response Codecs A high-response codec may have up to twice the range as a normal-response codec. This means it provides crisper sound and captures higher frequencies. High-response codecs are available for mono and stereo encoding. RealAudio High-Response Music Codecs Bandwidth Codec Channels Sampling Rate 20 Kbps RealAudio High Response 1 22050 20 Kbps RealAudio High Response 2 22050 32 Kbps RealAudio High Response 1 44100 32 Kbps RealAudio High Response 2 44100 44 Kbps RealAudio High Response 2 44100 Tip: A high-response codec may produce more distortion with voices and loud sounds such as drums. If you are encoding music with a diverse range of frequencies, use a high-response codec first. If you notice distortion, compare your results with a clip that uses a normal-response codec. 22
CHAPTER 2: Codecs and File Formats RealAudio Mono Music Codecs Use mono music codecs for encoding mono input or stereo input for mono output. RealAudio Mono Music Codecs Bandwidth Codec Channels Sampling Rate 6 Kbps RealAudio 1 8000 8 Kbps RealAudio 1 8000 11 Kbps RealAudio 1 8000 16 Kbps RealAudio 1 8000 20 Kbps RealAudio 1 11025 32 Kbps RealAudio 1 22050 44 Kbps RealAudio 1 44100 64 Kbps RealAudio 1 44100 RealAudio Stereo Music Codecs Use stereo music codecs for encoding traditional, two-channel stereo music. RealAudio Stereo Music Codecs Bandwidth Codec Channels Sampling Rate 12 Kbps RealAudio 2 11025 16 Kbps RealAudio 2 22050 20 Kbps RealAudio 2 22050 32 Kbps RealAudio 2 22050 44 Kbps RealAudio 2 44100 64 Kbps RealAudio 2 44100 96 Kbps RealAudio 2 44100 128 Kbps RealAudio 2 44100 160 Kbps RealAudio 2 44100 192 Kbps RealAudio 2 44100 256 Kbps RealAudio 2 44100 320 Kbps RealAudio 2 44100 23
Helix Mobile Producer User s Guide RealAudio Stereo-Surround Codecs Encode your audio using a stereo-surround codec if you know that the source audio is matrixed, multiple-channel sound, and you wish to preserve the multiple channels for your listeners. RealAudio Stereo-Surround Codecs Bandwidth Codec Channels Sampling Rate 44 Kbps RealAudio 2s 22050 64 Kbps RealAudio 2s 44100 96 Kbps RealAudio 2s 44100 128 Kbps RealAudio 2s 44100 160 Kbps RealAudio 2s 44100 192 Kbps RealAudio 2s 44100 256 Kbps RealAudio 2s 44100 320 Kbps RealAudio 2s 44100 For More Information: See What is Stereo Surround? on page 81. RealAudio 5.1 Multichannel Audio Codecs Use the multichannel RealAudio codecs if you know that the source audio includes multichannel sound, and your intended listeners have systems able to play all of the channels. RealAudio Multichannel Codecs Bandwidth Codec Channels Sampling Rate 96 Kbps RealAudio 5.1 44100 132 Kbps RealAudio 5.1 44100 184 Kbps RealAudio 5.1 22050 268 Kbps RealAudio 5.1 22050 For More Information: See What is Multichannel Audio? on page 83. 24
CHAPTER 2: Codecs and File Formats Video Codec Choices The following are the video codecs that you can choose. Note that video codecs encode at any bandwidth. For example, if your target bandwidth is 100 Kbps and you choose a 32 Kbps audio codec, the video track automatically encodes at 68 Kbps. For More Information: See Video Encoding Settings on page 87 for details about how to select a video codec. H.263 Helix Mobile Producer 13.1 encodes H.263 content using the 3GPP Release 5 or Release 6 format. rate control: constant bit rate (CBR), variable bit rate (VBR) profiles: 0 file types: 3GPP Release 5 and Release 6 (.3gp); MPEG-4 (.mp4) audio: Release 5: AMR-NB, AAC-LC Release 6: AMR-NB, AMR-WB, AAC-LC, AAC+ MPEG-4: AMR-NB, AMR-WB, AAC-LC, AAC+ multi-rate: Release 5: no Release 6: yes MPEG-4: yes (see Multi-Rate Streams on page 28) H.263 Encoding Levels Each level specifies a maximum frame rate and streaming bit rate. Each higher level typically includes more advanced encoding features. A device may support only certain levels, however. H.263 Levels Level Max. Bit Rate Video Resolutions Max. Frame Rate 10 64 Kbps 128 96 (SQCIF) 176 144 (QCIF) 15 20 128 Kbps 30 384 Kbps 128 96 (SQCIF) 176 144 (QCIF) 352 288 (CIF) 128 96 (SQCIF) 176 144 (QCIF) 352 288 (CIF) 30 30 (Table Page 1 of 2) 25
Helix Mobile Producer User s Guide H.263 Levels (continued) Level Max. Bit Rate Video Resolutions Max. Frame Rate 40 2 Mbps 45 128 Kbps 50 4 Mbps 128 96 (SQCIF) 176 144 (QCIF) 352 288 (CIF) 128 96 (SQCIF) 176 144 (QCIF) 352 240 or smaller 352 288 (CIF) or smaller Note: Customized video frame sizes are supported only with level 45 and higher. 30 15 60 50 (Table Page 2 of 2) H.264 Helix Mobile Producer 13.1 encodes content using the H.264 baseline profile (BP). The file format is 3GPP Release 6. rate control: constant bit rate (CBR), variable bit rate (VBR) profiles: Baseline file types: 3GPP Release 6 (.3gp), MPEG-4 (.mp4) audio: AMR-NB, AMR-WB, AAC-LC, AAC+ multi-rate: yes (see Multi-Rate Streams on page 28) H.264 Encoding Levels When encoding content, you can choose one of the levels listed in the following table. H.264 Encoding Levels Level Maximum Bit Rate Maximum Frame Size (Width x Height/256) 1 64 Kbps 99 1b 128 Kbps 99 1.1 192 Kbps 396 1.2 384 Kbps 396 1.3 768 Kbps 396 2 2 Mbps 396 2.1 4 Mbps 792 (Table Page 1 of 2) 26
CHAPTER 2: Codecs and File Formats MPEG-4 SVP H.264 Encoding Levels (continued) Level Maximum Bit Rate Maximum Frame Size (Width x Height/256) 2.2 4 Mbps 1620 3 10 Mbps 1620 3.1 14 Mbps 3600 3.2 20 Mbps 5120 (Table Page 2 of 2) Maximum Frame Size Calculation for H.264 The maximum frame size given in the preceding table is defined as the width in pixels multiplied by the height in pixels, divided by 256. Using this formula, the frame size of 352 288 results in a value of 396, requiring the use of any level from 1.1 through 2.1. Helix Mobile Producer 13.1 can encode an MPEG-4 simple profile video as a 3GPP Release 5 or 6 file. rate control: constant bit rate (CBR), variable bit rate (VBR) profiles: simple file types: 3GPP Release 5 and Release 6 (.3gp); MPEG-4 (.mp4) audio: Release 5: AMR-NB, AAC-LC Release 6: AMR-NB, AMR-WB, AAC-LC, AAC+ MPEG-4: AMR-NB, AMR-WB, AAC-LC, AAC+ multi-rate: Release 5: no Release 6: yes MPEG-4: yes (see also Multi-Rate Streams on page 28) The following table explains the MPEG-4 SVP levels available. MPEG-4 SVP Levels Level Max. Bit Rate Max. Frame Size Max. Frame Rate 0 64 Kbps 176x144 15 0b 128 Kbps 1920x1920 15 1 64 Kbps 1920x1920 30 2 128 Kbps 1920x1920 30 3 384 Kbps 1920x1920 30 27
Helix Mobile Producer User s Guide RealVideo Helix Mobile Producer encodes RealVideo clips using a RealAudio soundtrack. rate control: constant bit rate (CBR), variable bit rate (VBR) versions: 8, 9, 10 file types: RealMedia (.rm,.rv,.rmvb) audio: RealAudio multi-rate: yes (see Multi-Rate Streams on page 28) RealVideo 10 Codec The RealVideo 10 codec creates the highest quality RealVideo content. It offers improved visual quality over RealVideo 9 and RealVideo 8, especially with fastaction scenes and on-screen text. This is the default RealVideo codec used by Helix Mobile Producer. Note: Because RealVideo 10 performs more complex analysis of video data than earlier codecs, encoding may take more than twice the time required with RealVideo 9. Use a different RealVideo codec if you need faster encoding performance during broadcasts. RealVideo 9 Codec RealVideo 9 improves on RealVideo 8 with higher compression and improved visual quality. RealOne Player and later can play RealVideo 9 clips. Users who have older versions of RealPlayer are prompted to autoupdate when attempting to play a RealVideo 9 clip. RealVideo 8 Codec The RealVideo 8 codec is compatible with RealPlayer 8 and later. The video quality is not as high as with RealVideo 9 and 10, but encoding is faster. Additionally, RealVideo 8 requires fewer resources on the RealPlayer machine to decompress. This makes it suitable for the slower processors of mobile devices. Multi-Rate Streams With RealMedia, MPEG-4, or 3GPP Release 6 output, you can encode an audio-only stream or a video stream for multiple bandwidths. For example, 28
CHAPTER 2: Codecs and File Formats you can create a single 3GPP clip that streams at 20, 60, or 100 Kbps by choosing audiences that encode the same input at different bandwidths. When a viewer requests the clip, Helix Mobile Server determines which stream to use based on the available bandwidth, as shown in the following illustration. Clip Encoded for Multiple Bandwidths Note: Each stream that you add to a multi-rate clip increases the clip s file size. Streams for higher bandwidths increase the file size more than streams for lower bandwidth because highbandwidth encodings include more data. Tip: Including multiple audiences in an output increases the processing time needed to encode the stream. This can become a critical issue during live broadcasts because Helix Mobile Producer must encode all outputs in real-time. When running a broadcast, carefully choose the audiences included in the output. For More Information: The section Audience Templates on page 66 explains how to add multiple audiences to an output. See Live Broadcasting on page 107 for background about running a live broadcast. 29
Helix Mobile Producer User s Guide Rate Shifting A rate-shifting clip is a type of multi-rate clip that allows Helix Mobile Server to switch between different audience encodings to compensate for network conditions. The following figure illustrates a media session becoming bogged down because of excessive network traffic. Helix Mobile Server downshifts to a lower-bandwidth stream to prevent the presentation from stalling. When the congestion clears, Helix Mobile Server upshifts to a higher-bandwidth stream. Rate Control During Network Congestion Encoding Requirements for Rate-Shifting Clips The following conditions must exist to enable Helix Mobile Server and the media client to shift between audiences during a streaming session: The Helix Mobile Server rate control feature must be enabled and configured. For More Information: See Helix Mobile Server Administration Guide for information about this feature. The media client must support rate control. Most RealNetworks, Helixbased, and 3GPP Release 6 media clients can use rate control. The audiences encoded in the clip must be compatible. The following sections explain the requirements for enabling rate shifting when using multiple audiences. 30
CHAPTER 2: Codecs and File Formats Audience Streaming Rates When you create a rate-shifting clip, chose the audience streaming rates carefully. If rates are too close together, the media player may shift rates continuously, which creates a poor user experience. If rates are too far apart, the media player may not be able to shift rates at points where doing so would be advantageous. You may need to experiment with settings until you find audiences that work well for your viewers and your network. To start, follow these principles: Set the top streaming rate to approximately 80 percent of the ideal throughput. To target a 100 Kbps network speed, for example, set the topspeed audience to stream at 80 Kbps. Create a compatible audience that streams at approximately 80 percent of the top-speed audience: 65 Kbps, for example. The media player can shift to this audience if the network throughput slows. Helix Mobile Server Oversend Rate When you encode a multi-rate clip or broadcast for rate control, Helix Mobile Server allows upshifting to the next higher stream rate only if that rate is no more than a certain percentage above the current rate. This is called the maximum oversend rate. Suppose that the maximum oversend rate is 300 percent. For a clip encoded with 20, 60, and 100 Kbps streams, the media player can upshift through all of the streams because no rate is more than 300 percent of the preceding rate. If the clip contains just 20 and 100 Kbps streams, however, the media player cannot upshift from the 20 Kbps stream. For More Information: The maximum oversend rate is configurable for each Helix Mobile Server. For details, refer to the rate control chapters in Helix Mobile Server Administration Guide and Helix Mobile Server Configuration and Registry Reference. Streaming Rates for Mobile Networks The following are recommended media rates for multi-rate content intended to stream on mobile networks. These rate distributions ensure that no media rate is more than 140 percent of the next lower rate: GPRS rates (Kbps): 15, 20, 25, 30 UMTS rates (Kbps): 75, 85, 95, 105, 115 31
Helix Mobile Producer User s Guide Audio and Video Codecs In a rate-shifting 3GPP stream, you must encode all audiences using the same audio and video codecs. For example, you cannot encode one audience using H.263 video and AAC-LC audio while encoding another audience using H.264 video and AAC+ audio. Tip: When you encode SureStream RealMedia clips, all audiences must use the same RealVideo codec. They can use different versions of the RealAudio codec, however. For More Information: See Audio Codec on page 80 for information about audio codec selection. The section Video Codec on page 88 explains video codec selection. Audio Channels All audiences in a rate-shifting 3GPP clip must encode the same number of audio channels, typically either mono (one channel) or stereo (two channels). For More Information: See Channels on page 80 for details about selecting the number of audio channels. Audio Sample Rate In a rate-shifting 3GPP clip, all audiences must be encoded using the same audio sampling rate. Tip: If you select the default value Auto when setting the sampling rate, Helix Mobile Producer sets all audiences to the same sampling rate whenever possible. For More Information: See Sample Rate on page 84 for details about selecting a sampling rate for an audience. AMR Sampling Rates All AMR-NB streaming rates are compatible because they all use an 8000 Hz sampling rate. All AMR-WB rates are compatible because they all use a 16000 Hz sampling rate. 32
CHAPTER 2: Codecs and File Formats AAC Sampling Rates AAC codecs support multiple sampling rates. The following table summarizes the compatible streaming speeds for each AAC codec and channel combination. AAC Codec Compatibility Based on Common Sampling Rates Codec Channels Compatible Speeds Common Sampling Rate Reference AAC-LC AAC+ mono stereo mono stereo 8 32 Kbps 12000 Hz 12 40 Kbps 16000 Hz 16 56 Kbps 24000 Hz 24 160 Kbps 32000 Hz 24 56 Kbps 24000 Hz 40 320 Kbps 32000 Hz 8 64 Kbps 32000 Hz 40 160 Kbps 96000 Hz 24 128 Kbps 32000 Hz 64 256 Kbps 96000 Hz page 15 page 16 page 17 page 17 If you use the Auto setting when selecting audience sampling rates, the common sampling rates given in the preceding table do not necessarily indicate the sampling rates that will be used. For example, with AAC-LC mono audio in the 24 160 Kbps range (row 4), 32000 Hz is the lowest common denominator. If you encode audiences using rates only in the 64 160 range, Helix Mobile Producer may use a higher sampling rate (44100 or 48000 Hz) available at these speeds. Video Profile and Level When you use standards-based video codecs, set all audiences to use the same codec profile and level. Note: Do not choose Auto when setting the video level. Set the level for all audiences to the highest level required for the output. This is typically the level used by the highest-speed audience. For More Information: See Level on page 88 for details about selecting a video level for an audience. 33
Helix Mobile Producer User s Guide Video Frame Size Every audience in the output must use the same video frame size to enable the stream to shift bandwidths during streaming. For instance, a video stream cannot shift from a 100 Kbps audience at CIF dimensions (352x288 pixels) to a 65 Kbps audience at QCIF dimensions (176x144 pixels). All Audiences Must Encode Video at the Same Dimensions to Allow Rate Shifting Audience Template Modification For More Information: See Frame Size on page 92 for an explanation of how to set an output video s dimensions. To create rate-shifting clips, you may need to modify the predefined audience templates to satisfy the conditions described in the preceding sections. For example, suppose that you want to encode a rate-shifting clip that can stream at 65, 80, or 100 Kbps. Adding these predefined audience templates to your output creates the settings defined in the following table. Settings for a Rate-Shifting Clip Using Predefined Audiences Audience Audio Codec Channels Video Codec Profile Level 65k Video 12 Kbps AAC+ mono H.264 at 53 Kbps baseline auto 80k Video 16 Kbps AAC+ mono H.264 at 64 Kbps baseline auto 100k Video 20 Kbps AAC+ stereo H.264 at 80 Kbps baseline auto Although Helix Mobile Producer would encode the three chosen audiences into a single 3GPP output, a media player would not be able to shift between 34
CHAPTER 2: Codecs and File Formats the three audiences because of the audience incompatibilities. To enable rate shifting, you have to modify the audience templates. Tip: Once you modify the audiences, you can save them as new templates. See Template Creation on page 68. For More Information: For more about the predefined audiences, refer to Predefined Audience Templates on page 193. Audio Channel Incompatibility in Template Example In the preceding example, the first and second audiences encode mono audio while the third audience encodes stereo. To correct this, edit the third audience to encode mono instead of stereo. With the AAC+ mono codec, the 12, 16, and 20 Kbps settings are compatible because they share a 32000 Hz sampling rate option. For More Information: See Audio Encoding Settings on page 79. Video Level Incompatibility in Template Example All audiences in the preceding example use the auto setting for the video level. Depending on the output frame size, Helix Mobile Producer may choose level 1 for the first and second audiences. It would likely use level 1b for the third audience. To ensure compatibility, explicitly set the level for all audiences to 1b or 1.1 depending on the frame size. Switch Groups for 3GPP Clips For More Information: See Video Encoding Settings on page 87. To accommodate rate shifting with low-bandwidth and high-bandwidth audiences, you can encode a single 3GPP clip with a set of switch groups, each of which contains a set of audiences that allows rate shifting within the group. The following figure illustrates a single 3GPP clip that has two switch groups. In the first group, all audiences encode video at QCIF dimensions (176x144 pixels). In the second group, all audiences encode video at CIF dimensions (352x288 pixels). 35
Helix Mobile Producer User s Guide Switch Groups Containing Rate-Shifting Audiences As long as all audiences in each switch group meet the criteria described in Encoding Requirements for Rate-Shifting Clips on page 30, media players can switch between the audiences within a group. For example, a media player with a low-bandwidth connection can switch between any of the audiences in the first group. A media player with a high-bandwidth connection can switch between any of the audiences in the second group. Tip: To create these groups, you simply add audiences to the output as described in the section Audience Templates on page 66. Helix Mobile Producer automatically sorts the audiences into switch groups based on their compatibility. 36
Part I: INPUTS AND OUTPUTS PART I The following chapters explain the basics of how to use Helix Mobile Producer to select media inputs and define encoded outputs.
Chapter 3: INPUTS CHAPTER 3 The first step for encoding a clip or live broadcast is choosing the input source. This chapter describes how to select a file or live capture device as the input. It also explains how to save your encoding settings to reuse later. Input Tab Click the Input tab to display the controls that allow you to select content and apply prefilter options. Input Tab The controls on the the Input tab allow you to do the following: Start a new job (see Jobs and Job Files on page 40). 39
Helix Mobile Producer User s Guide Select a file to encode (see File Input on page 41). Capture live input (see Capture Input on page 43). Select a portion of a video to encode (see Timeline Editor on page 47). View properties of the input streams (see Source Properties on page 49). Modify the input using prefilters (see Audio and Video Preprocessing on page 51). Note: The settings advisor may also display above the Input tab if Helix Mobile Producer detects problems with the encoding settings. The section Settings Advisor on page 156 explains this feature. Jobs and Job Files Whenever you use Helix Mobile Producer, a job records the encoding settings you ve selected. You can view the job syntax at any time by clicking the XML tab. If you save the job to a job file (file extension.rpjf.), you can later use your encoding settings for another clip or broadcast. To save a job file, select File>Save, Ctrl+s, or the Save button on the toolbar. If no job file exists for the job, use the save dialog to choose the job file name and location. You can also choose File>Save Job As to save a modified job file under a new name. If you want to start over, create a new job by selecting File>New, Ctrl+n, or the New button on the toolbar. Warning! Creating a new job resets any encoding information already entered into the graphical interface. Tip: You can create a job file that defines outputs and encoding settings, but no inputs. This allows you to create a library of job profiles to use later. Note: Helix Mobile Producer provides predefined job files in the samples/jobs subdirectory under the Helix Mobile Producer main directory. For More Information: For an explanation of the job file syntax, refer to Helix Mobile Producer Command Line and Job File Reference. 40
CHAPTER 3: Inputs Loading an Existing Job To open an existing job file, select File>Open, Ctrl+o, or the Open button on the toolbar. Use the browse dialog to navigate to the job file on your file system. Note the following about reusing a job file: Helix Mobile Producer records any changes you make to the open job, but does not write the changes into the job file until you save the job. Relative paths in job file values are relative to the directory that holds the job file. Double-check the audience settings for the job to ensure that you are encoding the output properly. For More Information: See Encoding Settings on page 65. A job file can record information specific to a certain clip (metadata). You may need to change this information each time you encode a new clip using an existing job file. Upgrading Older Job Files For More Information: See Metadata on page 72. Helix Mobile Producer 13.1 uses the job file 3.0 format. The older, version 2.0 job file format used with earlier versions of Helix Mobile Producer and RealProducer is not compatible with the 3.0 format. However, Helix Mobile Producer 13.1 automatically updates these older job files to the new 3.0 format. Warning! Once existing job files are updated to the 3.0 format, they are no longer compatible with earlier versions of Helix Mobile Producer and RealProducer. File Input Source files are digitized media files on a hard disk, network, CD, or DVD. To encode output from an existing source, click the File radio button under Input Source on the Input tab. Then click the Open button next to the Input File field to navigate to the file. After a video file loads, the video preview region of the Input tab displays the video s first frame. 41
Helix Mobile Producer User s Guide Input File Video Source File Size Limit Tip: The Input File drop-down records the locations of previous inputs. Click the drop-down arrow to select from these files. For More Information: You can set a video clip s starting and ending points using the timeline editor. See Timeline Editor on page 47. Some computer file systems limit a single file to 2 GB (2048 MB) in size. At a 320-by-240 size and 15 fps, this is about 9.5 minutes of uncompressed, digitized video. Certain video production programs support the OpenDML (AVI 2.0) standard, which allows the creation of files larger than 2 GB. Helix Mobile Producer may be able to accept a video source file larger than 2 GB as input, depending on the production software used to create the file. If you plan to produce long videos or videos with large dimensions, check whether or not your video production software is limited to a 2 GB output file size. If it is not limited to 2 GB, create a video file larger than 2 GB and test it to determine if Helix Mobile Producer can accept the file as input. Disk Space Requirements for Video Capture Use the following formula to calculate the approximate size in megabytes of a digitized video file: (pixel width) x (pixel height) x (color bit depth) x (fps) x (duration in seconds) 8,000,000 Suppose you want to capture a three-minute video at 15 frames per second, with 24-bit color, in a window that is 320 by 240 pixels. As you can see from the following equation, your digitized source file would be approximately 622 MB: (320) x (240) x (24) x (15) x (180) / 8,000,000 = 622 Megabytes 42
CHAPTER 3: Inputs If necessary, you can conserve disk space by decreasing the clip dimensions or lowering the frame rate, or both. Capture Input To encode live audio or video from a capture card, click the Device radio button under Input Source on the Input tab. Next, select the audio or video device to capture from in the Audio or Video drop-down menu. Input Device Input Duration Tip: If you use a single video capture card to capture both audio and video, choose that card in both the Audio and Video menus. Note: If the video capture card is functioning, the video preview region of the Input tab displays the real-time input. Audio input is not rendered, however. For More Information: If you plan to broadcast the captured input, refer to Live Broadcasting on page 107. The section Video Recording on page 209 provides tips for shooting a video. By default, Helix Mobile Producer stops encoding the input when the job is stopped manually. Check the Duration box to set a specific point in the stream at which encoding ends. Then enter the time in days (d), hours (h), minutes (m), and seconds (s). Note: This stream duration is measured from the time at which Helix Mobile Producer starts the encoding process. 43
Helix Mobile Producer User s Guide Audio Mixer To launch your operating system s audio mixer, click and hold the Audio button. Then choose Recording Mixer from the pop-up menu. Audio Mixer Context Menu This opens the recording control window in which you can specify how audio is mixed. Audio Mixer Audio Vendor Controls Note: Audio mixer controls are specific to the sound card and operating system. If you want to adjust the sound recording capabilities of your audio device, click and hold the Audio button. Then choose Vendor-Provided Controls from the pop-up menu. 44
CHAPTER 3: Inputs Audio Vendor Control Context Menu This opens the control dialog specific to your audio card and operating system. Audio Control Dialog (Specific to Vendor) Video Settings For More Information: See also Audio Capture on page 205 and Audio Optimization on page 207. To adjust the video recording capabilities, click and hold the Video button next to the video device name. This displays a submenu of available settings dialogs, which can vary with each capture device. Video Vendor Control Context Menu 45
Helix Mobile Producer User s Guide This opens the control dialog specific to your audio card and operating system. Video Control Dialog (Specific to Vendor) Video Capture Dimensions For most video capture cards, you can select the video dimensions in pixels. The input dimensions should be at least as large as the dimensions of your largest output. For More Information: The section Frame Size on page 92 explains the common output dimensions that you can set. Full-Screen Capture A common capture size is 320 pixels wide by 240 pixels high. If you have a fast computer, you can capture full-motion video at the full-screen size of 640 by 480 pixels. Do this only if all of the following are true: Your clips will stream at broadband speeds of 250 Kbps or higher. Your encoded clips will be larger than 320 pixels by 240 pixels. You have a video workstation capable of digitizing full-motion, full-screen video. Consumer-oriented PCs typically cannot handle this large of a load. Cropping and Resizing Whenever possible, capture video at the same dimensions and aspect ratio as your intended outputs. This eliminates the need to crop and resize the video during encoding, which can require significant processing power. If necessary, however, you can crop and resize during the encoding process: 46
CHAPTER 3: Inputs The section Input Cropping on page 53 explains how to crop the video input. See Input Resize on page 58 for a description of how to resize the input video. Each output can be resized independently. See Frame Size on page 92 for details. Video Capture Frame Rate For most lower-bandwidth clips and broadcasts, capture at 15 frames per second (fps). This is the maximum, recommended frame rate for outputs lower than 150 Kbps. At speeds higher than 150 Kbps, you can encode up to 30 fps. In these cases, you may want to capture the source input at 30 fps. Timeline Editor After you load an input video file, you can use the timeline editor to set starting and ending points for the encoding job. You can use the timeline editor, for example, to encode only the first minute from a two-minute input file. If you do not make changes using the timeline editor, the entire source file is encoded. Timeline Editor 47
Helix Mobile Producer User s Guide Timeline Editing Controls Tip: The Mark-In and Mark-Out boxes of the File Input section indicate the selected start and stop times in days (d), hours (h), minutes (m), and seconds (s). The Mark-Out time is measured from the input file s normal beginning, not from the Mark-In time. See File Input on page 41. Note: The timeline editor does not play the video or render the audio. The controls on the timeline editor allow you to set the starting and ending points for encoding. The editor displays the timline section to be encoded as a green line. Back to Start. Cick to move the currently displayed position to the input clip s normal starting point. Back 1 Frame. Click to move the currently displayed position back one frame. You can also click the left arrow on the keyboard. Current Position. Shows the position of the frame currently displayed in the editor. Drag to change the displayed frame. Forward 1 Frame. Click to move the currently displayed position forward one frame. You can also click the right arrow on the keyboard. Forward to End. Click to move the currently displayed position to the input clip s normal end. Start Point for Encoding. Drag to set the timeline position where encoding begins. End Point for Encoding. Drag to set the timeline position where encoding ends. Tip: If you open a new video clip as the source, the encoding markers retain their positions unless the new clip is shorter than the selected timespan. Note: Helix Mobile Producer may adjust the starting and ending points slightly to align them with input video frames. 48
CHAPTER 3: Inputs Source Properties After you select an input file or capture device, the Source Properties region of the Input tab displays the input s audio and video properties. Input Properties Information displayed for the source properties includes the following: duration of the input source (file only) name of the input (file only) audio format number of audio channels audio bit depth video format video frame rate in frames per second (fps) video frame size in pixels 49
50 Helix Mobile Producer User s Guide
Chapter 4: PREFILTERS CHAPTER 4 Prefilters modify the input stream before it is encoded. They can crop and resize the input as well as improve the audio and video quality. However, some prefilters can significantly increase the encoding time, which may be problematic during a live broadcast. Audio and Video Preprocessing Prefilters appear in the Audio/Video Preprocessing section of the Input tab. All prefilters are optional. Prefilter Settings 51
Helix Mobile Producer User s Guide Controls for Displaying and Enabling Prefilters The following controls appear to the left of each prefilter: Controls Hidden A summary of the prefilter settings (if any) appears to the right. Click to display the full controls. Controls Displayed Click to hide the controls. Prefilter Disabled Any previous settings are retained for this job, but the prefilter will not be used during encoding. Click to enable the prefilter. Prefilter Enabled Click to disable the prefilter. Audio Level The audio level control allows you to set a decibel gain from +12 (amplify the audio) to -12 (attenuate the audio). medium: Audio use: Boost, decrease, or mute the audio input level. impact: Negligible. Safe for broadcasts. To change the audio input level, click and drag the slider control. You can also type a value directly into the text box or click the arrows. Click Mute Input Audio if you want to silence the audio track of a video. Audio Level Controls Tip: A value of 6 doubles the audio level while a value of 12 quadruples it. A value of -6 reduces the level to half, while -12 reduces it to a quarter. Note: When you amplify the audio signal, Helix Mobile Producer dynamically compresses the audio range if the output signal becomes overmodulated. This way, the output audio is never clipped, even at maximum gain. 52
CHAPTER 4: Prefilters Audio Synchronization The audio synchronization prefilter corrects audio shift when audio input is out of synchronization with a video s visual track. medium: Audio use: Shift audio timing to synchronize it with the video track. impact: Negligible. Safe for broadcasts. In the prefilter controls, select Advance or Delay. Then set the number of seconds for the advance or delay by typing the value in the text box or clicking the arrows. Audio Synchronization Controls Tip: Some third-party video editing tools provide information about how much delay exists between audio and video. Input Cropping The cropping prefilter reduces the size of the input by cropping out unwanted portions along the video edges. This can reduce the amount of data encoded and boost clip quality. medium: Video use: Reduce the size of the input by cropping along the video edges. impact: Small. Safe to use with live broadcasts. Tip: If you are encoding a letterbox clip (16:9 aspect ratio) for display on computer screens that use a traditional 4:3 aspect ratio, crop out the black bars at the top and bottom of the video image. This helps to improve the video quality. For More Information: See also Cropping and Resizing to Change Aspect Ratios on page 93 for an example of how to alter an input clip s aspect ratio. 53
Helix Mobile Producer User s Guide Cropping Controls To crop a video, click the Input Cropping box. Input Cropping Controls You can select the cropped area three ways: Click a text box and type the new value manually. Click the arrows beside each text box to select a value. Click and drag the yellow lines in the preview window. Cropping Values The following values appear in the cropping control text boxes. Left Pixels from the left edge where cropping occurs. You can specify up to 32 pixels less than the total width. Top Pixels from the top edge where cropping occurs. You can specify up to 32 pixels less than the total height. Right Pixels from the right edge where cropping occurs. You can specify up to 32 pixels less than the total width. Bottom Pixels from the bottom edge where cropping occurs. You can specify up to 32 pixels less than the total height. Note: If the width or height of the cropped video is not a multiple of 4, the next lower multiple is used. For example, a value of 162 pixels for width or height is adjusted to 160 pixels. Cropping Preview Yellow lines appear on the input preview to indicate the cropped section. You can click and drag a line to set a new cropping position. Click inside the selected area to drag the entire cropping section around the video frame. Areas that will not be encoded are grayed out. 54
CHAPTER 4: Prefilters Cropped Video Region De-Interlace and Inverse-Telecine The de-interlace and inverse-telecine prefilters remove artifacts that may occur in videos larger than 320x240 pixels and NTSC-format video transferred from film, respectively. De-Interlace and Inverse-Telecine Controls If you need to use these prefilters, click the Automatic radio button to have Helix Mobile Producer apply the prefilters only if needed. To use just one of the prefilters, check the Manual button and select the prefilter (one or both) you want. 55
Helix Mobile Producer User s Guide Inverse-Telecine Prefilter Use the inverse-telecine prefilter when encoding NTSC video that was transferred from film and has a frame rate of 30 fps. The prefilter strips out redundant fields, letting Helix Mobile Producer focus on image quality. medium: NTSC video use: Remove redundant frames. impact: Small. What is Inverse-Telecine? Film is usually shot at 24 frames per second (fps), whereas the NTSC standard for video is 30 fps. The film-to-video conversion (called telecine ) duplicates some fields to increase the frame rate from 24 to 30. American films transferred to video, for example, undergo the telecine process. Applying the inverse-telecine prefilter strips out the redundant frame information, resulting in a higher-quality streaming video. De-Interlace Prefilter Tip: PAL video does not require the inverse-telecine prefilter because the conversion from 24 fps film to 25 fps PAL does not use the telecine process. The de-interlace prefilter removes jaggedness in interlaced NTSC or PAL video. medium: NTSC or PAL video use: Remove jaggedness from video. impact: Small. Not used if the video is less than 240 lines high. Generally safe to leave on for all video input. What is De-Interlacing? A video camera running at 30 frames per second captures the odd-numbered lines of a field in 1/60th of a second and the even-numbered lines in the next 1/60th of a second. It then interlaces the two to create the frame. Because half the field s lines are captured a fraction of a second later than the other half, fast-moving objects may appear jagged. This is the result of the object advancing slightly within 1/60th of a second. 56
CHAPTER 4: Prefilters Tip: Typical source video for standard-resolution television is 480 lines high. If you digitize the video with a video capture card that captures at 240 lines high or less, the card throws out either the odd or the even lines, de-interlacing the video during the capture process. De-Interlacing Example The following figure illustrates jaggedness in a detail of an interlaced video. Jaggedness in an Interlaced Video (detail) The next figure shows the jaggedness removed using the de-interlace prefilter. Jaggedness Removed with the De-interlace Prefilter (detail) Video Noise Video noise is a by-product of poor quality in the video production process. The noise reduction prefilter can help reduce this distortion. medium: Video 57
Helix Mobile Producer User s Guide use: Eliminate visual artefacts. impact: Small for Low level. Large for High level (not recommended for broadcasts). Use the drop-down of the noise controls to choose the Low or High level. Video Noise Controls Low Noise Filtering Tip: The source of the noise is typically hardware, such as the video tape, capture card, or camera. Using professional-quality equipment and media helps eliminate video noise at the source. If your source video has high quality, you won t need the noise reduction prefilter. For More Information: See Video Recording on page 209 for tips on creating high-quality source video. If your video input has a small amount of noise, use the Low setting. Because this has a small impact on processing power, the Low noise level is generally safe to leave on for all jobs. It s better practice, though, to use it only when necessary because it may slightly degrade high-quality input video. High Noise Filtering If noise greatly distorts the source video, try the High noise setting. This setting may remove slight details, making highly textured surfaces look more smooth, which may not be desirable in all cases. Warning! The High noise setting can add 30% or more to the encoding time. Input Resize The resizing prefilter allows you to resize the video before you encode it. medium: Video 58
CHAPTER 4: Prefilters Resize Controls use: Resize the video dimensions. impact: Small for fast resize. High for high-quality resize (not recommended for broadcasts). Tip: If the input video has a non-square pixel aspect ratio (such as DV), you can use the resizing prefilter to shorten the video horizontally. This converts non-square pixels to square pixels. For More Information: When you encode multiple outputs, you can set the video dimensions for each output separately. See Frame Size on page 92. Use the resize controls to specify predefined or customized video dimensions. The video preview window on the Input tab indicates the new video size. Resize Controls In the drop-down, you can set one of the following values (WidthxHeight in pixels): Custom Set pixel width and height using the Width and Height menus. 128x96 (SQCIF) Sub-Quarter Common Intermediate Format. 176x144 (QCIF) Quarter Common Intermediate Format. 352x288 (CIF) Common Intermediate Format. 640x240 (HVGA) Half VGA. 320x240 (QVGA) Quarter VGA. Note: The minimum size for a resized video is 32-by-32 pixels. The width and height must be multiples of 4, such as 160 pixels, 240 pixels, and so on. Tip: If you plan to create multiple outputs at different sizes, set the input size to the largest output size. Then scale other 59
Helix Mobile Producer User s Guide Maintain Aspect Ratio outputs smaller as needed. The section Frame Size on page 92 explains how to resize a specific output. When the Maintain Aspect Ratio box is checked, you can enter just the height or width value for the resize. Helix Mobile Producer automatically calculates the other value to maintain the ratio between the two dimensions. By unchecking this box, you can enter width and height values independently. High-Quality Resize Warning! If you do not maintain the aspect ratio, the output may appear distorted. Selecting a high-quality resize results in a superior image. However, it may double or triple the encoding time because it carefully analyzes the video source before resizing. Warning! Because of its potentially high impact on encoding performance, the high-quality resize prefilter is not recommended for live broadcasts. Black-Level Correction Black-level correction improves a video s contrast by making near-black pixels pure black and near-white pixels pure white. This improves the video s appearance if it looks washed out because of a lack of contrast. medium: Video use: Improve visual contrast. impact: Small. Generally safe to leave on for all video input. Note: You need only to enable the black-level prefilter to use it. It has no other controls. Tip: Applying this prefilter to the input can improve codec efficiency by increasing the number of pixels that have the same color value, allowing for greater compression. 60
Chapter 5: OUTPUTS CHAPTER 5 Output options allow you to configure encoding settings and send the stream to a file, a broadcast server, or both. Output Tab Click the Output tab to display the controls that allow you to define your encoding outputs and destinations. Output Tab The controls on the Output tab allow you to do the following: Set up one or more outputs (see Outputs List on page 63). Define encoding settings for each output using audiences (see Encoding Settings on page 65). Save each output to a file (see Output File Destination on page 70). 61
Helix Mobile Producer User s Guide Deliver an output stream to a broadcast server (see Server Destinations on page 125). Add clip information to each output (see Metadata on page 72). Note: The settings advisor may also display above the Output tab if Helix Mobile Producer detects problems with the encoding settings. The section Settings Advisor on page 156 explains this feature. Single Outputs and Multiple Outputs Each output defines a set of encoding options such as the file type and which audio and video codecs are used. One output may suit all of your target media players. However, you can also define multiple outputs. For example, you might use one output to encode the input at 352x288 pixels using the H.264 video codec. Another output can encode the same input at 176x144 pixels using the H.263 video codec. Outputs and Destinations Note: Each output you add to a job increases the processing time required during encoding. The data for each output is delivered to at least one destination. There are two types of destinations: a file destination and a broadcast server destination. For example, to broadcast a live event while simultaneously writing the stream to an archive file, you set up both a server destination and a file destination. For each encoding job, Helix Mobile Producer can encode one or more outputs, and each output can have one or more destinations. 62
CHAPTER 5: Outputs Multiple Outputs Written to Multiple Destinations Tip: Outputs define what you are encoding. That is, the output sets the file type, screen size, streaming bit rate, and codecs used. A destination defines where the output is delivered, either to a file or to a broadcast server. For More Information: See Output File Destination on page 70 and Server Destinations on page 125. Outputs List For each encoding job, you define at least one output by adding the output to the Outputs List. Outputs List 63
Helix Mobile Producer User s Guide You add and delete outputs from the job using the buttons at the top of the Outputs List: Add a new output to the Outputs List. Delete the selected output. Output Selection Clicking the Add button the type of output. displays a context menu allows you to choose Outputs List Context Menu Using the context menu, select one of the following output types: RA/RV RealMedia single-rate or multi-rate (SureStream) output. 3GPP R5 3GPP Release 5 single-rate output. 3GPP R6 3GPP Release 6 single-rate or multi-rate output. MP4 MP3 MPEG-4 single-rate or multi-rate output. MP3 single-rate audio output. The output type you select affects the information that you can enter in the other sections of the Output tab. For example, selecting 3GPP R5 restricts output options to the audio and video codecs supported by 3GPP Release 5 standard. Note: The other sections on the Output tab display the information only for the selected output. You can select and edit only one output at a time. When you encode the job, however, all outputs are encoded simultaneously. 64
CHAPTER 5: Outputs Output Name When you add an output, Helix Mobile Producer creates a default name for the output in the Outputs List. Change the name by clicking the default name in the Outputs List and entering a new name. Note: Output names are for your convenience in identifying the output. They do not affect the encoding process. Choose names that clearly identify each output s intended viewers. Encoding Settings In the Encoding Settings section of the Output tab, you set the basic encoding parameters by adding one or more audiences to the selected output. Encoding Settings Section (Multi-Rate 3GPP Release 6 Clip) Audience Control Buttons Note: If you are encoding multiple outputs, highlight the correct output in the Outputs List before choosing an audience. You can add audiences to one output at a time. The buttons to the right of the Encoding Settings section allow you to manage the audience templates that define the output s encoding parameters: Add an audience template to the selected output. Edit the encoding settings for the selected audience. Save As a new audience template. Delete the selected audience from the output. 65
Helix Mobile Producer User s Guide Audience Templates Each audience defines a set of encoding parameters, such as the streaming bit rate and the codecs used to compress the stream. Click the Add button to add an audience to the output. The pop-up dialog displays the available audience templates. Audience Template Pop-Up Select the audience name and click Add to Job. The Encoding Settings section then displays the audience, listing its encoding properties. Tip: Using the preferences, you can select audiences that are used automatically whenever you create an output of a certain type. See Output Preferences on page 182. For More Information: The section Predefined Audience Templates on page 193 lists the properties of the predefined audience templates included with Helix Mobile Producer. Multiple Audiences for Multi-Rate Clips A RealMedia, MPEG-4, or 3GPP Release 6 output can include multiple audiences to create a multi-rate streaming clip or broadcast. To select more than one audience, hold down the Ctrl key and click the audience names. You can also add each audience to the output one at a time. 66
CHAPTER 5: Outputs Tip: Including multiple audiences in a clip intended solely for downloading increases the file size unnecessarily and does not improve the playback quality. For More Information: For background on using multiple audiences to enable rate shifting during streaming, refer to Multi-Rate Streams on page 28. Template Filtering by Output Type You can use the Templates of Output Type drop-down to switch between audience templates. Or choose All to show all templates. For all other output types, this drop-down displays only the audience templates appropriate for the selected output. Name Matching You can filter the templates shown in the audiences pop-up by typing a text string in the Where name matches field. Only audience names that contain the text then display. For example, enter 80 to show the audiences designed to stream at 80 Kbps. Audience Customization Tip: Text matching is not case sensitive. In many cases, you may need to modify the settings for an audience added to an output. For instance, you may want to increase the streaming bandwidth, or encode a soundtrack using a different audio codec. To modify an audience, highlight the audience name in the Encoding Settings section and click the Edit button. This displays the Encoding Settings pop-up. 67
Helix Mobile Producer User s Guide Audience Encoding Settings Pop-Up Audience Properties In the Encoding Settings pop-up, you can change the following values: The template name in the Name field. Audio options such as the audio codec, audio bit rate, and output sampling rate. (See Audio Encoding Settings on page 79.) Video options such as the video codec, video bit rate, and output clip dimensions. (See Video Encoding Settings on page 87.) Advanced video options such as the maximum preroll and the use of variable bit rate (VBR) encoding. (See Advanced Video Settings on page 97.) Template Creation Customizing an audience s properties applies the changes to the current job only. It does not modify the original audience template. To preserve the customizations so that you can apply them quickly to other jobs, highlight the audience name in the Encoding Settings list. Then click the Save As button. 68
CHAPTER 5: Outputs Save Audience Template In the Save as Template pop-up, do one of the following: To update the original template with the new settings, click Save and confirm that you want to replace the existing template. To create a new template, enter a new name in the Template Name field. Then click Save. Template Deletion Tip: If you already entered a new name in the Name field of the Encoding Settings pop-up, Helix Mobile Producer prompts you to save the template under that name. Note: Templates are stored in the audiences subdirectory of the Helix Mobile Producer installation directory using the template name along with the file extension.rpad. For More Information: For more about audience file syntax, refer to Helix Mobile Producer Command Line and Job File Reference. Do the following to delete an audience template permanently: 1. Click the Add button in the Encoding Settings section of the Output tab to display the audience template pop-up (see Audience Templates on page 66). 2. In the list of templates, select the audience that you want to delete. 3. Click the Delete button on the right side of the audience pop-up. 4. Confirm the deletion. Tip: If the audience is still included in the output, highlight the template name in the Encoding Settings list and click the Delete button. This removes the audience settings from the job. 69
Helix Mobile Producer User s Guide Output File Destination Output File Section In the Output File section, you can create a file destination for the selected output. Click the Open button to navigate to a location on the file system where you want to write the file. Enter a file name, then click Save in the dialog. Archive Clips To the right of the file destination section, the Avail Space on Disk field indicates the free space in Gigabytes on the selected disk. Tip: Using the preferences, you can select a clip name that is used automatically whenever you create a file destination. See Output Preferences on page 182. For More Information: You can send live input to a server for broadcast while simultaneously writing it to a file for archive purposes. The data sent to each destination is identical. See Server Destinations on page 125. When setting the output file name, you can quickly select the output directory and file name of a previous file by clicking the file name drop-down arrow. Helix Mobile Producer does not overwrite the previous clip if it still exists. Instead, it archives the existing clip by appending _archnnn to the base file name. For example, movie.3gp becomes movie_arch001.3gp before the new movie.3gp clip is saved. If you encode the output again, the existing movie.3gp becomes movie_arch002.3gp. Higher numbers therefore represent newer archives. Output File Extension The output file extension depends on the output type (see Output Selection on page 64). For all 3GPP clips, the extension is.3gp. For MPEG-4 clips, the extension is.mp4 or.m4a (audio). RealMedia CBR clips use the.rm extension. RealMedia VBR clips typically use the extension.rmvb. Mobile media players 70
CHAPTER 5: Outputs may not recognize the.rmvb extensions, however. In this case, encode VBR output using the.rm extension. Progressive Download Hint Track The Progressive Download option formats the clip to play as it downloads. If you do not enable this option, the clip starts playback only after the entire file has downloaded to the viewer s device. This option has no effect on streaming clips. Note: The progressive download option is automatically applied to RealMedia and MP3 outputs. Click the Streaming Server option to add a hint track to the output. A hint track provides the streaming server with information about how to stream the clip s media packets. It is good practice to include a hint track even though Helix Mobile Server can stream many media types with using a hint track. You may omit this option if the clip is meant only to be downloaded. Two-Pass Encoding Note: The hint track option is automatically applied to RealMedia and MP3 outputs. When the Two Pass option is enabled, Helix Mobile Producer runs through the entire source clip once to gather information about the source stream. In the second pass, it performs the actual encoding. Two-pass encoding can substantially increase clip quality, especially for VBR clips, but it requires more encoding time. Tip: Use two-pass encoding whenever you encode from a digitized file. Turn it off only if you must decrease the encoding time. Note: Two-pass encoding cannot be used during live broadcasts. It is automatically disabled if you add a server destination to the output. For More Information: For more about VBR encoding, refer to Variable Bit Rate Video on page 98. 71
Helix Mobile Producer User s Guide Output File Size An encoded, compressed clip is often smaller than the input file. This means that file size limits imposed by an operating system s file system are generally more of a problem when capturing video than when encoding it. However, there are some cases in which an output clip may exceed the operating system s maximum: A clip encoded for multiple bandwidths (especially with multiple, highspeed audiences) may exceed the source clip in size, even though each stream contains less data than the original input. If you encode a long video clip directly from a live source or capture device, the encoded clip may grow larger than the allowable file system limit. For More Information: See Disk Space Requirements for Video Capture on page 42. RealMedia File Rolling When a RealMedia clip reaches the operating system s file size limit, Helix Mobile Producer automatically creates, or rolls, a new clip. The new clip has the same name as the original clip, but with a number added to the file name. For example, movie.rm rolls to movie1.rm when movie.rm reaches the operating system limit. The clip movie1.rm rolls to movie2.rm if it grows too large, and so on. Note: File rolling is not available with output types other than RealMedia. For More Information: By using the command-line application or editing a job file, you can set lower limits on file rolling. You can also roll files by time, such as every 15 minutes. For details, refer to Helix Mobile Producer Command Line and Job File Reference. Metadata Helix Mobile Producer can encode metadata such as title, author, and copyright directly into an output stream. To define metadata for an output, highlight the output in the Outputs List. Then use the controls in the Metadata section. 72
CHAPTER 5: Outputs Metadata Section Metadata Buttons Use the buttons to the right of the Metadata section to define the selected output s metadata values: Add a metadata entry to the output. Edit the selected metadata value in a pop-up. You can also double-click the metadata line to display the pop-up. Copy the selected metadata value to a different output. Click the button, then use the context menu to select a specific output or all outputs. Delete the selected metadata entry. Metadata Entry Tip: Using the preferences, you can select metadata values that are used automatically whenever you create an output of a certain type. See Output Preferences on page 182. You add or edit metadata values in the Edit Metadata pop-up. When you add a value, select the type of metadata in the Name pull-down. Then enter the metadata value in the Value field. When you edit a value, you can change only the Value setting. 73
Helix Mobile Producer User s Guide Edit Metadata Pop-Up Metadata Titles and Values Tip: When adding or editing metadata, you can quickly choose a previous value for the selected metadata type by clicking the Value field drop-down arrow. The following sections list the acceptable metadata values, which vary for RealMedia, MPEG-4, and 3GPP clips. For 3GPP Release 5 clips, you can specify only a title, author, and copyright. MP3 clips can encode only a title and an author. Title Short title of the content. Author The name of the person or organization that created the content. Copyright The copyright string, such as: (c) 2009 XYZ Corporation Keywords (RealMedia, MPEG-4, and 3GPP Release 6) Words that search engines can read to categorize the clip. Add a few words, separated by spaces, that will help your audience search for your clip. Tip: Unless you are adding a proper name, use lowercase for each term. Avoid overly generic terms such as video or music. 74
CHAPTER 5: Outputs Description (RealMedia, MPEG-4, and 3GPP Release 6) Description of the content that appears when the viewer displays extended clip information. This value is used to provide detail too long for the title. Rating Entity (3GPP Release 6) The ratings organization that set the content rating: MPAA Motion Picture Association of America (http://www.mpaa.org) BBFC British Board of Film Classification (http://www.bbfc.co.uk) OLFC Australian Office of Film and Literature Classification (http://www.oflc.gov.au) Rating Criteria (RealMedia and 3GPP Release 6) A ratings value that indicates content suitability for different age groups. The values vary depending on the ratings entity. RealMedia Ratings Criteria RealPlayer uses the following ratings values to indicate content suitability for different age groups: No Rating (default) All Ages Older Children Younger Teens Older Teens (15 and up) Adult Supervision Recommended Adults Only MPAA Ratings (3GPP Release 6) For 3GPP content rated by the MPAA, use one of the following strings: G general audience PG parental guidance recommended PG-13 parents strongly cautioned R restricted NC-17 no one 17 or under 75
Helix Mobile Producer User s Guide BBFC Ratings (3GPP Release 6) The BBFC defines the following ratings: U universal PG parental guidance recommended 12 12 years and older 15 15 years and older 18 18 and older R18 18 and older (explicit and legally restricted) OFLC Ratings (3GPP Release 6) The OFLC sets the following ratings: G general PG parental guidance recommended M mature audiences MA not suitable for 15 years and younger R 18 and over X 18 and over (explicit) Rating Description (3GPP Release 6) Text that explains the selected rating. 76
Part II: ADVANCED AUDIO AND VIDEO SETTINGS PART II The chapters in this section explain how to customize audio and video settings to tailor outputs to your specific needs.
Chapter 6: AUDIO CUSTOMIZATION CHAPTER 6 Using the audio customization options, you can modify the audio encoding properties of an audience. You can select the audio codec, bit rate, and sampling rate. Audio Encoding Settings You customize audio by selecting the audience in the Encoding Settings section of the Output tab, then clicking the Edit button. The Audio section of the audience pop-up displays the audio editing options. Audio Encoding Settings Note: If you are working with a multi-rate output, you can customize the audio settings for only one audience at a time. For More Information: See Audience Customization on page 67. 79
Helix Mobile Producer User s Guide Audio Codec The Codec drop-down allows you to choose a specific type of codec for audio encoding. medium: All audio use: Select the audio codec. restrictions: Output type restricts the available codecs (see Output Selection on page 64). All audiences for a rate-shifting clip must use the same audio codec. Choices include the following: None Do not encode audio. AMR-NB Voice. See AMR-NB on page 18. AMR-WB Voice. See AMR-WB on page 19. AAC Mono or stereo music. See AAC-LC on page 15. AAC+ Mono or stereo music. See AAC+ on page 16. MP3 Mono or stereo music. See MP3 on page 13. RealAudio Mono, stereo, stereo surround, or multichannel music. See: RealAudio Mono Music Codecs on page 23. RealAudio Stereo Music Codecs on page 23. RealAudio Stereo-Surround Codecs on page 24. RealAudio 5.1 Multichannel Audio Codecs on page 24. RealAudio Voice Voice. See RealAudio Voice Codecs on page 22. RealAudio High Response Mono or stereo music. See RealAudio High- Response Codecs on page 22. Channels The Channels drop-down sets the number of audio channels encoded. medium: All audio 80
CHAPTER 6: Audio Customization use: Select the number of channels encoded. restrictions: Codec choice affects the number of channels that may be encoded. In a multi-rate MPEG-4 or 3GPP clip, all audiences must encode the same number of channels for rate shifting to occur during streaming. Choices, which depend on the chosen codec s capabilities, may include the following: Mono Stereo Stereo Surround 5.1 Multichannel What is Stereo Surround? Stereo surround audio includes additional channels that are mixed (or matrixed) using the conventional left and right stereo channels. The extra channels can be played using a stereo-surround receiver. However, stereo surround is compatible with any stereo receiver. If the receiver cannot extract the data for the extra channels, it plays just the stereo left and right channels. For More Information: You can find additional information about stereo surround input at http://www.dolby.com. or http://www.dts.com/. Stereo Surround Channel Arrangements The following table explains the common channel arrangements found in matrixed, stereo surround audio. Common Channel Arrangements in Matrixed, Stereo Surround Audio Channels Description 4 To the standard left and right channels, this arrangement adds a front center and a rear center channel. 5.1 This type of matrixing uses five main channels: left, center, right, left surround, and right surround. The.1 refers to a sixth, low-frequency effects (LFE) bass channel that covers a fraction of the frequency range of the main channels. 81
Helix Mobile Producer User s Guide Common Channel Arrangements in Matrixed, Stereo Surround Audio Channels Description 6.1 Building on the 5.1 arrangement, this type of matrixing adds two additional channels for playback on two additional speakers. 7.1 Also building on the 5.1 arrangement, this type of matrixing adds four additional channels for playback on two additional speakers. When to Use a Stereo-Surround Codec Stereo surround is suitable for high-bandwidth streaming or download audiences listening on more than two speaker channels (home theater, for example). You should encode your audio using a stereo-surround codec if all of the following are true: The source audio is matrixed, multiple-channel sound. (These sources are prevalent on DVDs and television broadcasts.) At least some of your listeners will play the output on systems that have more than two speaker channels. You are targeting a high-bandwidth streaming or download audience. Tip: Because the multi-channel input of stereo surround is actually encoded as standard stereo input, the computer running Helix Mobile Producer does not require a special sound card or cabling. When Not to Use a Stereo-Surround Codec Encode your audio using a standard stereo codec if any of the following are true: The input is standard stereo (left and right channels with no additional, matrixed channels). Note: Although you can encode standard stereo input using a stereo-surround codec, there are no advantages to doing so. Helix Mobile Producer does not create the extra channels. It only preserves existing channels. Additionally, standard stereo codecs are more efficient than stereo-surround codecs at encoding two-channel audio. 82
CHAPTER 6: Audio Customization Your audience will play the stream on systems that includes only the stereo left and right channels. You wish to stream the audio at a bandwidth lower than those available with stereo-surround codecs. What is Multichannel Audio? Tip: When you create a SureStream RealAudio clip, you can encode low-bandwidth streams in conventional stereo, and high-bandwidth streams that preserve the stereo surround audio. Multichannel audio includes channels in addition to the left and right stereo channels. Unlike stereo surround, however, multichannel audio encodes the additional channels separately. Multichannel audio is suitable for highbandwidth streaming or download audiences listening on more than two speaker channels (home theater, for example). Tip: Multichannel audio is often called discrete multichannel, whereas stereo surround is called matrixed multichannel. The quadraphonic multichannel format, which uses two front and two back channels, is obsolete and not supported by Helix Mobile Producer. Sounds Cards for Multichannel Audio Input To enable discrete, multichannel audio, your sound system must capture and preserve each channel. For live capture, the sound card on the Helix Mobile Producer computer must support the multiple input channels. A standard sound card supporting only two-channel stereo input cannot capture multichannel audio. Tip: A common audio format to use with multichannel audio is AC-3, which is also called Dolby Digital. Channels Encoded by Helix Mobile Producer Helix Mobile Producer encodes all multichannel output as 5.1 channels (left, center, right, left surround, right surround, LFE bass) or 6 channels. It can accept fewer than six channels as input, upmixing as necessary to create the additional channels. 83
Helix Mobile Producer User s Guide Multi-Rate Clips with Standard Stereo for Low Bandwidths When encoding a SureStream RealAudio clip, you can encode multichannel audio at high bandwidths and standard stereo at low bit rates. Do not encode standard stereo input with the multichannel codecs, however, as the quality will not be as high as when you use standard stereo codecs. Average Bit Rate In the Avg. Bitrate field, use the drop-down to select the bit rate for the audio stream. medium: All audio use: Set the audio stream bit rate. restrictions: Codec and channels settings affect possible choices. For More Information: See Audio Codec Choices on page 14. Sample Rate The Sample Rate field sets the sampling rate of the output. Most audio codecs support just one sampling rate. medium: AAC and MP3 audio use: Set the audio output sampling rate. restrictions: Codec, channels, and bit rate settings affect possible choices. In a multi-rate MPEG-4 or 3GPP clip, all audiences must encode the same sampling rate for rate shifting to occur during streaming. Choices are: Auto Sets the appropriate rate based on the input audio and the codec s optimal sampling rate. This is recommended. Rate Set a specific sampling rate supported by the chosen codec. What is a Sampling Rate? An audio sampling rate indicates the number of samples taken every second when the analog audio signal was digitized. Input audio from a file or audio capture card has a specific sampling rate, typically within the range of 8,000 to 48,000 Hz. 84
CHAPTER 6: Audio Customization Each audio codec also has an optimal sampling rate (or rates). If the input audio s sampling rate does not mach the codec s required rate, Helix Mobile Producer resamples the input. This changes the sampling rate to that required by the codec without causing pitch shifting. For best results, the audio input sampling rate should be equal to or greater than the codec s rate. For rate-shifting clips, the input sampling rate should be equal to or greater than the highest overall sampling rate used. This is typically the sampling rate used by the highest-bandwidth audience chosen. Tip: During a live broadcast, it is helpful to avoid resampling by ensuring that your audio input uses a preferred sampling rate of the output. For More Information: The audio properties, which are described in Source Properties on page 49, display the input sampling rate. The section Audio Codec Choices on page 14 lists the optimal sampling rate for each audio codec. 85
86 Helix Mobile Producer User s Guide
Chapter 7: VIDEO CUSTOMIZATION CHAPTER 7 Video customizations allow you to modify the video encoding properties of an audience. For example, you can select the video codec, the bit rate, and the frame rate. You can also scale the output video smaller than the input video. Video Encoding Settings You customize video settings by selecting the audience in the Encoding Settings section of the Output tab, then clicking the Edit button. The Video section of the audience pop-up displays the video editing options. Video Encoding Settings Note: If you are working with a multi-rate output, you can customize the video settings for just one audience at a time. 87
Helix Mobile Producer User s Guide For More Information: See Audience Customization on page 67. Video Codec The Codec drop-down sets the video codec used. medium: All video use: Choose the video codec. restrictions: Output type restricts the available codecs (see Output Selection on page 64). All audiences for a rate-shifting clip must use the same codec. For standards-based codecs, the profile is included with the codec name. Select one of the following: None Do not encode video. RealVideo 8 See RealVideo 8 Codec on page 28. RealVideo 9 See RealVideo 9 Codec on page 28. RealVideo 10 See RealVideo 10 Codec on page 28. MPEG-4 Simple Profile See MPEG-4 SVP on page 27. H.263 Profile 0 See H.263 on page 25. H.264 Baseline Profile See H.264 on page 26. Level The Level drop-down sets the video codec s encoding level. medium: Standards-based video (non-functional for RealVideo) use: Choose the video codec level. restrictions: Codec choice determines the possible levels. The level constrains the settings for the video s average bit rate, frame rate, and frame size. All audiences for a rate-shifting clip must use the same level. Choose one of the following: Auto Sets the appropriate level based on the video s bit rate, frame rate, and frame size. 88
CHAPTER 7: Video Customization Level Sets the specific level. For more information about levels, refer to the following sections: H.263 on page 25. H.264 on page 26. MPEG-4 SVP on page 27. Note: Do not choose Auto when setting the video level for a rate-shifting MPEG-4 or 3GPP Release 6 clip. Set the level for all audiences to the highest level required for the output. This is typically the level used by the highest-bandwidth audience. Video Average Bit Rate For the Avg. Bitrate option, use the arrows to select the average bit rate for the video stream in Kilobits per second (Kbps). medium: All video use: Set the video stream average bit rate. restrictions: For standards-based video, the codec level constrains the setting for the average bit rate. For details about level-based limitations on bit rates, refer to the following sections: H.263 on page 25. H.264 on page 26. MPEG-4 SVP on page 27. Note: The total bit rate for the audience equals the audio bit rate plus the video bit rate: Total Bit Rate = Audio Bit Rate + Video Bit Rate. Frame Rate Use the arrows of the Frame Rate option to set the maximum frame rate for the video stream. medium: All video 89
Helix Mobile Producer User s Guide use: Set the video maximum frame rate. restrictions: Output frame rate will not exceed the input frame rate (see Source Properties on page 49). For standards-based video, the codec level constrains the maximum frame rate. For details about level-based limitations on frame rates, refer to the following sections: Target Frame Rates H.263 on page 25. H.264 on page 26. MPEG-4 SVP on page 27. The higher the frame rate, the smoother the motion in the video. 24 to 30 Frames Per Second The standard frame rate for full-motion video is 24 to 30 fps. At this speed, the human eye perceives movement as continuous a phenomenon known as persistence of vision. Tip: RealNetworks recommends using a rate of 30 fps only for download clips or if streaming bandwidth is at least 250 Kbps. 15 Frames Per Second This is a common frame rate target for video that streams at less than 250 Kbps. To most people, a 15 fps video appears to flow relatively smoothly. Below 15 Frames Per Second You can set a frame rate target below 15 fps for lower-bandwidth settings. Below 7 fps, the video will look very jerky. Below 3 fps, a video essentially becomes a slideshow. Tip: Devices with slow processors may have trouble decoding video with a high frame rate. For these devices, you may want to choose a slower maximum rate, such as 7.5 fps, even if the available bandwidth supports a higher frame rate. 90
CHAPTER 7: Video Customization Factors that Affect RealVideo Frame Rates Video codecs used with 3GPP and MPEG-4 clips keep the encoded frame rate at the value you select. For RealVideo output, however, the frame rate field sets only the maximum frame rate. The actual frame rate for an encoded video varies throughout the clip. Several factors affect how the encoded frame rate of the RealVideo output. Video Dimensions The video s dimensions greatly affect frame rate. If the dimensions are too large for your target bandwidth, you will not get a high frame rate. Codec Choice Tip: To get a higher frame rate, reduce the output video dimensions as described in Frame Size on page 92. RealVideo 10 generally provides a frame rate faster than that produced by older RealVideo codecs. Tip: RealVideo has an option for smoother motion. At lower bandwidths, this helps to raise the clip s overall frame rate. See Frame Rate Mode on page 95. Two-Pass Encoding Using this option helps Helix Mobile Producer analyze the input better and produce the highest frame rate possible. For More Information: See Two-Pass Encoding on page 71. Variable Bit-Rate Encoding In a video that has a mix of fast and slow scenes, VBR encoding helps the fast scenes achieve a higher frame rate. For More Information: See Variable Bit Rate Video on page 98. 91
Helix Mobile Producer User s Guide Frame Size By default, the encoded video has the same dimensions as the video input. To change the size of the output, use the Frame Size controls. medium: All video use: Change the output video dimensions. restrictions: For a multi-rate RealMedia clip, all audiences must encode video output at the same frame size. For 3GPP and MPEG-4 clips, all audiences must use the same frame size to enable rate shifting while streaming. The codec level constrains the maximum frame size. Frame Size Controls In the Frame Size drop-down, you can set one of the following values (WidthxHeight in pixels): No Resize Keep output size the same as input size. Custom Set pixel width and height using the WxH text fields. 176x144 (QCIF) Quarter Common Intermediate Format. 352x288 (CIF) Common Intermediate Format. 640x240 (HVGA) Half VGA. 320x240 (QVGA) Quarter VGA. For details about level-based limitations on frame rates, refer to the following sections: H.263 on page 25. H.264 on page 26. MPEG-4 SVP on page 27. Maintain Aspect Ratio If you check the Maintain Aspect Ratio box, you can enter just the height or width value for the resize. Helix Mobile Producer automatically calculates the 92
CHAPTER 7: Video Customization other value to maintain the ratio between the two dimensions. By unchecking this box, you can enter width and height values independently. High-Quality Resize Warning! If you do not maintain the aspect ratio, the output may appear distorted. Selecting the Use High Quality Resize option produces superior results, but increases the encoding time. Uncheck the box if you need to decrease the encoding time, such as during a live broadcast. Note that the video quality will decline, however. Notes on Resizing Note the following when resizing video output. Methods of Resizing There are three methods of resizing available: capture card When capturing live input, use the video capture card to set the video input to the same dimensions as the largest output size. This is generally faster than resizing input through software. resizing prefilter The resizing prefilter (see Input Resize on page 58) resizes the input, whether a live capture or a prerecorded file, before it is encoded. If you want all of your outputs to be the same size, resize the input using this prefilter. video output If you are encoding multiple outputs at different dimensions, define each dimension in the video settings of each output. Cropping and Resizing to Change Aspect Ratios Often, a source video is captured at a 4:3 aspect ratio, but must be encoded for a mobile device that uses a different aspect ratio. To change the aspect ratio without distorting the output, follow these steps: Use the input cropping prefilter (see Input Cropping on page 53) to crop the video to the device s screen aspect ratio. 93
Helix Mobile Producer User s Guide Resize the output to the device s screen size while maintaining the aspect ratio. Cropping and Resizing Example The following figure illustrates a 320x240 input video cropped to 292x240, then resized to 176x144. Video Cropped and Resized Desktop Video Dimensions Videos intended for desktop media players have greater flexibility in screen dimension than those intended for mobile devices. Most desktop videos use the 4:3 aspect ratio of standard computer monitors or the 16:9 aspect ratio of widescreen monitors. The following table provides size recommendations based on bandwidth. Recommended Video Dimensions Bandwidth Pixel Dimensions (4:3) Pixel Dimensions (16:9) less than 256 Kbps 176x132; 240x180 192x108; 256x144 256 to 512 Kbps 320x240; 448x336 320x180; 512x288 786 Kbps or higher 448x336; 640x480 768x432; 1280x720 Note: At larger dimensions such as 640x480, the input video should be of very high quality. 94
CHAPTER 7: Video Customization Encoding Complexity The encoding complexity affects how the codec analyzes the input before encoding it. The higher the complexity, the better the quality of the output. medium: All video use: Determines how complexly the codec encodes the output. restrictions: Higher complexities require more processing time. In the Encoding Complexity drop-down, select one of the following complexity modes: Very Low (Fastest) Low (Faster) Medium High (Slower) Very High (Slowest) Tip: The terms Fastest, Faster, Slower, and Slowest refer to the relative speeds of the encoding process that you can expect when you choose one of these complexity levels. Note: For RealVideo, Very Low and Low are equivalent settings. As well, the High and Very High settings produce the same results. Frame Rate Mode The Frame Rate Mode option affects how the RealVideo codec encodes scenes when available bandwidth is tight. medium: RealVideo only use: Emphasize smooth motion or picture clarity. restrictions: Primarily affects low-bandwidth encodings. In the drop-down, choose one of the following: Sharp Focus on image quality, sacrificing smooth motion by lowering the frame rate if necessary. Normal Compromise between image quality and smooth motion. 95
Helix Mobile Producer User s Guide Smooth Keep the frame rate as high as possible, sacrificing image clarity as necessary. Slideshow Encode as a slideshow of still frames. Tip: A slideshow is recommended only for very large videos encoded for very low bandwidths. It is better practice, however, to resize the video to dimensions appropriate for you target audience. 96
Chapter 8: ADVANCED VIDEO OPTIONS CHAPTER 8 Using advanced video options, you can create a variable bit rate (VBR) clip for download or streaming. You can also modify the stream preroll and video key frame interval. Advanced Video Settings You can set advanced video options by selecting the audience in the Encoding Settings section of the Output tab, then clicking the Edit button. The Advanced Video Settings section of the audience pop-up displays the available options. Advanced Video Encoding Settings Note: If you are working with a multi-rate output, you can customize the advanced video settings for only one audience at a time. 97
Helix Mobile Producer User s Guide For More Information: See Audience Customization on page 67. Variable Bit Rate Video Click Perform Variable Bit Rate Encoding to create a VBR clip. If this option is not used, the output is a CBR clip that can have one or more audiences. medium: All video use: Create a download or streaming clip that can exceed the average bandwidth setting. restrictions: Only one audience for each VBR output. VBR Compared to CBR Tip: Two-pass encoding is an important component for creating a high-quality VBR clip. For more information, refer to Two-Pass Encoding on page 71. A video clip streams at either a constant or a variable bit rate: CBR (Constant Bit Rate) CBR encoding is the traditional mode for streaming video. You should generally use CBR video when streaming at bandwidths below 350 Kbps, or anytime you want to create a rate-shifting clip. VBR (Variable Bit Rate) VBR encoding gives more bandwidth to scenes that are hard to compress, making the most visible difference in videos that have fast-moving, highaction scenes. VBR encoding is well-suited for the following circumstances: High-quality download clips. Streaming at bandwidths of 350 Kbps or higher with no rate shifting. VBR encoding is not suited for the following situations: Live broadcasts. Streaming at bandwidths below 350 Kbps. Encoding a multi-rate clip that allows rate shifting. 98
CHAPTER 8: Advanced Video Options Networks Suitable for VBR Streaming To accommodate VBR, the streaming network must be able to handle the bandwidth spikes inherent in VBR encoding. The following types of audience networks are good candidates for VBR streaming: Local area networks (LANs) such as a corporate network. Cable modem users Because all viewers in these networks share a large pool of bandwidth, a VBR clip s intermittent bandwidth spikes tend not to overload a single viewer s connection bandwidth. Networks Less Suitable for VBR Streaming Connections in which bandwidth is not shared, such as DSL, can prove problematic for VBR streaming. A 450 Kbps VBR clip may have a maximum bandwidth of 900 Kbps, for instance. If a DSL connection has a maximum throughput of 500 Kbps, the VBR clip may stall. Broadcasting VBR Clips If you broadcast variable bit rate (VBR) video, your outgoing Helix Mobile Producer bandwidth as well as your viewers network connections should be able to handle the maximum bandwidth requirement for your selected audience. Note, however, that when you broadcast a VBR stream, bandwidth spikes occur for each viewer at the same time. When broadcasting VBR, therefore, your network needs to handle higher cumulative spikes than when you stream prerecorded clips. VBR Maximum Bit Rate Tip: Multicast delivery, which is available on some intranets, helps to overcome bandwidth spikes by delivering one stream to all viewers, rather than a separate stream to each viewer. For more information, refer to the multicasting chapter of Helix Mobile Server Administration Guide. The value of the Max Bitrate field caps the bandwidth that the VBR clip can consume. This determines the highest value that the streaming bit rate can reach. The maximum rate may occur during specific passages, such as highaction sequences, to improve video clarity. 99
Helix Mobile Producer User s Guide Relationship to Average Bit Rate Through most of a VBR video, the second-by-second bandwidth use is close to the video s average bit rate value. For example, a VBR clip may average 450 Kilobits of data per second. However, if the VBR audience defines a maximum bit rate of 900 Kbps, the stream can, if necessary, consume up to 900 Kilobits of data a second. Tip: As you encode VBR clips for download, you can consider the average bit rate as a guide to quality and file size. For example, a 450 Kbps VBR download will generally have lower quality and a smaller file size than a 750 Kbps VBR download. For More Information: See Video Average Bit Rate on page 89. Maximum Bit Rate Value The maximum bit rate is typically 50 to 100 percent higher than the video s average bit rate. Although you can set the maximum bit rate value higher or lower, a higher setting is unlikely to result in significantly greater quality. You can lower the setting if you want to reduce the bandwidth spikes on your network, however. VBR Target Quality Tip: Lowering the maximum rate below 50 percent decreases the benefits of VBR encoding. The closer the maximum rate approaches the average rate, the more the clip behaves like a CBR clip. The Target Quality setting gears the encoding process to achieve a certain level of visual quality. With a quality of 100 percent, for example, Helix Mobile Producer attempts to reproduce the visual quality of the input nearly perfectly. A lower quality, such as 90 or 80 percent, allows for more visual imperfections but results in a smaller clip that uses less bandwidth. Note: A quality setting does not guarantee perfectly faithful reproduction of the input. It merely attempts to achieve the quality level within the input constraints, such as the video dimensions, frame rate, and bit rate. 100
CHAPTER 8: Advanced Video Options Relationship to Average Bit Rate Because encoding for quality can vary the average bit rate greatly, the average bit rate setting is ignored. That is, the average bit rate and quality settings are mutually exclusive, and you can define only one of the values. Quality-Based Encoding Example If you set a maximum bit rate of 900 Kbps and a quality of 100 percent, for example, the average bit rate may turn out to be close to 900 Kbps. At a lower quality target, such as 80 percent, the average bit rate will probably be lower. The actual, average bit rate depends greatly on content, though, and will vary for each clip. Streaming Quality-Based VBR Clips Because their average bit rate can vary greatly, quality-based VBR clips are better suited for downloading than streaming. However, you can stream a quality-encoded stream as long as your network has the capacity to provide to each user the bandwidth indicated by the maximum bandwidth target. Typically, each stream will use less bandwidth than this. Note: You can compute the average bandwidth of a clip by dividing the file size in Kilobits by the number of seconds in the timeline. For a live broadcast, though, it is impossible to know the average bandwidth of a quality-encoded stream in advance. Tip: By editing an VBR audience file, you can vary the relationships between bit rate and quality. You can also define two additional variations of VBR encoding. For details refer to Helix Mobile Producer Command Line and Job File Reference. Maximum Video Buffering (Preroll) A video s preroll sets the number of seconds of stream data that the media player must receive before it starts to play the stream. You can modify the preroll by changing the Max Video Buffer setting. medium: All video use: Sets the number of seconds the video buffers before starting. restrictions: 1 second for 3GPP outputs. 101
Helix Mobile Producer User s Guide Note: For 3GPP output clips, the maximum preroll time is fixed at 1 second, which is required by the 3GPP standard. For RealVideo, the default value is 4 seconds, but can be changed. Tip: This startup latency does not affect how quickly a downloaded clip begins to play. Increasing the preroll, however, can improve the visual quality in download clips that begin with fast-action sequences. Maximum Key Frame Interval 102 Using the Max Key Frame Interval setting, you can change the video codec s value for the maximum time between key frames. The default value is at least one key frame every 5 seconds. medium: All video use: Sets the maximum time in seconds between each key frame. restrictions: Poor quality if set too low (1 to 2 seconds, for example). What is a Key Frame? Tip: Under most circumstances, you should not change the default value. If you decide to modify the key frame rate, test the output in a streaming environment to determine if the change produces the desired results. Compressed video encodes full frame data only for certain frames, called key frames. A frame following a key frame encodes information that describes how that frame varies from the preceding frame. The beginning of a new scene typically requires a key frame. A fast-action video typically requires more key frames than a slowly changing video. Advantages of Lowering the Maximum Key Frame Interval Lowering the maximum key frame interval can provide certain benefits: Reduces distortion when streaming in a lossy environment. Distortion results when a frame packet is lost. Using more frequent key frames helps to shorten the stretch of video that may be distorted. Improves a media player s ability to seek to specific points in the video timeline.
CHAPTER 8: Advanced Video Options Costs of Lowering the Maximum Key Frame Time Because key frames encode more data than other frames, lowering the maximum time between key frames either increases the clip s file size or lowers the clip s image quality. You gain more resilience against data loss, but lose overall compression efficiency. Startup Latency Reduction During Broadcasts A large key frame interval can cause a high stream acquisition latency during live broadcasts. This latency is the time required for the media player to render the stream after it begins to receive the broadcast data. If the media player joins the broadcast just after the broadcast server streams a key frame, the player may have to wait up to five seconds until the next key frame is available. If Helix Mobile Server version 11 or later broadcasts the stream, however, it reduces startup latency automatically by buffering each new key frame. This allows it to send key frame data immediately to each media player as it acquires a broadcast stream. 103
104 Helix Mobile Producer User s Guide
Part III: BROADCASTING PART III This section covers broadcasting, explaining basic issues and showing how to create server destinations.
Chapter 9: BROADCAST FEATURES CHAPTER 9 This chapter introduces you to the types of broadcasts, explains broadcast options, and covers advanced broadcast features. For More Information: When you are ready to set up a broadcast, Chapter 10 explains how to define server destinations. Live Broadcasting In a live broadcast, Helix Mobile Producer takes live input from a capture card as described in Capture Input on page 43, encodes it in a streaming format, and sends the stream to a broadcast server for replication and distribution to media players. Live Broadcasting Tip: During a broadcast, you can encode the output as a file destination. This saves the broadcast as an archived, ondemand clip. The section Output File Destination on page 70 explains how to do this. Note: Helix Mobile Producer can deliver a live broadcast only from live input. To broadcast a file, encode the file in the appropriate format using Helix Mobile Producer. Then stream the file using the Helix Mobile Server SLTA utility. For details, refer to Helix Mobile Server Administration Guide. 107
Helix Mobile Producer User s Guide Broadcast Trial Runs When you broadcast live content, you don t get a second chance. It s good practice to perform a trial run to ensure that the broadcast results are acceptable. During the trial run, do the following: Request the stream from the broadcast server. When the media player connects, check that the stream begins to play within a reasonable time. Confirm that the stream rendered by the media player provides an acceptable frame rate and visual quality. Monitor Helix Mobile Producer to check if it is using too much CPU. Automatic Frame Rate Reduction If Helix Mobile Producer must reduce the processor load, it reduces the encoded frame rate for the broadcast stream. If this happens, you can do one or more of the following: Move Helix Mobile Producer to a faster machine. If encoding multiple outputs, reduce the number of outputs. (See Outputs List on page 63.) If encoding multi-rate outputs, reduce the number of audiences encoded for each output. (See Encoding Settings on page 65.) Use an older video codec, such as RealVideo 8 instead of RealVideo 10 or H.263 instead of H.264. (See Video Codec on page 88.) Lower the streaming bit rate for one or more audiences. (See Video Average Bit Rate on page 89.) Reduce the video frame size. (See Frame Size on page 92.) Types of Broadcasts Helix Mobile Producer provides several broadcast methods. Each method requires that you define a different type of server destination: Push Broadcasting Helix Mobile Producer delivers the broadcast stream to the designated server as soon as encoding begins. The following broadcasting modes are available: Helix Push Broadcast Helix Advanced Push Broadcast 108
CHAPTER 9: Broadcast Features Helix Push Broadcast Helix Multicast Push Broadcast RTP Push Broadcast Pull Broadcasting After encoding starts, Helix Mobile Producer waits for each broadcast server to request the stream. One broadcast method is available: Helix Pull Broadcast Note: With this version of Helix Mobile Producer, you can deliver live 3GPP or MPEG-4 streams to Helix Mobile Server using Helix Push, Helix Advanced Push, Helix Multicast, or Helix Pull mode. The RTP Push mode is recommended for use with RTP-enabled servers other than Helix Mobile Server. A Helix Push broadcast requires little configuration on Helix Mobile Server. It provides reliable delivery of the broadcast stream to one or more destinations. server setup: Requires only a user name and password defined within the Helix Mobile Server authentication database. bandwidth: Each server destination receives a separate data stream. Each server maintains a separate accounting connection. feedback: Feedback statistics are sent in the accounting connection and displayed in the Monitoring tab. reconnection: Dropped streams are automatically re-established using the accounting connection. output types: 3GPP Release 5, 3GPP Release 6, MPEG-4, RealMedia SDP: An SDP file is not required. Media players can request an SDP file using a URL that contains the /sdpgen/ mount point. For More Information: The section Helix Push Destination on page 127 explains how you set up this type of broadcast in Helix Mobile Producer. Helix Push Broadcast Connection Steps The following figure illustrates the interaction between Helix Mobile Producer, Helix Mobile Server, and a media player in a Helix Push broadcast. 109
Helix Mobile Producer User s Guide Helix Push Broadcast Sequence of actions in a Helix Push broadcast: 1. Helix Mobile Producer establishes its monitoring connection with Helix Mobile Server. Using this connection, Helix Mobile Producer sends a user name and password that authenticates its access attempt. 2. After Helix Mobile Server authenticates the broadcast, it informs Helix Mobile Producer how to make the broadcast connection, telling it which server ports to use, for example. 3. Helix Mobile Producer establishes the broadcast stream connection to Helix Mobile Server. It begins to send the encoded packets whether or not any media players have requested the broadcast yet. 4. A viewer typically requests the broadcast by clicking a link in a Web page. This launches the viewer s media player, which requests a broadcast stream from Helix Mobile Server. 5. Helix Mobile Server streams the broadcast data to the media player. URL for a Helix Push Broadcast For a Helix Push broadcast that the viewer accesses by clicking a link in a Web page, the URL looks like the following: http://helixserver.example.com/sdpgen/broadcast/news/live.3gp The /sdpgen/ mount point launches the media player when the viewer clicks the link in a Web page. Helix Mobile Server automatically generates the SDP file used by the media player to connect to the broadcast. The /broadcast/ mount point is the default broadcast mount point. If redundant encoders are used, the mount point is /redundant/. For More Information: See Encoder Redundancy on page 119. 110
CHAPTER 9: Broadcast Features A virtual path such as news/ is optional. It is included in the URL only if Helix Mobile Producer specifies this path along with the stream name. Helix Advanced Push Broadcast For More Information: See Virtual Paths on page 129. Note: Confer with the Helix Mobile Server administrator about the actual URL to use. URLs can vary from the standard format for many reasons. Helix Advanced Push is similar to Helix Push broadcasting, but is more efficient with bandwidth, making it a better choice when broadcasting to multiple servers. server setup: Requires that each Helix Mobile Server be configured as a broadcast receiver. bandwidth: Each server destination receives a separate data stream. There are no accounting channels. feedback: No feedback from the broadcast server. reconnection: A server can re-establish a lost connection through metadata that is encoded into the data stream periodically. output types: 3GPP Release 5, 3GPP Release 6, MPEG-4, RealMedia SDP: An SDP file is not required. Media players can request an SDP file using a URL that contains the /sdpgen/ mount point. For More Information: The section Helix Advanced Push Destination on page 132 explains how to set up this type of broadcast in Helix Mobile Producer. Helix Advanced Push Broadcast Steps The following figure shows the interaction between Helix Mobile Producer, Helix Mobile Server, and a media player in a Helix Advanced Push broadcast. Helix Advanced Push Broadcast 111
Helix Mobile Producer User s Guide Sequence of actions in a Helix Advanced Push broadcast: 1. As soon as it starts encoding the broadcast stream, Helix Mobile Producer sends the stream packets to Helix Mobile Server. The password required by the Helix Mobile Server receiver is encoded into the data stream. 2. A viewer typically requests the broadcast by clicking a link in a Web page. This launches the viewer s media player, which requests a broadcast stream from Helix Mobile Server. 3. Helix Mobile Server delivers the broadcast data to the media player. URL for a Helix Advanced Push Broadcast For a Helix Advanced Push broadcast that the viewer accesses by clicking a link in a Web page, the URL looks like the following: http://helixserver.example.com/sdpgen/broadcast/news/live.3gp The /sdpgen/ mount point launches the media player when the viewer clicks the link in a Web page. Helix Mobile Server automatically generates the SDP file used by the media player to connect to the broadcast. The /broadcast/ mount point is the default broadcast mount point. If redundant encoders are used, the mount point is /redundant/. For More Information: See Encoder Redundancy on page 119. A virtual path such as news/ is optional. It is included in the URL only if Helix Mobile Producer specifies this path along with the stream name. For More Information: See Virtual Paths on page 133. Note: Confer with the Helix Mobile Server administrator about the actual URL to use. URLs can vary from the standard format for many reasons. 112
CHAPTER 9: Broadcast Features Helix Multicast Push Broadcast Helix Multicast Push is similar to Helix Advanced Push, except that the transport is UDP multicast. This type of broadcast allows you to deliver a single stream to multiple, multicast-enabled Helix Mobile Servers. server setup: Requires that Helix Mobile Producer, Helix Mobile Servers, and network equipment such as routers be multicast-enabled. bandwidth: Each server destination receives the same multicast stream. There are no accounting channels between servers and Helix Mobile Producer. feedback: No feedback from the broadcast servers. reconnection: A server can re-establish a lost connection through metadata that is encoded into the data stream periodically. output types: 3GPP Release 5, 3GPP Release 6, MPEG-4, RealMedia SDP: An SDP file is not required. Media players can request an SDP file using a URL that contains the /sdpgen/ mount point. For More Information: The section Helix Multicast Push Destination on page 137 explains how to set up this type of broadcast. Multicast Push Illustration The following figure illustrates multicasting. Because each server receives the same stream, multicasting allows you to broadcast to any number of server destinations without increasing the outgoing bandwidth from Helix Mobile Producer. Helix Multicast Push Note: Multicasting may not be possible if Helix Mobile Producer or any of the Helix Mobile Servers needs to 113
Helix Mobile Producer User s Guide communicate to another broadcast component across the Internet. Tip: Multicast broadcasting can also be used for broadcasting across a one-way satellite network where two-way connections are not possible. URL for a Helix Multicast Push Broadcast For a Helix Multicast Push broadcast that the viewer accesses by clicking a link in a Web page, the URL looks like the following: http://helixserver.example.com/sdpgen/broadcast/news/live.3gp RTP Push Broadcast The /sdpgen/ mount point launches the media player when the viewer clicks the link in a Web page. Helix Mobile Server automatically generates the SDP file used by the media player to connect to the broadcast. The /broadcast/ mount point is the default broadcast mount point. If redundant encoders are used, the mount point is /redundant/. For More Information: See Encoder Redundancy on page 119. A virtual path such as news/ is optional. It is included in the URL only if Helix Mobile Producer specifies this path along with the stream name. For More Information: See Virtual Paths on page 138. Note: Confer with the Helix Mobile Server administrator about the actual URL to use. URLs can vary from the standard format for many reasons. RTP Push is a generic, standards-based broadcast method designed to deliver a broadcast stream to a RTP-based server. server setup: Requires a server enabled for an RTP-based broadcast. bandwidth: Each server destination receives a separate data stream. There is no accounting channel. feedback: No feedback from the broadcast server. reconnection: Depending on its capabilities, the server may be able to use the original SDP file to re-establish a stream that it has dropped. 114
CHAPTER 9: Broadcast Features output types: 3GPP Release 5, 3GPP Release 6, MPEG-4 SDP: Helix Mobile Producer automatically generates, but does not upload, the SDP file used by the server to acquire the stream. Tip: RealNetworks recommends that you use one of the other Helix push methods when broadcasting from Helix Mobile Producer to Helix Mobile Server. Note: Because RTP-based servers may differ in their broadcast methods, be sure to test the server thoroughly before running an actual broadcast. For More Information: See RTP Push Destination on page 141 for instructions about setting up this type of broadcast. RTP Push Broadcast Steps The following figure shows the interaction between Helix Mobile Producer, an RTP-based server, and a media player in an RTP Push broadcast. RTP Push Broadcast Sequence of actions in an RTP Push broadcast: 1. As encoding begins, Helix Mobile Producer generates an SDP file. 2. The SDP file is uploaded to the server manually by any means, such as file copy or FTP. 3. The server uses the information in the SDP file to acquire the broadcast stream. 4. The server delivers the broadcast to the media player. Note: RTP-enabled media players typically use an SDP file to acquire a broadcast stream from the server. This is not the same SDP file generated by Helix Mobile Producer. Refer to your server documentation for information about generating the SDP file used by media players. 115
Helix Mobile Producer User s Guide Helix Pull Broadcast In pull broadcasting, Helix Mobile Producer begins to generate broadcast packets as soon as you start the encoding process. However, it does not deliver the broadcast stream until Helix Mobile Server requests the stream. server setup: Requires that Helix Mobile Server be configured as a pullenabled receiver. bandwidth: Each server receives a separate stream that it requests when needed and drops when no longer in use. feedback: No feedback statistics sent by the servers. reconnection: Each server can automatically re-establish a stream that it has dropped. output types: 3GPP Release 5, 3GPP Release 6, MPEG-4, RealMedia SDP: An SDP file is not required. Media players can request an SDP file using a URL that contains the /sdpgen/ mount point. For More Information: The section Helix Pull Destination on page 143 explains how to set up a pull broadcast. Helix Pull Broadcast Steps The following figure illustrates the interaction between Helix Mobile Producer, Helix Mobile Server, and a media player in a pull broadcast. Helix Pull Broadcasting Sequence of actions in a Helix Pull broadcast: 1. Helix Mobile Producer begins encoding the stream, but the output is not immediately sent to Helix Mobile Server. 2. The first audience member requests the broadcast, typically by clicking a link in a Web page. This launches the media player, which requests the broadcast stream from Helix Mobile Server. 116
CHAPTER 9: Broadcast Features 3. Helix Mobile Server requests the broadcast stream from Helix Mobile Producer, sending it information about the server address and ports to use. Once the connection is established, Helix Mobile Server sends keepalive requests as long as viewers are receiving the broadcast. 4. Helix Mobile Producer sends the broadcast stream to Helix Mobile Server, terminating the stream when it receives no more keep-alive messages. 5. Helix Mobile Server streams the broadcast to media players. Example of Pull Broadcasting An example of a pull broadcast is an online radio station that continuously encodes input. The stream is delivered to a specific Helix Mobile Server only if a listener requests the stream from that server. If all listeners on the server stop the broadcast, Helix Mobile Server drops the stream, re-requesting it only if new listeners request the broadcast. Stream Acquisition Latency Because a Helix Pull broadcast does not begin until the first media player requests the broadcast, the first viewer may experience a longer than normal delay as Helix Mobile Server contacts Helix Mobile Producer to acquire the broadcast stream. After the server acquires the stream, however, subsequent viewers experience no additional delay. Outgoing Bandwidth When you use pull splitting, you do not have control over how many Helix Mobile Servers pull the stream. Any server that knows the Helix Mobile Producer address, stream name, and access password can request the stream. You therefore have less control over your outgoing Helix Mobile Producer bandwidth than you do with push splitting, in which you define exactly which servers receive the stream. Note: Each Helix Mobile Server that requests the broadcast receives a separate stream. Multicasting is not available with pull splitting. URL for a Pull Broadcast The URL to a Helix Pull broadcast is longer than a URL to a push broadcast because it includes information about both the Helix Mobile Server receiver and the Helix Mobile Producer transmitter. 117
Helix Mobile Producer User s Guide The following example shows the general format for a basic Helix Pull broadcast that the viewer accesses by clicking a link in a Web page. For convenience, the example is displayed on two lines. The first line gives the receiver information. The second line supplies the transmitter parameters: http://receiver.example.com/sdpgen/broadcast/pull/ producer.example.com:3031/news/live.3gp The /sdpgen/ mount point launches the media player when the viewer clicks the link in a Web page. Helix Mobile Server automatically generates the SDP file used by the media player to connect to the broadcast. The /broadcast/ mount point is the default mount point used by Helix Mobile Server for a broadcast. Following the broadcast mount point is a path that indicates pull splitting is used, as in /pull/. The Helix Mobile Server receiver defines this path. The link s transmitter portion lists the Helix Mobile Producer IP address or host name, along with its listen port, as in producer.example.com:3031. A virtual path such as news/ is optional. It is included in the URL only if Helix Mobile Producer specifies this path along with the stream name. For More Information: See Virtual Paths on page 145. Server Broadcast Mode The broadcast method you use with Helix Mobile Producer affects only the delivery of the broadcast stream to the server. The broadcast server, in turn, determines the method for broadcasting the live stream to media players. For example, Helix Mobile Producer may deliver the stream to the server in pull mode while the server broadcasts in push mode. Options that you choose for the encoder-to-server broadcast stream do not necessarily affect streams that the server delivers to other servers or to media players. For example, you might choose a 20 percent forward error correction (FEC) rate in a push broadcast. This FEC rate affects only the encoder-toserver stream. A Helix Mobile Server transmitter can forward (split) the stream to a Helix Mobile Server receiver using a different FEC rate. Streams delivered to media players include no FEC packets. For More Information: Refer to the chapter on transmitters and receivers in Helix Mobile Server Administration Guide for 118
CHAPTER 9: Broadcast Features information about replicating streams from one server to another. Broadcast Transports When you run a push broadcast other than a multicast, you specify whether to use TCP or UDP for the broadcast stream sent to the server. The server, however, determines whether TCP or UDP is used in the broadcast streams replicated to media players. UDP The UDP transport is preferred because of its lower network overhead. However, UDP connections do not receive notice if broadcast packets are lost. A server can generally notify Helix Mobile Producer if it requires data to be resent, however. A firewall between Helix Mobile Producer and the server may block UDP packets. The best solution is to configure the firewall to allow UDP packets through the ports that Helix Mobile Producer and the server use for the broadcast data stream. TCP The TCP transport establishes a two-way connection between Helix Mobile Producer and the server. If a broadcast packet is lost, the network itself requests the packet to be resent. This makes TCP a highly reliable method for broadcasting on networks prone to data loss. TCP is also likely to pass through firewalls that you cannot configure to accept UDP communications. TCP incurs a higher network overhead, however. A server generally does not need all broadcast packets to keep the stream flowing. Packets re-requested by the TCP transport may arrive at Helix Mobile Server too late to be useful. Hence, using TCP involves network-related overhead that may not benefit the broadcast. Encoder Redundancy When broadcasting in Helix Push or Helix Advanced Push mode, you can provide encoder redundancy by using two or more Helix Mobile Producers to encode the same live event. 119
Helix Mobile Producer User s Guide When you start each broadcast stream, you specify the same stream name, but add a unique, numbered delimiter, such as.1 or.2. When the Helix Mobile Producers connect to Helix Mobile Server, they form a queue based on connection order. Consider this example: live.3gp.2 connects first live.3gp.3 connects second live.3gp.1 connects third Under normal circumstances all viewers receive the stream live.3gp, and have no knowledge of which Helix Mobile Producer encoded the stream. In the preceding example, live.3gp originates as live.3gp.2. If the Helix Mobile Producer delivering live.3gp.2 fails, the media players connect to the next live.3gp stream in the queue, which is live.3gp.3. If live.3gp.2 returns, it goes to the bottom of the queue. A subsequent failure of live.3gp.3 causes media players to connect to live.3gp.1, and so on. Helix Mobile Producer Redundancy Note: Encoder redundancy changes the broadcast URL. The Helix Mobile Server administrator may also require the use of a different delimiter, such as a tilde (~), in the stream identifier. Refer to the unicasting chapter of Helix Mobile Server Administration Guide. Tip: To provide optimal redundancy, each encoder should be as independent as possible. For example, use multiple video cameras connected to separate Helix Mobile Producer computers that use different power supplies and network connections. 120
CHAPTER 9: Broadcast Features Forward Error Correction When forward error correction (FEC) is used, Helix Mobile Producer adds error correction packets to the broadcast stream. If packets containing broadcast data are lost, Helix Mobile Server can often reconstruct the data using the error correction information. You can include forward error correction with broadcasts that use the UDP transport. The setting is ignored for any broadcast that uses TCP. Error Correction Percentage Tip: Forward error correction is most useful when sending a broadcast stream over a lossy network such as the Internet. If your Helix Mobile Producer and Helix Mobile Server are on the same local area network, you may not need to use any error correction. The greater the FEC percentage, the higher the packet loss protection and the greater the bandwidth needed for the stream. A standard value of 20 percent means that one in five packets is for error correction. The stream also uses 20 percent more bandwidth than if error correction was turned off. Redundant Stream Protection Note: Using FEC increases the bandwidth only for the stream between Helix Mobile Producer and Helix Mobile Server. It does not affect the bandwidth of the broadcast streams delivered to media players by Helix Mobile Server. You can turn the FEC percentage up to 100%, effectively creating a redundant stream that provides maximum protection against packet loss. This doubles the outgoing bandwidth between Helix Mobile Producer and Helix Mobile Server, however. When you use full stream redundancy, you can set an offset in seconds between each packet and its redundant packet. This reduces the chance that both packets will be lost. For example, an offset value of 2 means that after it transmits a certain packet to Helix Mobile Server, Helix Mobile Producer waits two seconds before transmitting the redundant packet. Note: Packet redundancy does not protect against the failure of the encoding process. Use encoder redundancy to protect 121
Helix Mobile Producer User s Guide FEC Rates and Receiver Buffering against Helix Mobile Producer going offline during a broadcast. See Encoder Redundancy on page 119. When you use FEC, the Helix Mobile Server administrator may need to increase the buffering of the broadcast stream. If an FEC packet arrives after the server broadcasts the portion of the stream that the FEC packet corrects, the packet is useless. Full Stream Redundancy Buffering Levels If you use full stream redundancy, Helix Mobile Server must buffer the stream at least as long as the redundant packet offset value. For example, if Helix Mobile Producer transmits redundant stream packets five seconds after the initial stream packets, the Helix Mobile Server receiver needs to buffer the stream for a minimum of five seconds. Partial Stream Redundancy Buffering Levels When you use partial stream redundancy, broadcasting low-bandwidth video streams with an error correction rate lower than 20 percent may require raising the receiver buffering time. For More Information: The chapter on transmitters and receivers in Helix Mobile Server Administration Guide explains how to set the receiver buffering based on the transmitter FEC rate. Archiving When you broadcast a live event, you can write the stream to a clip for archiving or for streaming on-demand. You can archive a RealMedia clip through Helix Mobile Producer, Helix Mobile Server, or both. A primary consideration is disk space. Writing a long broadcast to a clip can consume considerable disk space depending on the broadcast bandwidth. Tip: The server may have more available space than your Helix Mobile Producer computer. As well, creating the archive on the server eliminates the need to upload the archive clip later if you want to stream it on demand. 122
CHAPTER 9: Broadcast Features Helix Mobile Producer Archiving To archive a broadcast on Helix Mobile Producer, you define a clip destination along with the server destination. Helix Mobile Producer automatically creates a new clip if the existing archive reaches the operating system limit (typically 2 or 4 Gigabytes). Tip: If you run a RealMedia broadcast from the command line or manually create a job file for the broadcast, you can specify a different file-rolling limit based on broadcast time or file size. For More Information: The section Output File Destination on page 70 explains how to create an archive clip. Helix Mobile Server Archiving The Helix Mobile Server administrator can turn on archiving for RealMedia broadcasts. Like Helix Mobile Producer, Helix Mobile Server can create multiple archive files based on the broadcast time (such as a new file every 15 minutes), or file size (20 Megabytes per file, for example). The administrator can also set up selective archiving rules that archive only certain broadcast streams based on the presence of a virtual path in the stream name. For More Information: See the unicasting chapter of Helix Mobile Server Administration Guide for information about archiving. Version 6 IP Addresses Helix Mobile Producer supports DNS names, version 4 IP addresses (IPv4), and version 6 IP addresses (IPv6) for delivering a broadcast stream to a server. Note the following about using IPv6 addresses: Helix Mobile Producer supports full IPv6 syntax, such as the following: 1080:0:0:0:8:800:200C:417A It also supports the use of a double colon ( :: ) to compress leading or trailing fields containing only zeroes, as in the following: 1080::8:800:200C:417A Helix Mobile Producer will not broadcast to a reserved multicast address. However, it will multicast to permanent or nonpermanent addresses, which always begin with FF, as in FF15:0:0:0:0:0:0:101. 123
Helix Mobile Producer User s Guide Tip: Whenever possible, use a domain name instead of an IPv6 address. 124
Chapter 10: SERVER DESTINATIONS CHAPTER 10 Server destinations deliver a live stream to a server. The server then broadcasts the stream to media players. The procedure for delivering a live stream depends on the type of broadcast server that Helix Mobile Producer uses. Note: You must create an output as explained in Chapter 5 before you can assign a server destination to an output. For More Information: Refer to Chapter 9 for background about broadcasting options. Server Destinations You create a server destination for a selected output in the Output Servers section of the Output tab. Each server destination defines a set of broadcast parameters, such as the server IP address and password. Output Servers Settings Output Servers Buttons The buttons in the Output Servers section allow you to configure the server destinations: Add a destination server template to the selected output. Edit the broadcast settings for the selected server template. 125
Helix Mobile Producer User s Guide Save the settings to a new server template. Delete the selected server destination from the output. (This does not delete the template.) Server Destination Templates Click the Add button to add a server destination to the output highlighted in the Outputs List. The pop-up dialog displays the server templates stored in the Helix Mobile Producer servers subdirectory. Add Server Destinations In the Templates of Server Type drop-down, choose one of the following based on the type of broadcast you want to run: All Helix Broadcast Types All broadcast types for Helix Mobile Server. Helix Push See Helix Push Destination on page 127. Helix Advanced Push See Helix Advanced Push Destination on page 132. Helix Multicast Push See Helix Multicast Push Destination on page 137. RTP Push See RTP Push Destination on page 141. Helix Pull See Helix Pull Destination on page 143. 126
CHAPTER 10: Server Destinations If you have defined a customized server destination template that you want to use, click the template name. Otherwise, select the Default template. Then click Add to Job. Tip: Using the preferences, you can select a server destination that is used automatically whenever you create an output. See Output Preferences on page 182. Template Filtering by Name You can filter the templates shown in the server destinations pop-up by typing a string in the Where name matches field. Only destination names that contain the string then display. Text matching is not case-sensitive. Multiple Server Destinations You can deliver each broadcast stream to one or more broadcast servers. In the server destinations pop-up, use Ctrl+click to select multiple, discrete server destinations. Use Shift+click to select a range of destinations. You can also add destinations one at a time by clicking the Add button repeatedly. Note: Each push server destination you add increases the outgoing bandwidth requirements, unless you use multicasting. Server Template Creation After you set up your server destinations, you can save modifications for future jobs. Once you finish customizing a server destination, highlight the server destination name and click the Save As button. A standard save dialog allows you to choose a new template name. Or you can select an existing template to overwrite that template. Templates are saved in servers subdirectory of the Helix Mobile Producer installation directory using the file extension.rpsd. Tip: Use a descriptive name that clearly identifies the purpose of the template. Helix Push Destination A Helix Push broadcast is a simple method for delivering a live stream of any output type to Helix Mobile Server. Helix Mobile Producer delivers the 127
Helix Mobile Producer User s Guide broadcast stream to the destination Helix Mobile Server as soon as encoding begins. Helix Push Basic Settings Note: If you are not familiar with this broadcast method, refer to the section Helix Push Broadcast on page 109 for background information. A Helix Push destination defines the stream name and Helix Mobile Server address, along with a name and password that provides access to the server. Basic Settings for the Helix Push Server Destination Name Enter a description for this server destination in the Name field. For example, the name might identify the broadcast method and indicate the Helix Mobile Server that receives the stream. This name is for your reference only. It does not affect the broadcast. Server Type In the Server Type drop-down, select Helix Push. Stream Name In the Stream Name field, enter a name for the broadcast stream. This name should use the appropriate extension for the output type. It appears in links to the broadcast URL. Note: The stream name can include uppercase or lowercase letters, numbers, an underscore (_), and a hyphen (-). Spaces are not allowed. 128
CHAPTER 10: Server Destinations Virtual Paths If you want to archive or split the broadcast on Helix Mobile Server, the server administrator first sets up a virtual path such as news/ that defines archiving or splitting rules. You then precede the stream name with this path, as in news/live.3gp, to utilize the rule. For More Information: See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide for details about using virtual paths. Encoder Redundancy If you are using encoder redundancy, include the appropriate stream delimiter and a unique number for this encoder. For example: live.3gp.2 For More Information: See Encoder Redundancy on page 119. Server Address For Server Address, enter the version 4 IP address, version 6 IP address, or DNS name of the Helix Mobile Server that receives the broadcast stream. The following are examples of each type of address: 207.188.7.176 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 helixserver.example.com. Server HTTP Port For Server HTTP Port, specify the HTTP port value on Helix Mobile Server. The default value is port 80, which is the default HTTP port on Helix Mobile Server. Helix Mobile Producer uses this port to contact Helix Mobile Server once encoding has begun. Data Ports When Helix Mobile Producer contacts Helix Mobile Server on its HTTP port, the two negotiate which ports to use for the broadcast data. The broadcast requires at least two data ports on Helix Mobile Server whether the transport is TCP or UDP. Possible ports are in the range 50001 to 50050 unless the Helix Mobile Server administrator changes the default range. 129
Helix Mobile Producer User s Guide Username and Password In the Username and Password fields, enter a valid encoder user name and password. These values are defined in the Helix Mobile Server authentication database under the SecureRBSEncoder realm. The broadcast connection fails if either value is incorrect. Save Password in Job For More Information: For details, refer to the unicasting and authentication chapters of Helix Mobile Server Administration Guide. Click Save Password in Job to store the password in the current job file. Warning! The password is saved as plain text in the server template and any job file that later uses this server destination. Be sure to maintain appropriate security on these files. Transport Under Transport, click the radio button for UDP or TCP to select the transport to use for the broadcast stream. Helix Push Advanced Settings Note: The monitoring connection of a Helix Push broadcast always uses TCP whether the data transport stream is UDP or TCP. For More Information: See Broadcast Transports on page 119. Click the Advanced Settings button to display additional options for the Helix Push server destination. You should not modify the advanced settings values unless you have a specific reason to do so. 130
CHAPTER 10: Server Destinations Advanced Settings for the Helix Push Server Destination Reconnect Interval The Reconnect Interval value defines the number of seconds that Helix Mobile Producer waits before attempting to reconnect to Helix Mobile Server. The interval period begins once the operating system terminates the TCP accounting connection because it has received no response from Helix Mobile Server. The default value is 30. Statistics Update Interval The statistics update interval determines how frequently Helix Mobile Server sends statistics reports to Helix Mobile Producer during a Helix Push broadcast. The default value is 30 seconds. Listen Address Helix Mobile Producer uses the IP address or domain name listed in the Listen Address field to listen for resend requests from Helix Mobile Server. Use the drop-down to select the version 4 or version 6 IP address that you want to use on the Helix Mobile Producer machine. You can also enter a domain name or IP address manually. Tip: Using an IP address of the Helix Mobile Producer machine may not work when you broadcast through a network address translation (NAT) firewall. In this case, set the listen address to 0.0.0.0 instead. Accept Resend Requests If Helix Mobile Server loses broadcast packets and cannot reconstruct them using forward error correction, it can request that Helix Mobile Producer 131
Helix Mobile Producer User s Guide resend the packets from its stream buffer. To enable Helix Mobile Producer to respond to these requests, check the Accept Resend Requests from Server box. Tip: It s generally OK to accept resend requests. However, because these requests increase network overhead slightly, you may want to turn the resend feature off to keep tight control over bandwidth. Forward Error Correction The Percent Error Correction field sets the percentage of stream bandwidth dedicated to forward error correction packets if the transport is UDP. A value of 20, for example, increases outgoing bandwidth 20 percent by making every fifth packet an FEC packet. If you set the error correction percentage in the range of 51 to 100, you set up a redundant stream. In this case, the Redundant Packets Offset field defines how many seconds separate an original packet from its redundant packet. For More Information: The section Forward Error Correction on page 121 provides background about FEC features. Helix Advanced Push Destination In a Helix Advanced Push broadcast, Helix Mobile Producer acts as a transmitter for delivering a live stream of any output type. The Helix Mobile Server that receives the broadcast stream is set up as a receiver. This robust broadcast method requires coordinated setup on both ends. Helix Advanced Push Basic Settings Note: If you are not familiar with this broadcast method, refer to the section Helix Advanced Push Broadcast on page 111 for background information. For More Information: The chapter on transmitters and receivers in Helix Mobile Server Administration Guide explains how to set up Helix Mobile Server as a receiver. A Helix Advanced Push destination sets the stream name and provides the information necessary to connect to the Helix Mobile Server receiver. 132
CHAPTER 10: Server Destinations Basic Settings for the Helix Advanced Push Server Destination Name Enter a description for this server destination in the Name field. For example, the name might identify the broadcast method and indicate the intended receiver. This name is for your reference only. It does not affect the broadcast. Server Type In the Server Type drop-down, select Helix Advanced Push. Stream Name In the Stream Name field, enter a name for the broadcast stream. This name should use the appropriate extension for the output type. It appears in links to the broadcast URL. Note: The stream name can include uppercase or lowercase letters, numbers, an underscore (_), and a hyphen (-). Spaces are not allowed. Virtual Paths If you want to archive or split the broadcast on Helix Mobile Server, the server administrator first sets up a virtual path such as news/ that defines archiving or splitting rules. You then precede the stream name with this path, as in news/live.3gp, to utilize the rule. For More Information: See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide for details about using virtual paths. 133
Helix Mobile Producer User s Guide Encoder Redundancy If you are using encoder redundancy, include the appropriate stream delimiter and a unique number for this encoder. For example: live.3gp.2 For More Information: See Encoder Redundancy on page 119. Server Address For Server Address, enter the version 4 IP address, version 6 IP address, or DNS name of the Helix Mobile Server receiver used for the broadcast. The following are examples of each type of address: Server Port Password 207.188.7.176 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 helixserver.example.com. Note: The Helix Mobile Server receiver definition must specify the Helix Mobile Producer IP address as its transmitter source. See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. For Server Port, specify a Helix Mobile Server port used by the receiver for incoming data. Receiver ports are typically 30001 to 30020, but the Helix Mobile Server administrator may change this range. The default server port that Helix Mobile Producer uses for data transmission is 30001. In the Password field, enter a valid receiver password. This password is stored as part of the Helix Mobile Server receiver configuration. Note the following: The password does not need to be defined in the Helix Mobile Server authentication database. A user name is not needed with this type of broadcast. Optionally, the receiver can require no authentication. In this case, leave Password blank. Warning! Non-authenticated transmission should be used only if Helix Mobile Producer and Helix Mobile Server are on the 134
CHAPTER 10: Server Destinations same local network and a firewall blocks attempts by outside encoders to reach Helix Mobile Server. Save Password in Job Click Save Password in Job to store the password in the current job file. Transport Warning! The password is saved as plain text in the server template and any job file that later uses this server destination. Be sure to maintain appropriate security on these files. Under Transport, click the radio button for UDP or TCP to select the transport to use for the broadcast stream. Note: The Helix Mobile Server receiver configuration must specify the same transport. See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. For More Information: See Broadcast Transports on page 119. Helix Advanced Push Advanced Settings Click the Advanced Settings button to display additional options for the Helix Advanced Push server destination. You should not modify the advanced settings values unless you have a specific reason to do so. Advanced Settings for the Helix Advanced Push Server Destination Reconnect Interval The Reconnect Interval setting defines the interval in seconds at which Helix Mobile Producer encodes metadata values into the broadcast stream. These 135
Helix Mobile Producer User s Guide values allow Helix Mobile Server to reconnect to a dropped broadcast stream. The default is 30 seconds. Listen Address Helix Mobile Producer uses the IP address or domain name listed in the Listen Address field to listen for resend requests from Helix Mobile Server. Use the drop-down to select the version 4 or version 6 IP address that you want to use on the Helix Mobile Producer machine. You can also enter a domain name or IP address manually. Accept Resend Requests Tip: Using an IP address of the Helix Mobile Producer machine may not work when you broadcast through a network address translation (NAT) firewall. In this case, set the listen address to 0.0.0.0 instead. If Helix Mobile Server loses broadcast packets and cannot reconstruct them using forward error correction, it can request Helix Mobile Producer to resend the packets from its stream buffer. To enable Helix Mobile Producer to respond to these requests, check the Accept Resend Requests from Server box. Tip: It s generally OK to accept resend requests. However, because these requests increase network overhead slightly, you may want to turn the resend feature off to keep tight control over bandwidth. Note: The Helix Mobile Server receiver configuration can turn off the feature for making resend requests. In this case, the Helix Mobile Producer setting has no effect because the server will never make these requests. Forward Error Correction The Percent Error Correction field sets the percentage of stream bandwidth dedicated to forward error correction packets if the transport is UDP. A value of 20, for example, increases outgoing bandwidth 20 percent by making every fifth packet an FEC packet. If you set the error correction percentage in the range of 51 to 100, you set up a redundant stream. In this case, the Redundant Packets Offset field defines how many seconds separate an original packet from its redundant packet. 136
CHAPTER 10: Server Destinations For More Information: The section Forward Error Correction on page 121 provides background about FEC features. Helix Multicast Push Destination In a multicast, Helix Mobile Producer acts as a transmitter that delivers a live stream of any output type. Multiple, multicast-enabled Helix Mobile Servers function as receivers. This configuration requires a multicast-enabled network as well as coordinated setup on both ends. Helix Multicast Push Basic Settings Note: If you are not familiar with this broadcast method, refer to the section Helix Multicast Push Broadcast on page 113 for background information. For More Information: The chapter on transmitters and receivers in Helix Mobile Server Administration Guide explains how to set up each Helix Mobile Server receiver. The following figure illustrates the basic settings for a Helix Multicast Push destination. Basic Settings for the Helix Multicast Push Server Destination Tip: Unlike Helix Push and Helix Advanced Push broadcasts, which require a separate server destination for each broadcast server, a Helix Multicast Push broadcast requires just one server destination. Any number of multicast-enabled servers can then receive the stream by listening to the defined multicast address and port. 137
Helix Mobile Producer User s Guide Name Enter a description for this server destination in the Name field. For example, the name might identify the broadcast as a multicast to a known set of receivers. This name is for your reference only. It does not affect the broadcast. Server Type In the Server Type drop-down, select Helix Multicast Push. Stream Name In the Stream Name field, enter a name for the broadcast stream. This name should use the appropriate extension for the output type. It appears in links to the broadcast URL. Note: The stream name can include uppercase or lowercase letters, numbers, an underscore (_), and a hyphen (-). Spaces are not allowed. Virtual Paths If you want to archive or split the broadcast on Helix Mobile Server, the server administrator first sets up a virtual path such as news/ that defines archiving or splitting rules. You then precede the stream name with this path, as in news/live.3gp, to utilize the rule. For More Information: See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide for details about using virtual paths. Multicast Address For Multicast Address, enter a version IP version 4 or 6 multicast address: IPv4 multicast addresses are in the range 224.0.0.0 to 239.255.255.255. IPv6 multicast addresses have the prefix ff00::/8. Note: The Helix Mobile Server receiver definition must specify the Helix Mobile Producer IP address as its transmitter source. It must also define udp/multicast as the transport. See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. 138
CHAPTER 10: Server Destinations Multicast Port For Multicast Port, specify a Helix Mobile Server port used by the receiver for incoming data. Receiver ports are typically 30001 to 30020, but the Helix Mobile Server administrator may change this range. The default Helix Mobile Server port that Helix Mobile Producer uses for data transmission is 30001. Note: Ensure that any firewalls between Helix Mobile Producer and the Helix Mobile Servers allow UDP data sent to Helix Mobile Server on the chosen port. Password In the Password field, enter a valid receiver password. This password is stored as part of the Helix Mobile Server receiver configuration. Note the following: The password does not need to be defined in the Helix Mobile Server authentication database. A user name is not needed with this type of broadcast. Optionally, the receiver can require no authentication. In this case, leave Password blank. Warning! Non-authenticated transmission should be used only if Helix Mobile Producer and all Helix Mobile Servers are on the same local network and a firewall blocks attempts by outside encoders to reach any of the Helix Mobile Servers. Save Password in Job Click Save Password in Job to store the password in the current job file. Warning! The password is saved as plain text in the server template and any job file that later uses this server destination. Be sure to maintain appropriate security on these files. Transport For a multicast, the Transport field is not selectable because multicasts always use the udp/multicast transport. 139
Helix Mobile Producer User s Guide Helix Multicast Push Advanced Settings Click the Advanced Settings button to display additional options for the Helix Multicast Push server destination. You should not modify the advanced settings values unless you have a specific reason to do so. Advanced Settings for the Helix Multicast Push Server Destination Multicast TTL For Multicast TTL, specify a packet time-to-live of 0 to 255. As a multicast data packet passes through a multicast-enabled router, its time-to-live decreases by 1. When the value reaches 0, the router discards the data packet. The larger the value, the greater the distance each packet can travel. The following table summarizes possible values. Time to Live (TTL) Values TTL Value Packet Range 0 local host 1 local network (subnet) 16 intranet 32 site 64 region 128 continent 255 world Tip: The default value of 16 typically keeps multicast packets within an internal network. Reconnect Interval The Reconnect Interval setting defines the interval in seconds at which Helix Mobile Producer encodes metadata values into the broadcast stream. These 140
CHAPTER 10: Server Destinations values allow Helix Mobile Servers to reconnect to a dropped broadcast stream. The default is 30 seconds. Forward Error Correction The Percent Error Correction field sets the percentage of stream bandwidth dedicated to forward error correction packets. A value of 20, for example, increases outgoing bandwidth 20 percent by making every fifth packet an FEC packet. If you set the error correction percentage in the range of 51 to 100, you set up a redundant stream. In this case, the Redundant Packets Offset field defines how many seconds separate an original packet from its redundant packet. For More Information: The section Forward Error Correction on page 121 provides background about FEC features. RTP Push Destination An RTP Push broadcast is designed to deliver a broadcast stream of RTP-based media to any standards-based, RTP-enabled server. It allows you to deliver a broadcast stream to servers other than Helix Mobile Server. RTP Push Settings Note: If you are not familiar with this broadcast method, refer to the section RTP Push Broadcast on page 114 for background information. An RTP Push destination sets the stream name and provides the information necessary to connect to the RTP-based server. 141
Helix Mobile Producer User s Guide Basic Settings for the RTP Push Server Destination Note: The RTP protocol does not support the use of user names and passwords. Name Enter a description for this server destination in the Name field. For example, the name might identify the broadcast method and indicate the intended receiver. This name is for your reference only. It does not affect the broadcast. Server Type In the Server Type drop-down, select RTP Push. Stream Name In the Stream Name field, enter a name for the broadcast stream. This name should use the.3gp file extension. Note: The stream name can include uppercase or lowercase letters, numbers, an underscore (_), and a hyphen (-). Spaces are not allowed. Server Address For Server Address, enter the version 4 IP address, version 6 IP address, multicast address, or DNS name of the RTP-based server used for the broadcast. The following are examples: 207.188.7.176 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 broadcast.example.com. 142
CHAPTER 10: Server Destinations Server Port For Server Port, specify the port used by the server for incoming data. For More Information: Refer to the server documentation for information about acceptable port vales. SDP File Name Click the Save As button and choose the path and file name, including an.sdp file extension, for an SDP file. When encoding begins, Helix Mobile Producer generates the SDP file in the specified location. This SDP contains the stream and port information needed by the server to acquire the stream. Note: The SDP file must be manually uploaded to a specific directory on the server machine. You can typically perform this upload using a file copy command or FTP. For More Information: Refer to your server documentation for information about where to place the encoder SDP. That documentation should also explain how to generate an SDP file used by media players to acquire a broadcast stream from the server. Transport Under Transport, click the radio button for UDP or TCP to select the transport to use for the broadcast stream. For More Information: See Broadcast Transports on page 119. Helix Pull Destination In pull broadcasting, Helix Mobile Producer begins to generate broadcast packets as soon as you start the encoding process. However, it does not deliver the broadcast stream until a Helix Mobile Server requests the stream. In a Helix Pull broadcast, Helix Mobile Producer acts as a transmitter and Helix Mobile Server functions as a pull-enabled receiver. Note: If you are not familiar with this broadcast method, refer to the section Helix Pull Broadcast on page 116 for background information. 143
Helix Mobile Producer User s Guide Helix Pull Basic Settings For More Information: The chapter on transmitters and receivers in Helix Mobile Server Administration Guide explains how to set up the server as a pull-enabled receiver. The following figure illustrates the basic settings for a Helix Pull destination. Basic Settings for the Helix Pull Server Destination Name Tip: Unlike Helix Push and Helix Advanced Push broadcasts, which require a separate server destination for each broadcast server, a Helix Pull broadcast requires just one server destination. Any number of servers can then pull the stream by contacting Helix Mobile Producer on its listen port. Enter a description for this server destination in the Name field. With an online radio station, for example, the name might identify the type of music being broadcast. This name is for your reference only. It does not affect the broadcast. Server Type In the Server Type drop-down, select Helix Pull. Stream Name In the Stream Name field, enter a name for the broadcast stream. This name should use the appropriate extension for the output type. It appears in links to the broadcast URL. 144
CHAPTER 10: Server Destinations Note: The stream name can include uppercase or lowercase letters, numbers, an underscore (_), and a hyphen (-). Spaces are not allowed. Virtual Paths If you want to archive or split the broadcast on Helix Mobile Server, the server administrator first sets up a virtual path such as news/ that defines archiving or splitting rules. You then precede the stream name with this path, as in news/live.3gp, to utilize the rule. For More Information: See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide for details about using virtual paths. Encoder Address For Encoder Address, select the version 4 or version 6 IP address used by Helix Mobile Producer to listen for pull requests. If your computer has just one IP address, that address is selected by default in the drop-down list.the following are examples of each type of address: 207.188.7.176 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 helixserver.example.com. Encoder Listen Port Note: The Helix Mobile Server receiver definition must specify the Helix Mobile Producer IP address as its transmitter source. See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. For Encoder Listen Port, specify the Helix Mobile Producer port used to listen for stream pull requests. You can use any available port up to 65535. The default is 3031. Note: The Helix Mobile Server receiver must be configured to contact Helix Mobile Producer on this port. See the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. 145
Helix Mobile Producer User s Guide Data Ports Helix Mobile Producer does not transmit broadcast data on the listen port. Rather, both Helix Mobile Producer and Helix Mobile Server define a range of ports for stream data. They negotiate which ports to use during the initial pull request. The default ports on both are 30001 to 30020. Tip: Ensure that any firewalls between Helix Mobile Producer and Helix Mobile Server allow UDP data sent to Helix Mobile Server on the ports in the defined range. Password In the Password field, enter a valid receiver password. This password is stored as part of the Helix Mobile Server receiver configuration. Note the following: The password does not need to be defined in the Helix Mobile Server authentication database. A user name is not needed with this type of broadcast. Optionally, the receiver can require no authentication. In this case, leave Password blank. Save Password in Job Warning! Non-authenticated transmission should be used only if Helix Mobile Producer and Helix Mobile Server are on the same local network and a firewall blocks attempts by outside encoders to reach Helix Mobile Server. For More Information: For receiver configuration details, refer to the chapter on transmitters and receivers in Helix Mobile Server Administration Guide. Click Save Password in Job to store the password in the current job file. Warning! The password is saved as plain text in the server template and any job file that later uses this server destination. Be sure to maintain appropriate security on these files. Transport For a pull broadcast, the Transport field is not selectable because pull broadcasts use the transport defined by the Helix Mobile Server receiver. 146
CHAPTER 10: Server Destinations Helix Pull Advanced Settings Click the Advanced Settings button to display additional options for the Helix Pull server destination. You should not modify the advanced settings values unless you have a specific reason to do so. Advanced Settings for the Helix Pull Server Destination Note: In a Helix Pull broadcast, the Helix Mobile Server receiver configuration sets up most of the advanced broadcast features, such as forward error correction parameters. Keep Alive Timeout The Keep Alive Timeout value specifies the number of seconds that Helix Mobile Producer waits before it stops transmitting broadcast packets after it receives no more keep-alive messages from Helix Mobile Server. This conserves bandwidth by dropping a stream no longer in use. The Helix Mobile Server that drops the stream can re-establish it if necessary, however. The default timeout value is 30 seconds. Tip: You can raise the value if previous pull broadcasts have timed out while viewers were still receiving the broadcast. RealNetworks does not recommend that you lower the value. Note: A keep-alive timeout stops only the transmission of the packets. It does not stop the encoding of the packets. You must stop the encoder manually. 147
148 Helix Mobile Producer User s Guide
Part IV: MONITORING PART IV This section explains how to monitor an encoding session to check for errors and view encoding statistics. It also explains how to use SNMP to monitor Helix Mobile Producer activity.
Chapter 11: JOB MONITORING CHAPTER 11 This chapter explains how to start an encoding job and describes how to monitor a job in progress. Monitoring Tab Click the Monitoring tab to display the controls that help you to monitor encoding jobs. Monitoring Tab The controls on the Monitoring tab allow you to do the following: Start and stop an encoding job (see Starting a Job on page 152). Preview video output (see Preview Section on page 152). Monitor audio levels (see Audio Meters on page 153). 151
Helix Mobile Producer User s Guide View session errors (see Session Logging on page 155). Note: The settings advisor may also display above the Monitoring tab if Helix Mobile Producer detects problems with the encoding settings. The section Settings Advisor on page 156 explains this feature. Starting a Job Once you have set up the inputs and outputs for a job and there are no critical error messages noted by the settings advisor, you can start the encoding process. Do this by selecting Control>Start Job, pressing Ctrl+j, or clicking the Start Job button on the toolbar. When you encode a clip or set a duration on captured input (see Input Duration on page 43), encoding stops automatically when the job is complete. To stop the encoding process manually, select Control>Stop Job or click the Stop Job button on the toolbar. Note: If there are multiple outputs or destinations, stopping the job halts the encoding process for all outputs and destinations. You cannot stop the encoding for one output or for one destination (such as a clip) while continuing it for another destination (such as a broadcast server). Preview Section The top section of the Monitoring tab contains two preview monitors. When the encoding job includes video, the input source video plays in the left-hand monitor, which shows the effects of all prefilters that have been applied. The encoded output displays in the right-hand monitor. 152
CHAPTER 11: Job Monitoring Input and Output Preview Monitors The control in the upper-left corner of the Preview section allows you to show or hide the monitors. Monitors Hidden Click to expand the Preview section. Monitors Displayed Click to hide the section. Multiple Output Display Tip: Hiding the monitors can speed the encoding process by eliminating the need for Helix Mobile Producer to display the video onscreen. This is useful during live broadcasts in which you want to conserve as much processing power as possible. When you encode multiple outputs, use the Output drop-down to select which output to monitor in the right-hand monitor window. If the output encodes more than one audience, select the audience by encoding speed using the Bitrate drop-down. Audio Meters As you encode the output, you can monitor the audio levels for both the input audio and the encoded output audio. 153
Helix Mobile Producer User s Guide Audio Meter Clipped Audio By monitoring the audio meters, you can ensure that the audio levels are in the optimal dynamic range: green Normal dynamic range. red Audio is close to being overmodulated. For More Information: The section Audio Level on page 52 explains how to use the audio gain prefilter to boost or cut the input s audio level. If audio registers above the possible dynamic range, the clipping indicator above the audio meter lights up. To eliminate the distortion, you may need to modify the setting of the audio level prefilter or adjust the settings in your audio mixing hardware or software. For example, the sound capture card may have its mixer levels set too high. In this case, adjust the analog gains leading to your sound card input so that the input audio meter on Helix Mobile Producer never rises to the 0 db level. If needed, modify audio gain through an external mixer board if the sound card s audio mixer does not provide adequate control. Tip: External mixing may lead to sound levels that are too low on average. In this case, you can use the audio level prefilter to bring the signal back up to acceptable levels. This is safe to do because the prefilter will not introduce clipping. 154
CHAPTER 11: Job Monitoring Session Logging Helix Mobile Producer records messages about encoding tasks as they occur. This informs you about Helix Mobile Producer performance, such as its CPU use. After a job has run, you can view the producer.log log file in the main installation directory to find encoding errors messages. You can also use the session log viewer to monitor encoding information as the job runs. Session Log Viewer For More Information: The preferences file (producer.pref) sets the log file location and features. It also determines which types of messages display in the log viewer. For details, refer to Log File Preferences on page 179. The session log viewer appears at the bottom of the Monitoring tab. It provides a real-time view of log messages as Helix Mobile Producer generates them. The control in the upper-left corner of the Session Logging section allows you to show or hide the previews. Session Logging Hidden Click to display Session Logging. Session Logging Displayed Click to hide the section. Logging Types Tip: Click Clear Log to remove existing messages from the screen. This does not delete the messages from the log file, however. Note: Watching the log viewer is useful when you encode a live broadcast. The messages can alert you to problems such as excess CPU consumption and lowered frame rates. You can organize the log messages by type by clicking the Type column header. All messages are one of the following types: error warning Error messages indicate significant problems that have occurred in the encoding process. They typically cause the job to fail. Warning messages indicate serious issues that occurred but did not cause the encoding job to fail. 155
Helix Mobile Producer User s Guide informational diagnostic Informational messages provide important information about the encoding operation. Diagnostic messages convey non-critical messages about the encoding operation. Tip: The preferences file (producer.pref) determines which message types are logged. By default, diagnostic messages are not recorded. See Log File Preferences on page 179. For More Information: For information about changing the logging settings, refer to Log File Preferences on page 179. Settings Advisor Helix Mobile Producer displays the settings advisor at the top of the Monitor, Input, and Output tabs to inform you that it has detected problems with the selected encoding settings. All messages displayed by the settings advisor are flagged to indicate the severity of the message. Error Job cannot run using the current settings. You must correct the problem before the job will start. Warning Selected settings do not comply with standards. The job will run but the encoded content may not play on some media players. Information Selected settings do not comply with best practices. However, the encoded content is likely to play on most media players. Note: Click the question mark icon ( ) to the right of the message to display detailed information about the problem. Tip: Click Settings Advisor on the toolbar to toggle the display of the settings advisor. 156
Chapter 12: SNMP CHAPTER 12 Using Simple Network Monitoring Protocol (SNMP), you can monitor Helix Mobile Producer from an SNMP-enabled management system. Tip: Before implementing SNMP on Helix Mobile Producer, be sure that you understand the basics of SNMP monitoring and know how to operate your chosen SNMP management system. SNMP Setup To implement SNMP monitoring, Helix Mobile Producer communicates with a master agent, using the proprietary AgentX protocol. The master agent is an executable program included with the Helix Mobile Producer installation. The master agent then communicates with the management system using the SNMP protocol. Helix Mobile Producer SNMP Support To configure SNMP support: 1. Helix Mobile Producer is preconfigured to support SNMP. The settings in its preferences file, producer.pref, can turn SNMP on and off as well as configure alerts that are reported to the management system. Check these settings, changing them as necessary. 157
Helix Mobile Producer User s Guide For More Information: See SNMP Preferences on page 189. 2. Configure the master agent. This involves the following steps. a. Determine which SNMP protocol to use. For More Information: See SNMP Protocols on page 158. b. Configure the master agent settings in the configuration file (snmpmaster.cfg). For More Information: See Master Agent Configuration on page 160. c. Define users and security permissions in the configuration file (snmpmaster.cfg). For More Information: See SNMP Security on page 162. d. Optionally, set up a view access control model in the configuration file (snmpmaster.cfg). For More Information: See View Access Control Model on page 163. e. Start the master agent. For More Information: See Master Agent Start-Up on page 166. 3. On your SNMP management system, compile the MIB file named snmpproducer.my. For More Information: See Management System on page 167. SNMP Protocols The master agent uses one of the following versions of the SNMP protocol to communicate with the management system: SNMPv1 version 1 (no encryption) SNMPv2c version 2c (no encryption) SNMPv3 version 3 (no encryption) 158
CHAPTER 12: SNMP Authentication Protocols Security Levels Tip: Versions 1 and 2c are recommended only when both Helix Mobile Producer and the management system reside behind a firewall on the same private network. Note: Helix Mobile Producer does not support SNMP over Internet Protocol version 6 (IPv6). Components must use IPv4 addresses. SNMPv3 is suitable for communications over an unprotected network. The User-based Security Model (USM) for SNMPv3 defines two authentication protocols, both of which are supported for Helix Mobile Producer SNMP: HMAC-MD5-96 This protocol is based on MD5. Operations using MD5 occur faster than those using SHA. HMAC-SHA-96 This protocol is based on SHA-1. SHA provides a stronger security mechanism than MD5. SNMPv3 defines three levels of security. The lowest level (noauthnopriv) does not provide authentication or privacy, and is comparable to SNMP version 1. 159
Helix Mobile Producer User s Guide The second level (AuthNoPriv) provides authentication, but no privacy. The third level (AuthPriv) provides authentication and encryption for all messages. SNMP Version version 1 (SNMPv1) version 2 (SNMPv2c) version 3 (SNMPv3) Authentication Mode noauthnopriv noauthnopriv noauthnopriv authnopriv authpriv SMMP Versions and Authentication Modes Operation Authentication is performed by matching an unencrypted community string. This method is not suitable for communication across an unsecured network. This mode provides authentication based on the HMAC-MD5 or HMAC-SHA algorithm. This mode provides authentication based on the HMAC-MD5 or HMAC-SHA algorithm. It also uses encryption based on the CBC-DES (DES-56) standard. Master Agent Configuration The master agent is the intermediary through which the SNMP plug-in and the management system communicate. It must always run on the Helix Mobile Producer machine. Master Agent Configuration File You use the snmpmaster.cfg file in the Helix Mobile Producer main directory to configure the master agent. This allows the master agent to communicate with the SNMP plug-in and the management system. It also defines the security level for each person who uses the management system. Edit this XML-formatted text file using any text, HTML, or XML editor. The following example shows the default configuration file: <?xml version="1.0" encoding="us-ascii"?> <preferences version="0.5"> <config ManagerAddress="127.0.0.1" ManagerSNMPPort="162" LocalSNMPPort="161" AgentXProtocolPort="705" EngineID="XXX"/> <security CommunityString="public"/> <SecurityModel ModelType="USM"> <users UserName="xxx"> <Authentication Type="MD5" Password="yyy"/> <Privacy Type="DES" Password="zzz"/> 160
CHAPTER 12: SNMP </users> <users UserName="unsecureUser"> <Authentication Type="NONE" Password=""/> <Privacy Type="NONE" Password=""/> </users> </SecurityModel> <SecurityToGroup SecurityModel="USM" User="unsecureUser" Group="v3Group"/> <SecurityToGroup SecurityModel="USM" User="test" Group="testGroup"/> <SecurityToGroup SecurityModel="v2" User="vishal" Group="v1v2group"/> <SecurityToGroup SecurityModel="v1" User="public" Group="v1v2group"/> <SecurityModel ModelType="VACM"> <groups Name="v3Group" SecurityModel="USM" SecurityLevel="1" Context="" Notify_View="testView" Read_View="testView" Write_View="testView"/> <groups Name="testGroup" SecurityModel="USM" SecurityLevel="1" Context="" Notify_View="testView" Read_View="testView" Write_View="testView"/> <groups Name="v1v2group" SecurityModel="v1" SecurityLevel="1" Context="" Notify_View="v1NotifyView" Read_View="v1ReadView" Write_View="v1WriteView"/> <groups Name="v1v2group" SecurityModel="v2" SecurityLevel="1" Context="" Notify_View="v1NotifyView" Read_View="v1ReadView" Write_View="v1WriteView"/> <views Name="testView" OID="1.3" Mask="" Included="1"/> <views Name="v1ReadView" OID="1.3" Mask="" Included="1"/> <views Name="v1WriteView" OID="1.3" Mask="" Included="1"/> <views Name="v1NotifyView" OID="1.3" Mask="" Included="1"/> </SecurityModel> </preferences> Master Agent Addresses and Ports The following lines in the master agent configuration define the basic communication between the master agent, the SNMP plug-in, and the management system: <config ManagerAddress="127.0.0.1" ManagerSNMPPort="162" LocalSNMPPort="161" AgentXProtocolPort="705" EngineID="XXX"/> 161
Helix Mobile Producer User s Guide The following table explains the values you should set for these attributes. Attribute ManagerAddress ManagerSNMPPort LocalSNMPPort AgentXProtocolPort Master Agent Address and Port Attributes Value The IPv4 address of the management system. The master agent uses this address to send traps to the management system. You must specify an IP address, not a DNS name. The master agent does not support IPv6 addresses. The port used by the management system to listen for communication from the master agent. The default is port 162. The local port used by the master agent for SNMP communications. The default is port 161. If another application uses an SNMP process, port 161 may be in use. In this case, specify a free port. Do not use port 162, as this can cause a system slowdown. The master agent port for AgentX, which is the protocol used to communicate with the Helix Mobile Producer SNMP plugin. The default is 705. SNMP Security The USM security model defines the access rights for each person running the management system. The master agent configuration file (snmpmaster.cfg) predefines two users: The first user operates with no security, which is equivalent to using SNMP version 1. The second user defines authentication and privacy, the highest security under SNMPv3. Users By adding new <users>...</users> lists within the USM section, you can modify or delete these predefined users as well as create additional users: <security CommunityString="public"/> <SecurityModel ModelType="USM"> <users UserName="xxx"> <Authentication Type="MD5" Password="yyy"/> <Privacy Type="DES" Password="zzz"/> 162
CHAPTER 12: SNMP </users> <users UserName="unsecureUser"> <Authentication Type="NONE" Password=""/> <Privacy Type="NONE" Password=""/> </users> </SecurityModel> Security Level and Permissions The following table defines the master agent configuration attributes that define the SNMP security level and permissions. Attribute CommunityString UserName Authentication Type Privacy Type Password Master Agent Address and Port Attributes Value Password used with SNMP version 1 or 2. You can ignore the <security/> tag if you are using SNMP version 3. If you are using version 1 or 2, you can ignore the USM settings. Name of the user as defined in the management system. Type of authentication used with SNMPv3. Valid values are MD5 for the HMAC-MD5 algorithm, or SHA for the HMAC- SHA algorithm. A value of NONE indicates an unsecured user. For privacy type, you can enter NONE for no privacy or DES for CBC-DES encryption. Password for authentication or privacy. SNMPv3 uses separate passwords for authentication and privacy. You do not need to define a certain password, however, if you used NONE as the authentication or privacy type. View Access Control Model The view access control model (VACM), available through SNMPv3, allows you to define precisely which Helix Mobile Producer SNMP objects each viewer can see and control. Tip: VACM is optional. You should be familiar with how it works within your SNMP management system before you define view privileges through the master agent configuration file (snmpmaster.cfg). 163
Helix Mobile Producer User s Guide Users Each person who uses VACM must be defined in the <SecurityModel> list as an SNMPv3 user. The following example shows a user defined to use SNMPv3 with authentication but no privacy: <SecurityModel ModelType="USM"> <users UserName="Maria"> <Authentication Type="MD5" Password="tl73jkIL98"/> <Privacy Type="NONE" Password=" "/> </users>...other users defined here... </SecurityModel> Group Security Using a <SecurityToGroup/> tag, you assign each user to a group name that you create. In the following example, the user Maria is assigned to a group named v3group: <SecurityToGroup SecurityModel="USM" User="Maria" Group="v3Group"/> SecurityToGroup Attributes The following table explains the <SecurityToGroup/> tag attributes. Attribute SecurityModel User Group VACM <SecurityToGroup/> Tag Attributes Value Security model for this user. Choose one of the following: v1 for SNMP version 1 v2c for SNMP version 2c USM for SNMP version 3 The user s name. The group to which the user is assigned. Groups are defined with <groups/> tags. Groups Within the <SecurityModel> list, a <groups/> tag defines each group. A group has three views, indicating which parts of Helix Mobile Producer the user can monitor and control. 164
CHAPTER 12: SNMP In the following example, v3group is assigned the fullview view for receiving traps and reading Helix Mobile Producer variables. It is part of the noview view for writing configuration changes to the Helix Mobile Producer registry: <SecurityModel ModelType="VACM"> <groups Name="v3Group" SecurityModel="USM" SecurityLevel="1" Context="" Notify_View="fullView" Read_View="fullView" Write_View="noView"/>...more groups and views defined here... </SecurityModel> Groups Attributes The following table explains the <groups/> element attributes. Attribute Name SecurityModel SecurityLevel Context Notify_View Read_View Write_View VACM <groups/> Element Attributes Value The group name. Users are assigned to this group by including the name in the <SecurityToGroup/> tag. Security model for this group. Choose one of the following: v1 for SNMP version 1 v2c for SNMP version 2c USM for SNMP version 3 Security level for this group. Choose one of the following: 0 for noauthnopriv 1 for authnopriv 2 for authpriv An optional, named subset of object instances in the management information base. The name of the view assigned to the group for receiving traps. The name of the view assigned to the group for reading SNMP objects values corresponding to Helix Mobile Producer registry values. The name of the view assigned to the group for writing changes to SNMP object values and thereby changing Helix Mobile Producer configuration values. Views Within the <SecurityModel> list, a <views/> tag defines each view. The view identifies a group of objects by an OID from the management information base (MIB). All objects that fall under that OID are included in the view. In the 165
Helix Mobile Producer User s Guide following example, the fullview view is included while the noview view is excluded, allowing no access: <SecurityModel ModelType="VACM">...groups defined here... <views Name="fullView" OID="1.3" Mask="" Included="1"/> <views Name="noView" OID="1.3" Mask="" Included="0"/>...more views defined here... </SecurityModel> Views Element Attributes The following table explains the <views/> element attributes. Attribute Name OID Mask Included VACM <views/> Element Attributes Value The view name. Groups are assigned up to three views (Notify_View, Read_View, and Write_View) in each <groups/> tag. Object ID of a node. All objects that fall under that node in a tree are available in the view. The MIB file used by the SNMP management system lists the OIDs of all nodes. Optional mask value that applies to the OID. You can use this mask to provide finer control over the objects available in the view. A true or false value that includes or excludes the view. Use 1 to make the view available, 0 to turn exclude the view from use. Master Agent Start-Up The master agent can run as an independent application or a Windows service. Once configured, the master agent generally runs without the need for user intervention. Master Agent on Windows On Windows, you can run the master agent as a service or as an application. The following sections explain how to start the master agent in either mode. Service Restart If you installed the master agent as a Windows Service, the agent starts up automatically. If you change the master agent configuration, restart the agent service by locating the master agent service with Settings>Control 166
CHAPTER 12: SNMP Panel>Administrative Tools>Services. In the Services dialog, right-click on SNMP Master Agent and choose Restart. Tip: Right-click SNMP Master Agent and choose Properties to change the master agent operation. Using this dialog, for example, you can disable automatic start-up or restart the service automatically if it fails. Application Start-Up The following procedure explains how to start the master agent as a Windows application. Do this only if the master agent has not been installed as a service, or you have disabled the service through the Services dialog. Starting the master agent as a Windows program: 1. Shut down Helix Mobile Producer if it is running. 2. Open a command prompt using Start>Program>Accessories>Command Prompt. 3. Navigate to the Helix Mobile Producer installation directory. For example: cd c:\program Files\Real\Helix Mobile Producer 13 4. The master agent executable and its configuration file reside in the main installation directory. Start the program by entering the following on the command line: snmpmaster.exe snmpmaster.cfg 5. Start Helix Mobile Producer. Management System You can use any third-party SNMP monitoring tool as your management system. The management information base (MIB) determines the Helix Mobile Producer information that the management system monitors: 1. From the management system, locate the MIB file, which is named snmpproducer.my and resides in the Helix Mobile Producer installation directory. 2. Compile the MIB file if necessary for your management system. 167
Helix Mobile Producer User s Guide System Tree Note: For information about compiling the MIB file and connecting your management system to the master agent, refer to your SNMP manager documentation. 3. Connect the management system to the master agent using the Helix Mobile Producer IP address and port defined in the master agent configuration file. For More Information: The section Master Agent Addresses and Ports on page 161 explains the master agent port usage. The objects in the system control tree report basic system information such as memory and CPU utilization. System Tree Object Datatype Information cpusystemusage Gauge32 Percentage of CPU usage by all processes. cpuusage Gauge32 Percentage of CPU usage by this monitored instance of Helix Mobile Producer. memorysystemusage Gauge32 Memory usage of all processes on the machine, in bytes. memoryusage Gauge32 Memory usage of this Helix Mobile Producer instance, in bytes. memoryavailable Gauge32 Physical RAM available on the machine, in bytes. version DisplayString Version number of Helix Mobile Producer. snmpmibversion DisplayString Version of the current SNMP MIB. 168
CHAPTER 12: SNMP Job Tree The objects in the job control tree provide data about the current encoding job. Job Tree Object Datatype Information name DisplayString Name of the active job. progressphase DisplayString Status of the current job (analyzing, encoding, or merging). progressduration Gauge32 The number of seconds that the current status has been in effect. progresspercent Gauge32 Percentage completed for the current phase (-1 for unknown). sourceduration DisplayString Duration of the file in hh:mm:ss format (00:00:00 for a live capture source). sourcetimestamp DisplayString Current timeline position of the input in the hh:mm:ss format. inputscount Gauge32 Number of inputs in the job. outputscount Gauge32 Number of outputs in the job. For More Information: See Jobs and Job Files on page 40. Input Entry Tree An input entry tree provides information about each input in the job. Input Entry Tree Object Datatype Information name DisplayString Name of this input. sourcetype DisplayString Input source type (file or device). inputfile DisplayString Full path of the input file (none for live capture). audiodevice DisplayString Source audio device and port (none for file). videodevice DisplayString Source video device and port (none for file). For More Information: See File Input on page 41 and Capture Input on page 43. 169
Helix Mobile Producer User s Guide Output Entry Tree An output entry tree provides information about each output in the job. Output Entry Tree Object Datatype Information name DisplayString The name of this output. outputtype DisplayString Output type: rm (RealMedia), r5 (3GPP Rel 5), r6 (3GPP Re 6), or mp4 (MPEG-4) totalbitrate Gauge32 Total bit rate of all streams in the output, in bits per second (bps), totalbitratemin Gauge32 Minimum value of the total bitrate (bps) up to the current encoding state. totalbitratemax Gauge32 Maximum value of the total bitrate (bps) up to the current encoding state. OutputStreamsCount Gauge32 Number of stream pairs (video and audio) in the output. OutputDestination FilesCount Gauge32 Number of output files in the job. OutputDestination ServersCount Gauge32 Number of broadcast server destinations in the job. For More Information: See Outputs List on page 63. Output Entry Stream Tree An output entry stream tree provides information about each stream in an output. Output Entry Stream Tree Object Datatype Information name DisplayString Name of the target audience. audiocodecname DisplayString Name of the audio codec. audiobitrate Gauge32 Audio bit rate in bits per second. audiolatency Gauge32 Audio latency in milliseconds. videocodecname DisplayString Name of the video codec. videocodeclevel DisplayString Level of the video codec (standards-based codecs only). (Table Page 1 of 2) 170
CHAPTER 12: SNMP Output Entry Stream Tree (continued) Object Datatype Information videotargetbitrate Gauge32 Target video bit rate in bits per second. videobitrateavg Gauge32 The average video bit rate so far in the current encoding state. videobitratemin Gauge32 The minimum video bit rate in bits per second. videobitratemax Gauge32 The maximum video bit rate in bits per second. videolatency Gauge32 The latency of the video stream in milliseconds. videoqualityindex Gauge32 Quality of the encoded video as a percentage of the input quality. videoqualitymax Gauge32 Maximum quality of the video so far in the current encoding state. videoqualitymin Gauge32 Minimum quality of the video so far in the current encoding state. videofps Unsigned32 Average frames per second expressed as fps x 100. (For example, 15.23 fps is expressed as 1523.) videofpsmax Unsigned32 Maximum frame rate so far in the encoding session, expressed as fps x 100. videofpsmin Unsigned32 Minimum frame rate so far in the encoding session, expressed as fps x 100. videocomplexity DisplayString Current video encoding complexity: high, very high, normal, fast, or very fast. videocomplexitymin DisplayString Minimum encoding complexity in the session so far: high, very high, normal, fast, or very fast. videocomplexitymax DisplayString Maximum encoding complexity in the session so far: high, very high, normal, fast, or very fast. (Table Page 2 of 2) For More Information: See Encoding Settings on page 65. 171
Helix Mobile Producer User s Guide Output Destination Files Tree An output destination file tree provides information about each output that is written to a file. Output Destination Files Tree Object Datatype Information name DisplayString Name of the file destination outputfile DisplayString Output file name and path. clipsize Gauge32 Three values representing the file size in bytes: estimated size, current size, and final size once encoding completes. diskspaceavailable Gauge32 Amount of free disk space, in bytes, on the partition containing the file. disktime DisplayString How long, at the current encoding rate, until the disk partition is full, expressed as a time value: dd:hh:mm:ss. If the term shared displays, at least one more destination is writing to the same partition. In this case, disktime takes into account all ongoing disk write operations. For More Information: See Output File Destination on page 70. Output Destination Broadcast Servers Tree This tree provides information about each output that is written to a broadcast server destination. Output Destination Broadcast Servers Tree Object Datatype Information name DisplayString Name of the server destination. mediabitrate Gauge32 Unpacketized bitrate in bits per second (bps). packetizedbitrate Gauge32 Packetized bitrate in bps. packetssent Gauge32 Number of packets sent since the broadcast started. packetsresent Gauge32 Number of packets resent since the broadcast started. (Table Page 1 of 2) 172
CHAPTER 12: SNMP Output Destination Broadcast Servers Tree (continued) Object Datatype Information latepackets Gauge32 Number of packets arriving at the server too late for broadcast. avglatency Gauge32 Average time in milliseconds from when the server receives a packet to when it broadcasts it to media players. minlatency Gauge32 Minimum time in milliseconds from when the server receives a packet to when it broadcasts it to media players. maxlatency Gauge32 Maximum time in milliseconds from when the server receives a packet to when it broadcasts it to media players. outputstream DisplayString Name of the broadcast stream. serveraddress DisplayString Host name or IP address of the server. serverport DisplayString Server port receiving the broadcast data. broadcasttype DisplayString Broadcast type: RBS push (any push-style broadcast) or RBS pull outputsdpfile DisplayString Path and file name of the optional SDP file for the server destination. (Table Page 2 of 2) For More Information: See Server Destinations on page 125. 173
174 Helix Mobile Producer User s Guide
Part V: APPENDIXES PART V The following appendixes contain useful reference information.
Appendix A: PREFERENCES APPENDIX A The Helix Mobile Producer preferences affect the operation of both the graphical application and the command-line application. Preferences File Helix Mobile Producer records application preferences in the file producer.pref, located in the main installation directory. This text file specifies values such as the temporary directory, encoding defaults, SNMP settings, and tolerance levels for audio and video warnings. Using the graphical application, you can edit the preferences by selecting the File>Preferences menu entry. Note: You must restart Helix Mobile Producer to put preference changes into effect. File Location Preferences Choose Edit>Preferences and click the File Locations tab to set the directory paths for certain files used by Helix Mobile Producer. File Location Preferences 177
Helix Mobile Producer User s Guide Template Directories The Audience and Server fields specify the locations of the templates that hold encoding and broadcast parameters, respectively. You typically do not need to change the template locations unless you want to move template files to a common location shared by multiple installations of Helix Mobile Producer. By default, these templates are stored in the audiences and servers directories of the main installation directory. To change the locations, click the Open buttons and navigate to the appropriate directories on your file system. Temporary Directory Note: You must copy the existing template files to the new template directories manually. Restart Helix Mobile Producer to put the changes into effect. For More Information: See Audience Templates on page 66 and Server Destination Templates on page 126. Helix Mobile Producer uses the temporary directory to write temporary data when encoding on-demand clips. It deletes the temporary files after it has fully encoded the output clip. Output File Directory Click the Same Location as Destination File radio button to write temporary data to the same directory that will hold the output file. This is recommended only if you write output files to the local disk on the Helix Mobile Producer machine. The encoding process may slow down if you write temporary data to a networked, shared directory. Specific Directory Click the Other radio button and then the Open button to select a specific directory to use as the temporary directory. To use the same directory specified by the Windows TEMP variable, enter the following in the field: %TEMP% 178
APPENDIX A: Preferences Log File Preferences Click Edit>Preferences and choose the File Logging tab to set the Helix Mobile Producer logging preferences. These preferences affect how both the command-line application and the graphical application log encoding events. Logging Preferences Tip: Logging is enabled automatically. You can disable it by editing the producer.pref file directly. For more information, see the preferences appendix of Helix Mobile Producer Command Line and Job File Reference. Log File Location Logging Settings The standard log file is a text file named producer.log that resides in the main installation directory. Click the Open button to navigate to a different directory. You can change the file name directly in the preferences field after you select the new directory. The options in the Logging Settings section allow you to set the basic logging choices. Message Format For Message Format, choose one of the following: 179
Helix Mobile Producer User s Guide Detailed Record full information, such as the message category, functional area, time, and message number. short Record only the job name and message. Message Severity In the Message Severity section, you can select up to four logging categories. Choose any combination of the following: Errors Warnings Information Diagnostic Error messages indicate significant problems that have occurred in the encoding process. These problems typically caused the encoding process to fail. The problem must be corrected for encoding to continue. Warning messages indicate possible problems in the encoding process. For example, Helix Mobile Producer logs a warning if its audio watchdog detects that stereo input channels are out of balance. Warning messages also alert you to encoding settings that may make the stream unplayable on certain media players. Informational messages provide important but non-critical information about the encoding operation. They also alert you to encoding settings that do not follow best practices. Diagnostic messages convey non-critical messages about Helix Mobile Producer operation. Because an encoding operation may generate many diagnostic messages, the log file can grow rapidly if you include the Diagnostic category. Functional Area Each message is part of a functional area. For example, messages concerning audio codec operation fall under the Audio Codec area. Each functional area may include errors, warnings, informational messages, and diagnostic messages. Under Functional Area, select the functional area messages that you want to log in the log file. Functional Area ActiveX Audio Codec Logging Functional Areas Events Logged Events specific to the ActiveX control used by Windows-based programs to encode media using Helix Mobile Producer. Events involving an audio codec used for the job. For details about setting audio codecs, refer to Audio Encoding Settings on page 79. 180
APPENDIX A: Preferences Functional Area Audio Prefilters Broadcast Capture Command Line File Output File Reader GUI Job File License Postfilters Remote Agent SDK Configuration SDK Encoding SDK Core SDK Generic Filter Statistics Video Codec Video Pre-filters Video Rendering Logging Functional Areas Events Logged Events concerning the use of an audio prefilter. See Audio and Video Preprocessing on page 51. Events that occur when transmitting a live stream to Helix Mobile Server. For an introduction to broadcast issues, refer to Live Broadcasting on page 107. Events around the capture of input media. See Capture Input on page 43 for capture setup instructions. Events that occur when running the command-line application. The document Helix Mobile Producer Command Line and Job File Reference explains the use of this application. Events involved with writing encoded media streams to a file. The section Output File Destination on page 70 explains how to set up a file as the output. Events related to reading an audio or video file. Events related to the use of the graphical application. Events related to the use of a job file. Events involving the license key, such as an expired license. Events related to post-filters added by the Helix Mobile Producer SDK. Events related to the remote agent. Events concerning the set up of jobs. Events related to encoding activities. Events specific to the core SDK. General events about prefilters or postfilters. Events that affect statistics processing. Events related to the video codec. Events concerning the use of a video prefilter. Events related to video preview. Log File Rolling The log rolling feature creates a new log file when the current log file reaches a certain size or time limit. Using log rolling is recommended if you encode many streams or capture diagnostic messages to the log file. To set up log file 181
Helix Mobile Producer User s Guide rolling, click the Enable Log File Rolling box. Then choose the criterion for rolling the log file: Log Size To create a new log file when the current file reaches a certain size, select the Roll File Every radio button. Then choose a file size in Megabytes. Log Time To create a new log file at a regular interval, click the Roll at End of Every radio button. Then select Hour, Day, Week, or Month. Tip: The active log file is always the name you define in the Log File Location field. Archived log files have an integer value appended to their file extensions, such as producer.log1 and producer.log2. Lower numbers indicate earlier archives. Output Preferences Click Edit>Preferences and choose the Output Settings tab to set default encoding settings such as the audience template used. This is useful if you repeatedly encode the same clip or broadcast, such as a program updated every hour. When you create a new job, Helix Mobile Producer automatically fills in the appropriate fields of the Output tab with the default values. 182
APPENDIX A: Preferences Output Preferences Tabs for Output Types Note: The default settings are used only with the graphical application. They do not apply to jobs processed by the command-line application. On the Output Settings tab, individual tabs allow you to set separate defaults for each output type. Click the appropriate tab first, then define the default values for that output type: Encoding Defaults RA/RV RealAudio and RealVideo default values. 3GPP R5 3GPP Release 5 default values. 3GPP R6 3GPP Release 6 default values. MP4 MPEG-4 default values. MP3 MP3 audio default values. For Encoding Settings, you can pick one or more audiences used to encode the output stream, whether a clip or a live broadcast. Click the Open button 183
Helix Mobile Producer User s Guide to display the templates dialog. Next, select one or more audiences appropriate for your output type. For More Information: See Audience Templates on page 66. Output Directory and File Name Defaults The Output Filename field defines a standard file name and output directory for encoded clips. If you want to define a directory where all encoded files for this output type are written, click the Open button and select the directory. Alternatively, you can define file path variables. File Name and Path Variables For the output file name and path, you can use any of the following variables. Helix Mobile Producer then substitutes the appropriate value when it runs the job. %JobName% Name of the current job file. %InputFilename% The input file name without the path or file extension. %InputFileDir% The input file's absolute directory path without the file name or extension. %OutputName% The output name. See Output Name on page 65. %OutputType% An output type designation: rm, r5, r6, mp4, or mp3. %OutputTypeExt% The default file extension for the output type: rm, 3gp, mp4, or mp3. File Name and Path Examples The following are examples of setting the default output file path and name using variables. Input File Directory and Output File Name The following values writes the output file to the same directory that holds the input file: %InputFileDir%\%OutputName%.%OutputTypeExt% The file name is the output name selected on the Output tab (see Output Name on page 65) along with the appropriate file extension. Standard Directory with Input File Name The next example writes the output the C:\media directory on each job: 184
APPENDIX A: Preferences C:\media\%JobName%.%OutputTypeExt% The output file uses the name of the input job file along with the appropriate output file extension. Output Server Defaults For Output Servers, you can select a server destination template used by default. This is useful if you always deliver broadcasts of this media type using the same server. Click the Open button and select one of the destination templates. Metadata Defaults For More Information: See Server Destination Templates on page 126. The Metadata fields allow you to define a standard set of metadata values for each output. You can define some or all values. For example, you might set only a default copyright date and author string for each stream. For More Information: Refer to Metadata Titles and Values on page 74. Signal Detection Preferences The preferences (File>Preferences) on the AV Signal Detection tab affect audio and video tests run during the encoding process. These tests write warnings to the log file if Helix Mobile Producer detects problems with the incoming audio or video stream. This is useful with live input to indicate problems with capture cards, cabling, cameras, microphones, and so on. 185
Helix Mobile Producer User s Guide Signal Detection Preferences Audio Watchdog Tests Tip: Typically, you can leave these values set to their defaults, changing them only if erroneous error messages are written to the log file. Click the Enable Audio Watchdogs box to run the audio watchdogs for all encoding jobs. You can then adjust the tolerances, if necessary, for each audio test. Silence The Silence test warns if the audio signal does not rise above a certain decibel setting for a certain period. You can set the decibel level and the required duration. Silence Level In digital audio signals, 0 db represents the maximum audio level. Each decrease of 6 decibels indicates a reduction in the audio level by half. The default value of -60 represents a complete loss of the audio signal. Tip: Select a level in decibels high enough to distinguish between background noise and true silence. In clean audio feeds, noise levels are low, and you can set this value low. For noisier feeds, such as those originating from analog sound 186
APPENDIX A: Preferences cards, a low value may incorrectly identify noise as an active audio signal. Silence Duration You can specify a period in seconds over which this condition must persist to be considered an error. This screens out normal audio lapses, such as when cutting to a commercial break. The default is 10 seconds. Channel Imbalance A channel imbalance occurs when one of the stereo channels is six decibels higher or lower than the other channel. The audio watchdog issues a warning if this condition persists for a certain period. The default is 10 seconds. Clipping Clipping occurs when the audio peak reaches 0 decibels (maximum level). At this point, distortion typically occurs. This audio watchdog warns that the audio is being clipped heavily, moderately, or lightly. You can specify a period in seconds over which this condition must persist. The default is 10 seconds. Out of Phase This warning is logged if the left and right channels of a stereo signal are out of phase. You can specify a period in seconds over which this condition must persist. The default is 10 seconds. Video Watchdog Tests Click the Enable Video Watchdogs box to run the video watchdogs for all encoding jobs. You can then adjust the tolerances, if necessary, for the video watchdog tests. No Signal (Single Color Image) The No Signal test detects that the video image is a single, unchanging color. This typically indicates the lack of a video signal. Note: This test does not identify color bars in the video stream. No Signal Complexity Value For the No Signal test, you can set a complexity value used to identify if a video frame is a solid color. The complexity value ranges from 0 (solid color) to 100 (white noise). The default is 5. 187
Helix Mobile Producer User s Guide Tip: Lower the value if warnings about missing signals are consistently reported for video streams that are OK. Raise the value if missing signal conditions are underreported. No Signal Duration You can also set a duration that defines how long the No Signal condition can occur before a warning is logged. The default value is 10 seconds. Noisy Signal (White Noise) The Noisy Signal test detects white noise. This condition occurs when the video receiver cannot find a signal and reads background noise. Noisy Signal Complexity Value The Noisy Signal test has a complexity value used to identify if a video frame is white noise. The complexity value ranges from 0 (solid color) to 100 (white noise). The default is 95. Tip: Raise the value if white noise warnings are consistently reported for video streams that are OK. Lower the value if white noise conditions are underreported. Noisy Signal Duration You can also set a duration that defines how long the Noisy Signal condition can occur before a warning is logged. The default value is 10 seconds. Frozen Signal (Color Bars) The Frozen Signal test warns that the video image has not changed. This condition can occur if the image is frozen or the video output displays color bars. Frozen Signal Complexity Value The Frozen Signal test sets a factor used to gauge if video frames are changing. The default is 0.5. Tip: Lower the value if frozen signal warnings are consistently reported for video streams that are OK. Raise the value if frozen signals are underreported. Frozen Signal Duration You can also set a duration that defines how long the Frozen Signal condition can occur before a warning is issued. The default value is 10 seconds. 188
APPENDIX A: Preferences Message Suppression Audio and video watchdog messages can rapidly fill the log file if the problems persist. To cut down on the number of messages, enter a value in minutes in the Suppress duplicated messages for... field. A value of 5, for example, means that each warning is reported every five minutes as long as the condition persists. Frame Analysis Period The value for the last field on this preferences tab determines how frequently the video watchdog tests run. Limiting the tests to once every 30 seconds, for example, helps to minimize CPU usage. SNMP Preferences The SNMP preferences set the basic features used when monitoring Helix Mobile Producer using Simple Network Monitoring Protocol. SNMP Preferences Enable SNMP Click the Enable SNMP checkbox to enable third-party products to monitor Helix Mobile Producer using SNMP. 189
Helix Mobile Producer User s Guide Address For SNMP Master Agent Address, enter the IP version 4 address or DNS name of the machine that hosts the master agent executable program. Tip: If the agent resides on the Helix Mobile Producer machine, you can typically use the localhost address of 127.0.0.1. Port For SNMP Master Agent Address, specify the port used by the master agent executable for the AgentX protocol. This value must match the value for the AgentXProtocolPort variable entered in the master agent configuration file. The standard port is 705. SNMP Traps For More Information: See Master Agent Addresses and Ports on page 161. Click the Send SNMP Traps checkbox to allow the Helix Mobile Producer SNMP plug-in to notify the management system when specific events occur, such as CPU utilization above a certain percentage. Note: If you disable this option, the SNMP plug-in responds to management system requests, but does not report Helix Mobile Producer events. In this case, you can ignore the remaining preference fields, which define the event values to trap. Repeat Traps The value for Repeat Traps determines how frequently a trap is triggered while the trap condition remains active. For example, if you trap CPU utilization, the trap triggers every 30 seconds as long as CPU utilization stays above the specified level. CPU Usage For CPU Usage Trigger, set the percentage of total machine CPU utilization that triggers a trap. A value of 75, for example, initiates a trap when CPU utilization on the Helix Mobile Producer machine reaches 75 percent or higher. 190
APPENDIX A: Preferences Tip: CPU utilization is reported by the operating system. On multiprocessor machines, this figure represents the aggregate load for all processors. Memory Usage The Memory Usage values allow you to set up to three traps reported when Helix Mobile Producer memory usage rises above a specified amount in Megabytes. For example, you could set values of 128, 250, and 500 to trigger alerts when memory usage rises above 128, 250, and 500 MB, respectively. 191
192 Helix Mobile Producer User s Guide
Appendix B: AUDIENCE TEMPLATES APPENDIX B Information in this appendix will help you to choose which audiences to use when encoding a clip or broadcast. Predefined Audience Templates An audience template defines a range of parameters used to encode a clip or broadcast. For example, it defines the audio and video codec, along with the streaming bandwidth. Helix Mobile Producer provides a number of predefined templates stored as files (file extension.rpad) in its audiences subdirectory. Templates Included with Helix Mobile Producer Most predefined video templates are available in three versions: RealVideo, H.263, and H.264. Audio-only templates are available for RealAudio, AAC, AAC+, and MP3. Each version uses the codecs and features appropriate for that output type. Audio-Only Templates The audio-only templates are for CBR audio output. They do not define any video settings: 16k Voice 32k Music 64k Music 96k Music 128k MP3 Music Tip: You can also use a video template to encode an audio-only output. Helix Mobile Producer simply ignores the video settings. 193
Helix Mobile Producer User s Guide Video Templates (CBR) Constant bit rate video templates define settings for streaming video and audio: 28k Video 56k Video 65k Video 80k Video 100k Video 150k Video 300k Video 750k Video 1.5M Video Tip: You can add multiple CBR audiences to the same output to create a rate-shifting RealMedia, MPEG-4, or 3GPP Release 6 stream. VBR Quality Template The variable bit rate template is designed for downloadable video clips in the RealMedia format: 90% VBR Quality Video Customized Templates Note: A VBR clip can encode only one audience. Helix Mobile Producer offers many more encoding choices than those available using the predefined templates. In many cases, you ll want to create your audience templates that cover your specific encoding needs. To do this, start with the predefined template that is closest to your desired output. Then edit the template using Helix Mobile Producer. When it has the new settings you want, save the template under a new name. 194
APPENDIX B: Audience Templates 16k Voice The 16 Kb audio audiences target low-bandwidth, audio-only streaming of voice content (no music). There are three predefined audiences: 16k R5 Voice.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 16k R6 Voice.rpad 3GPP Release 6 or MPEG-4 16k RA Voice.rpad RealAudio The following table lists the encoding settings for these audiences. 16k Audio Audience Settings Setting 16k R5 16k R6 16k RA Audio bandwidth 12.2 Kbps 15.85 Kbps 16 Kbps Audio codec AMR-NB AMR-WB RealAudio Voice Audio channels 1 1 1 Rate control type CBR CBR CBR 28k Video The 28 Kb video audiences target low-bandwidth video streaming. There are three predefined audiences: 28k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 28k H.264.rpad 3GPP Release 6 or MPEG-4 28k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 28k Video Audience Settings Setting 28k H.263 28k H.264 28k RV Video average bandwidth 20 Kbps 20 Kbps 20 Kbps Audio bandwidth 8 Kbps 8 Kbps 6 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 1 1 1 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA 195
Helix Mobile Producer User s Guide 28k Video Audience Settings Setting 28k H.263 28k H.264 28k RV Maximum video frame rate (fps) 7.5 7.5 7.5 Preroll (buffering time) 1 second 1 second 4 seconds Quality 20 20 20 Encoding complexity high high high Rate control type CBR CBR CBR 32k Music The 32 Kb audio audiences target low-bandwidth, audio-only streaming of music. There are four predefined audiences: 32k MP3 Music.rpad MP3 32k AAC Music.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 32k AAC+ Music.rpad 3GPP Release 6 or MPEG-4 32k RA Music.rpad RealAudio The following table lists the encoding settings for these audiences. 32k Audio Audience Settings Setting 32k MP3 32k AAC 32k AAC+ 32k RA Audio bandwidth 32 Kbps 32 Kbps 32 Kbps 32 Kbps Audio codec MP3 AAC-LC AAC+ RealAudio Audio channels 2 2 2 2 Rate control type CBR CBR CBR CBR 56k Video The 56 Kb video audiences target low-bandwidth video streaming. There are three predefined audiences: 56k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 56k H.264.rpad 3GPP Release 6 or MPEG-4 56k RV.rpad RealVideo 196
APPENDIX B: Audience Templates The following table lists the encoding settings for these audiences. 56k Video Audience Settings Setting 56k H.263 56k H.264 56k RV Video average bandwidth 44 Kbps 44 Kbps 44 Kbps Audio bandwidth 12 Kbps 12 Kbps 12 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 1 1 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 7.5 7.5 7.5 Preroll (buffering time) 1 second 1 second 4 seconds Quality 30 30 30 Encoding complexity high high high Rate control type CBR CBR CBR 64k Music The 64 Kb audio audiences target low-bandwidth, audio-only streaming of music. There are four predefined audiences: 64k MP3 Music.rpad MP3 64k AAC Music.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 64k AAC+ Music.rpad 3GPP Release 6 or MPEG-4 64k RA Music.rpad RealAudio The following table lists the encoding settings for these audiences. 64k Audio Audience Settings Setting 64k MP3 64k AAC 64k AAC+ 64k RA Audio bandwidth 64 Kbps 64 Kbps 64 Kbps 64 Kbps Audio codec MP3 AAC-LC AAC+ RealAudio Audio channels 2 2 2 2 Rate control type CBR CBR CBR CBR 197
Helix Mobile Producer User s Guide 65k Video The 65 Kb video audiences target low-bandwidth video streaming. There are three predefined audiences: 65k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 65k H.264.rpad 3GPP Release 6 or MPEG-4 65k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 65k Video Audience Settings Setting 65k H.263 65k H.264 65k RV Video average bandwidth 53 Kbps 53 Kbps 53 Kbps Audio bandwidth 12 Kbps 12 Kbps 12 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 1 1 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 10 10 10 Preroll (buffering time) 1 second 1 second 4 seconds Quality 35 35 35 Encoding complexity high high high Rate control type CBR CBR CBR 80k Video The 80 Kb video audiences target medium-bandwidth video streaming. There are three predefined audiences: 80k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 80k H.264.rpad 3GPP Release 6 or MPEG-4 80k RV.rpad RealVideo 198
APPENDIX B: Audience Templates The following table lists the encoding settings for these audiences. 80k Video Audience Settings Setting 80k H.263 80k H.264 80k RV Video average bandwidth 64 Kbps 64 Kbps 64 Kbps Audio bandwidth 16 Kbps 16 Kbps 16 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 1 1 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 15 15 15 Preroll (buffering time) 1 second 1 second 4 seconds Quality 40 40 40 Encoding complexity high high high Rate control type CBR CBR CBR 96k Music The 96 Kb audio audiences target high-bandwidth, audio-only streaming of music. There are four predefined audiences: 96k MP3 Music.rpad MP3 96k AAC Music.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 96k AAC+ Music.rpad 3GPP Release 6 or MPEG-4 96k RA Music.rpad RealAudio The following table lists the encoding settings for these audiences. 96k Audio Audience Settings Setting 96k MP3 96k AAC 96k AAC+ 96k RA Audio bandwidth 96 Kbps 96 Kbps 96 Kbps 96 Kbps Audio codec MP3 AAC-LC AAC+ RealAudio Audio channels 2 2 2 2 Rate control type CBR CBR CBR CBR 199
Helix Mobile Producer User s Guide 100k Video The 100 Kb video audiences target high-bandwidth video streaming. There are three predefined audiences: 100k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 100k H.264.rpad 3GPP Release 6 or MPEG-4 100k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 100k Video Audience Settings Setting 100k H.263 100k H.264 100k RV Video average bandwidth 80 Kbps 80 Kbps 80 Kbps Audio bandwidth 20 Kbps 20 Kbps 20 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 1 2 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 15 15 15 Preroll (buffering time) 1 second 1 second 4 seconds Quality 45 45 45 Encoding complexity high high high Rate control type CBR CBR CBR 128k MP3 Music This audience produces output at a streaming speed commonly used with the MP3 format: 128k MP3 Music.rpad The following table lists the encoding settings for this audience. 128k Audio Audience Settings Setting 128k MP3 Audio bandwidth 128 Kbps Audio codec MP3 200
APPENDIX B: Audience Templates 128k Audio Audience Settings Setting 128k MP3 Audio channels 2 Rate control type CBR 150k Video The 150 Kb video audiences target high-bandwidth video streaming. There are three predefined audiences: 150k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 150k H.264.rpad 3GPP Release 6 or MPEG-4 150k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 150k Video Audience Settings Setting 150k H.263 150k H.264 150k RV Video average bandwidth 122 Kbps 122 Kbps 118 Kbps Audio bandwidth 28 Kbps 28 Kbps 32 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 2 2 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 15 15 15 Preroll (buffering time) 1 second 1 second 4 seconds Quality 50 50 50 Encoding complexity high high high Rate control type CBR CBR CBR 300k Video The 300 Kb video audiences target high-bandwidth video streaming. There are three predefined audiences: 300k H.263.rpad 3GPP Release 5, 3GPP Release 6, or MPEG-4 201
Helix Mobile Producer User s Guide 300k H.264.rpad 3GPP Release 6 or MPEG-4 300k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 300k Video Audience Settings Setting 300k H.263 300k H.264 300k RV Video average bandwidth 244 Kbps 252 Kbps 256 Kbps Audio bandwidth 56 Kbps 48 Kbps 44 Kbps Audio codec AAC-LC AAC+ RealAudio Audio channels 2 2 2 Video codec H.263 H.264 RealVideo 10 Video profile 0 Baseline NA Video level auto auto NA Maximum video frame rate (fps) 30 30 30 Preroll (buffering time) 1 second 1 second 4 seconds Quality 60 60 60 Encoding complexity high high high Rate control type CBR CBR CBR 750k Video The 750 Kb video audience targets medium-quality video downloading. There are two predefined audiences: 750k H.264.rpad 3GPP Release 6 or MPEG-4 750k RV.rpad RealVideo The following table lists the encoding settings for these audiences. 750k Video Audience Settings Setting 750k H.264 750k RV Maximum bandwidth 686 Kbps 686 Kbps Video average bandwidth 686 Kbps 686 Kbps Audio bandwidth 48 Kbps 64 Kbps Audio codec AAC+ RealAudio Audio channels 2 2 202
APPENDIX B: Audience Templates 750k Video Audience Settings Setting 750k H.264 750k RV Video codec H.264 RealVideo 10 Video profile Baseline NA Video level auto NA Maximum video frame rate (fps) 30 30 Preroll (buffering time) 1 second 4 seconds Quality 70 70 Encoding complexity high high Rate control type CBR VBRBitrate 1.5M Video The 1.5 Mb video audience targets high-quality video downloading. There are two predefined audiences: 1.5M H.264.rpad 3GPP Release 6 or MPEG-4 1.5M RV.rpad RealVideo The following table lists the encoding settings for these audiences. 1.5M Video Audience Settings Setting 1.5M H.264 1.5M RV Maximum bandwidth 1.404 Mbps 1.404 Mbps Video average bandwidth 1.404 Mbps 1.404 Mbps Audio bandwidth 96 Kbps 96 Kbps Audio codec AAC+ RealAudio Audio channels 2 2 Video codec H.264 RealVideo 10 Video profile Baseline NA Video level auto NA Maximum video frame rate (fps) 30 30 Preroll (buffering time) 1 second 4 seconds Quality 80 80 203
Helix Mobile Producer User s Guide 1.5M Video Audience Settings Setting 1.5M H.264 1.5M RV Encoding complexity high high Rate control type CBR VBRBitrate 90% VBR Quality Video The 90% VBR Quality video audience targets high-quality video downloading. It attempts to preserve near-perfect video quality within the constraints of maximum bandwidth, frame size, and video content. There is one predefined audience: 90% VBR Quality RV.rpad RealVideo The following table lists the encoding settings for this audience. 1.5M Video Audience Settings Setting 90% RV Maximum bandwidth 2 Mbps Video average bandwidth 2 Mbps Audio bandwidth 96 Kbps Audio codec RealAudio Audio channels 2 Video codec RealVideo 10 Video profile NA Video level NA Maximum video frame rate (fps) 30 Preroll (buffering time) 4 seconds Quality 90 Encoding complexity high Rate control type VBRQuality 204
Appendix C: AUDIO AND VIDEO TIPS APPENDIX C This appendix provides tips for capturing and editing audio and video input. This information will help you to encode higher-quality output streams. Audio Capture Source Media A streaming clip reflects the quality of its audio source. Any quality problems within the source will affect the streaming clip as well. Because you cannot edit a broadcast, live Webcasting introduces several issues beyond those involved with delivering on-demand clips. This section will help you capture high-quality audio source files, or set up your sound equipment to deliver good broadcasts. If you plan to stream existing material, start with the best source possible. Use the cleanest recording with the least amount of unwanted noise. CDs, DVDs, and digital audio tapes (DATs) are good source media. Well-recorded analog sources such as records, reel-to-reel tapes, and chrome (Type II) cassettes can also sound good. Avoid consumer-grade recording media such as Type I cassettes and VHS tapes. Recording Equipment Every piece of equipment in the audio chain microphone, mixer, sound card, and so on affects sound quality. If you intend to provide professional-quality audio content, invest in professional-quality audio equipment and software. Lesser equipment can add hiss and distortion, degrading sound clarity. 205
Helix Mobile Producer User s Guide Shielded Cables Input Levels It is important to use high-quality, shielded cables. Using unshielded cables increases the likelihood of introducing line noise and radio frequency interference into recordings. Keep audio cables physically separated from power cords to minimize the introduction of noise. Also be sure to ground all equipment properly. Setting correct input levels is crucial. All audio equipment has a dynamic range, the ratio between the loudest possible sound the equipment can reproduce without distortion and its inherent noise floor. Also called clipping, distortion of this type is audible as a high-frequency crackling noise. To get the best dynamic range, set the input level on each audio device in the signal chain so that it uses its full range of available amplitude without distortion during the program s loudest sections. The signal chain typically includes a microphone, a mixing desk, a compressor, and a sound card. For each piece of equipment, set levels as close as possible to 0 decibels without going over that level. Check for signal distortion at each point in the signal chain. Perform several test runs, and make sure that there are no peaks above maximum amplitude. Adjust the levels on your sound card mixer so that the input approaches but does not exceed the maximum. Be conservative, though. Levels might suddenly increase if, for instance, an interviewee suddenly speaks loudly or a crowd at a sports event roars. Volume Levels for Live Broadcasts Sampling Rates When broadcasting live audio streams, it is useful to have a dynamics compressor for gain compression (not data compression). This piece of audio equipment automatically adjusts the volume level. By providing a consistent volume level, it allows you to set and forget the input levels to Helix Mobile Producer. Try to capture sound with a sampling width of 16 bits. RealAudio codecs have different sampling rates that produce the best sound, however. If your sound 206
APPENDIX C: Audio and Video Tips card allows it, capture audio content at the optimum sampling rate for the codec you intend to use. Helix Mobile Producer will convert the file to the optimum rate if necessary, but this is recommended only for static files. For live broadcasts, use a sound card that supports the optimum rate. This avoids the overhead entailed in converting the rate while encoding sound in real time. Tip: You do not need to capture stereo sound if you plan to use a mono codec. However, many sound cards simply discard the right input channel in mono mode. If you have a mixing desk, pan all inputs to the center so that nothing is lost during the conversion to mono. Audio Optimization DC Offset Normalization If you are not broadcasting audio live, you typically start with digitized audio source files in supported input formats, such as WAV. Although Helix Mobile Producer can adjust audio levels during encoding, you achieve the best quality for editing files before encoding them. To optimize audio files this, you need to be familiar with the features your editing program offers. This section gives you some optimization tips you can try with your editing software before encoding your clips with Helix Mobile Producer. Tip: Always keep copies of your audio source files. You cannot convert encoded clips back to their original source formats. DC offset is low-frequency, inaudible noise that results from equipment grounding problems. If you don t remove it, it can skew the results of subsequent sound editing. Use your sound editor s DC Offset function immediately after recording a digital audio file. Tip: If your editing program has this option, remove DC offset during recording. This eliminates an editing step. Set sensible input levels when recording, and then use normalization to maximize the levels after recording. Your streaming files sound best when 207
Helix Mobile Producer User s Guide your digitized source has the highest possible gain without clipping. Digital audio files that do not use their full amplitude range produce low-quality streaming clips. If the amplitude range is too low, use your sound editor to adjust the range and increase the amplitude. Dynamics Compression Equalization Tip: Most sound editors have a Normalize function that maximizes levels automatically. Because some systems have trouble with files normalized to 100 percent, normalize to 95 percent of maximum, or to -0.5dB. Normalization maximizes the volume level of the audio file s loudest sections. Consequently, quiet sections may not encode as well. Dynamics compression evens out input levels by attenuating (turning down) the input when it rises above a specified threshold. Check your audio software for a Compression or Dynamics feature. You can control attenuation by specifying a compression ratio. This turns down the loudest sections, and you can readjust input levels accordingly. Tip: For multipurpose dynamics compression, set the threshold to -10dB, the ratio to 4:1, and the attack and release times to 100ms. Adjust the input level to get approximately 3dB of compression and an output level of about 0dB. Equalization (EQ) changes the tone of the incoming signal by boosting (turning up) or cutting (turning down) certain frequencies. Using EQ, you can emphasize certain frequencies and cut others that contain noise or unwanted sound. EQ can compensate for codecs that do not have flat frequency responses (that is, codecs for which certain frequencies are not as loud after encoding). You can therefore use EQ to make an encoded audio clip sound as close as possible to the source recording. Tip: For voice-only content, you can make the file more intelligible by cutting frequencies below 100 Hz and carefully boosting frequencies in the 1000 to 4000 Hz range. 208
APPENDIX C: Audio and Video Tips Video Recording Video Staging If you intend to shoot a new video rather than use existing video content, this section provides tips for capturing high-quality input. Because video loses image quality if it s highly compressed, always start with the best video source available. For More Information: For pointers on recording audio, see Audio Capture on page 205. Consider the video s final frame size before you shoot the first frame. Streaming over a slow data connection requires a small video window, so you need to frame important visual elements well. For recommended clip dimensions, see Frame Size on page 92. Scene Changes and Movement The fewer things that change from frame to frame, the sharper the image will appear in a low-bandwidth video. You can do the following to cut down on unnecessary movement: Use a mounted camera rather than hand-held one. This greatly reduces the movement you inadvertently introduce into the scene when recording. Don t have a rapidly moving object fill the entire frame. But you don t want to pull the camera back too far either. You need to find a happy medium between close-ups and panoramic shots. Of course, you don t want to eliminate all dynamic elements. When you do include rapid movement, allow enough time for objects to resolve. Because of low frame rates and high compression, objects coming to rest may appear blurry at first. If you have a dialog box popping up on a computer screen, for example, have the box remain stationary for a few seconds so that the image resolves. Colors and Lighting Bright lighting at a constant exposure keeps the foreground detail crisp. Use uniformly dark colors for backgrounds, and uniformly light colors (but not whites) for clothing. Complex textures such as paisley and stripes degrade the final image quality with unwanted visual effects. 209
Helix Mobile Producer User s Guide Video Output Color Depth Video playback devices commonly have at least two common output types S-video and composite. Use S-video, as it produces better results. Professional-grade devices typically have other, high-quality output modes that can connect to a video capture card. Always use 24-bit or 32-bit color. Lower color resolution results in poor clips. Source Media Quality Whether you shoot a video yourself or digitize existing material, start with high-quality video media. The following are common video formats, listed in order of descending quality: 1. HDV 2. Betacam SP, also known simply as Beta. This format is common among video production professionals. 3. DV, minidv, DVCam, or DVCPro. 4. Super-VHS (S-VHS) or HI-8mm. 5. VHS, 8mm. 210
INDEX A AAC AAC Plus, 16 choosing, 80 low-complexity, 15 overview, 14 sampling rate compatibility, 33 AMR AMR-NB, 18 AMR-WB, 19 choosing, 80 overview, 18 arch file name addition, 70 archiving broadcasts, 122 audience templates 1.5M Video, 203 100k Video, 200 128k Audio, 200 150k Video, 201 16k Audio, 195 28k Video, 195 300k Video, 201 32k Audio, 196 56k Video, 196 64k Audio, 197 65k Video, 198 750k Video, 202 80k Video, 198 90% Quality Video, 204 96k Audio, 199 ocation, 178 predefined files, 193 audiences adding to output, 66 customizing, 67 templates deleting, 69 saving as, 68 B audio cables, 206 capture, 43 channels, 80 codec choice, 80 customization, 79 DC offset, 207 digitizing, 207 dynamics compression, 208 equipment quality, 205 filters, 51 frequency equalization, 208 gain, 52, 206 input formats, 11 input levels, 206 mixer, 44 monitoring levels, 153 muting, 52 normalization, 207 optimizing, 207 recording tips, 205 resampling while broadcasting, 85 sampling rates choosing, 84 for codecs, 14 multi-rate streams, 32 sampling width, 206 signal detection, 186 signal-to-noise ratio, 206 source media, 205 synchronizing with video, 53 vendor controls, 44 bandwidth negotiation, 28 rate-shifting clips, 28 BBFC ratings, 76 211
Helix Mobile Producer User s Guide Betacam video, 210 black-level correction, 60 broadcasting archive clip, 107 audio resampling, 85 audio volumes, 206 broadcast quality, 108 encoder redundancy, 119 forward error correction, 121 from a file, 107 IP version 6, 123 redundant stream protection, 121 TCP transport, 119 trial run, 108 UDP transport, 119 video startup latency, 103 see also Helix Push broadcast see also Helix Multicast Push broadcast see also Helix Advanced Push broadcast see also Helix Pull broadcast C cable shielding, 206 channel imbalance detection, 187 clipping detection, 187 color bar detection, 188 D de-interlace filter, 56 DES encryption for SNMP, 159 digital video formats, 210 DirectX requirements, 11 discrete multichannel audio description, 83 encoding with stereo codecs, 84 sound system requirements, 83 supported number of channels, 83 dynamics compression, 208 F feature availability, 10 file input, 41 film-to-video transfer, 56 firewall problems during broadcasts, 131, 136 forward error correction, 121 frame rates when capturing video, 47 see also video H H.263 levels, 25 overview, 25 profiles, 25 H.264 levels, 26 overview, 26 hardware requirements, 7 Helix Advanced Push broadcast advantages of, 111 archiving, 133 broadcast steps, 111 metadata resend interval, 135 overview, 132 redundant encoders, 134 SDP file, 111, 112 server authentication, 134 destination, 132 ports used, 134 stream name, 133 URLs, 112 Helix Multicast Push broadcast archiving, 138 metadata resend interval, 140 multicast address, 138 packet TTL, 140 SDP file, 113, 114 server authentication, 139 ports used, 139 stream name, 138 URLs, 114 Helix Pull broadcast advantages of, 116 archiving, 145 broadcasting steps, 116 outgoing bandwidth, 117 overview, 143 SDP file, 116, 118 server authentication, 146 212
Index ports used, 145 stream acquisition latency, 117 stream name, 144 URLs, 117 Helix Push broadcast archiving, 129 broadcast steps, 109 overview, 109 ports data, 129 HTTP, 129 redundant encoders, 129 SDP file, 109, 110 server authentication, 130 destinations, 127 statistics update interval, 131 stream name, 128 URLs, 110 hinting, 71 I Input tab, 39 inputs audio formats accepted, 11 file selecting, 41 start and stop times, 47 live capture, 43 audio controls, 44 audio mixer, 44 duration, 43 frame rate, 47 video dimensions, 46 source properties, 49 video formats accepted, 11 installation machine ID, 9 Windows, 7, 8 interlaced video, 56 inverse-telecine filter, 56 IP addresses version 6, 123 J job file creating, 40 opening, 41 samples, 40 saving, 40 syntax, 40 upgrading, 41 jobs, 152 K key frames, 102 L license file, 7 invalid files, 8 location, 8 machine ID, 9 log viewer, 155 logging category, 180 disabling, 179 file name, 179 file rolling enabling, 181 file size, 182 interval, 182 format, 179 functional areas, 180 message severity, 180 M machine ID, 9 master agent for SNMP, 160 MD5 for SNMP, 159 media ratings BBFC, 76 MPAA, 75 OFLC, 76 metadata, 72 MIB file for SNMP, 167 Monitoring tab, 151 mono audio encoding, 80 MP3 mono codecs, 20 overview, 20 stereo codecs, 21 MPAA ratings, 75 MPEG-4, 13 MPEG-4 SVP, 27 213
Helix Mobile Producer User s Guide multicasting overview, 137 packet time to live (TTL), 140 multichannel audio see discrete multichannel audio see stereo surround N NAT firewall traversal, 131, 136 O OFLC ratings, 76 OpenDML, 42 output file, 70 hinting, 71 progressive download, 71 Output tab, 61 outputs defining, 63 monitoring, 153 P packet time to live, 140 phase balance detection, 187 pixel aspect ratio, 59 preferences audio signal detection, 185 file paths, 177 logging, 179 preference file, 177 SNMP, 189 video signal detection, 185 prefilters audio gain, 52 audio synchronization, 53 black-level correction, 60 de-interlace, 56 input cropping, 53 inverse-telecine, 56 noise, 57 resize, 58 progressive download, 71 Q QuickTime input sources, 12 R rate control audio channels, 32 S audio sampling rate, 32 clip encoding requirements, 30 codec choice, 32 downshifting and upshifting, 30 encoding times, 29 multi-rate clips, 28 rate-shifting clips, 30 streaming rates, 31 rate shifting, 30 RealAudio choosing, 80 codecs discrete multichannel, 24 high response, 22 mono music, 23 stereo music, 23 stereo surround, 24 voice, 22 converting to other formats, 207 overview, 21 RealVideo codecs RealVideo 10, 28 RealVideo 8, 28 RealVideo 9, 28 compressed input, 11 converting to other formats, 11 file rolling, 72 frame rate mode, 95 overview, 28.rmvb extension, 28 RTP Push broadcast advantages of, 114 broadcast steps, 115 SDP file, 115, 143 server destination, 141 ports used, 143 stream name, 142 sampling rates multi-rate streams, 32 setting, 84 server destinations, 126 Helix Advanced Push broadcast, 132 214
Index Helix Multicast Push broadcast, 137 Helix Pull broadcast, 143 Helix Push broadcast, 127 RTP Push broadcast, 141 saving as templates, 127 template location, 178 settings advisor, 156 SHA for SNMP, 159 shielded cables, 206 silence detection, 186 SNMP AgentX protocol and port, 162 authentication, 159 DES encryption, 159 management system, 167 master agent address and port, 161 configuration, 160 port, 190 security model, 162 VACM setup, 163 Windows startup, 166 MD5, 159 MIB file, 167 overview, 157 preferences enabling, 189 master agent address, 190 privacy, 159 producer configuration, 157 security, 162 SHA, 159 traps CPU utilization, 190 defining, 157 enabling, 190 interval for, 190 memory usage, 191 trees input entry, 169 job, 169 output destination broadcast servers, 172 output destination files, 172 T output entry, 170 output entry stream, 170 system, 168 VACM setup, 163 version support, 159 snmpmaster.cfg file, 160 snmpmaster.exe program, 167 source properties, 49 stereo audio encoding, 80 stereo surround encoding as standard stereo, 82 overview, 81, 83 sources for, 82 supported number of channels, 81 SureStream, see rate control s-video, 210 tabs input, 39 monitoring, 151 output, 61 XML, 40 TCP transport, 119 temporary directory, 178 3GPP Release 5, 13 3GPP Release 6, 13 two-pass encoding, 71 U UDP transport, 119 V variable bit rate encoding, 98 maximum bit rate, 99 quality, 100 VHS format, 210 video advanced settings, 97 artifacts, 57 average bit rate, 89 black-level correction, 60 capture, 43 disk space, 42 file size limit, 42 formats, 11 frame rates, 47 215
Helix Mobile Producer User s Guide requirements, 42 codec selection, 88 cropping, 53 effect on broadcasts, 53 dimensions desktop media, 94 for different bit rates, 35 portable devices, 92 resizing methods, 93 encoding complexity, 95 filters, 51 frame rates factors that affect, 91 variable nature, 91 frame size multi-rate streams, 34 setting, 92 input formats, 11 interlaced, 56 key frame maximum benefits of lowering, 102 costs of lowering, 103 overview, 102 level choosing, 88 multi-rate streams, 33 lighting, 209 minimizing movement, 209 motion resolution, 209 noise reduction, 57 preroll setting, 101 profile choosing, 88 multi-rate streams, 33 recording tips, 209 resize quality, 93 resizing, 58 resizing output, 92 source formats, 210 staging shots, 209 s-video, 210 synchronizing with audio, 53 24-bit depth, 210 variable bit rate encoding, 98 Video for Windows, 11 video stream, 188 signal detection, 187 white noise detection, 188 volume for live broadcasts, 206 W white noise detection, 188 Windows installation, 7, 8 X XML tab, 40 216