Helix DNA Producer 11 Release Notes

Date: Mon, Aug 29, 2005

Helix DNA Producer 11 converts a wide variety of audio and video files into the RealAudio and RealVideo format and is extensible to support other formats. Helix DNA Producer 11 also allows you to capture audio and video from live sources such as a camera or microphone and broadcast a live stream via a Helix Server.  The software and documentation are provided to you in accordance with your license agreement.

For the latest information about Helix Producer 11, visit the Helix-Producer Project page.
Support and technical information is available through the apps and dev mailing lists available through the Helix-Producer Project page.
Latest updates to this document can be viewed at the Producer Release Notes Updates page.

Table of Contents

1 What's in this Release
     1.1 New Features in Producer 11
     1.2 Other Changes in Producer 11
     1.3 New Features in Producer 10
     1.4 Known Issues
          1.4.1 ActiveX Control
          1.4.2 C++ SDK
     1.5 Fixed Bugs
2 Getting Started
     2.1 Downloading the Source
     2.2 Downloading the Compiled SDK
     2.3 Running the Command Line Application
     2.4 Working with Helix Producer 9.0 Job Files
     2.5 Upgrading from RealNetworks SDKs to Helix DNA SDKs
     2.6 Using the ActiveX Control
          2.6.1 Installing the ActiveX Control
          2.6.2 ActiveX Control Documentation
          2.6.3 Registering the ActiveX Control
3 System Requirements
     3.1 Compiler System Requirements
          3.1.1 Application System Requirements
          3.1.2 Supported Chipset Optimizations
          3.1.3 Supported Input File Formats
          3.1.4 Supported Input Capture Devices
          3.1.5 Supported Input Color Formats
4 Troubleshooting
     4.1 General
     4.2 Installation
     4.3 Performance
     4.4 Audio And Video Preview
     4.5 File Input
     4.6 Capture Input
     4.7 Codecs
     4.8 Broadcast Output
     4.9 RealMedia Editing
5 More Information


1 What's in this Release   

1.1 New Features in Producer 11

See the RealProducer User's Guide or the included help files for more information about these new features.

Note: The ActiveX control in this release of Helix Producer 11 is a Preview Release. For the current list of know issues, you can visit the Helix Community bug tracker, and search in the helix-producer project and the ActiveX component.

1.2 Other Changes in Producer 11

The following is a list of other changes and limitations with Producer 11:

  1. In order to take advantage of the new Live Low Latency feature in Producer 11, you must be broadcasting to a Helix Server 11. If you are broadcasting to an older server with Latency Mode set to anything other than 0, the server will report Malformed Packet messages to the server logs, and clients will not be able to connect to the broadcast. See the user's guide for information about the new latency mode options in Producer 11.
  2. The Legacy Push broadcast method has been removed from Producer 11. This means that you cannot broadcast to a Pre-8.0 RealServer from Producer 11.

1.3 New Features in Producer 10

A description of features in this release are documented in the Helix DNA Producer Roadmap.

1.4 Known Issues   

This section documents important known issues for the SDK.  For a complete list of known issues, see the Helix-Producer project in Helix Community.  Also see the list below for Troubleshooting tips with the application, some of which apply to applications built with the SDK as well.

1.4.1 ActiveX Control (Preview Release)   

Important This release of the Producer includes a preview release of the ActiveX control with the new GUI Preview widget. Please note that this is a Preview release of the new ActiveX control, and there are known issues that will be addressed in a future update. For the current list of know issues, you can visit the Helix Community bug database, and search in the helix-producer project and the ActiveX tracker.

1.4.2 C++ SDK   

No high priority known issues at this time.  See Helix-Producer project for a complete list of known issues.

1.5 Fixed Bugs   

A list of fixed bugs can be found in the Helix-Producer project in Helix Community.

2 Getting Started   

2.1 Downloading the Source   

Both the SDK and command line applications are available as source.  You can browse the source code through the website by clicking on the "Source code" link in either project or by checking the source out through CVS.  For more information on checking out the source, see the Helix DNA Producer SDK Quick Start Guide.

The best way to compile the source code is to use the build system.  The Helix DNA Producer SDK Quick Start Guide is a good introduction to the Helix build system and how to build the Helix DNA Producer SDK and command line application.

2.2 Downloading the Compiled SDK   

The SDK and command line application are also available in compiled form for testing.  You can download either the SDK or command line application in compiled form through the Downloads page on Helix Community.

2.3 Running the Command Line Application   

Helix DNA Producer command line application is distributed as a compressed archive.  This archive can be downloaded or compiled as explained in the previous two sections.  There is no installer to run and all the files it needs are self-contained in one directory.  To unpackage and run the command line application:

  1. Unpack the .zip/.tar/.sit file you downloaded.
  2. Open a command prompt
  3. Change directory into the application directory
  4. Type 'producer' to see a listing of help on the screen.  Type 'producer -m' to see a complete help file in HTML format.

Refer to the Troubleshooting Tips section below if you experience any problems.

For more information, see the Helix DNA Producer SDK Tutorial

Encoding to Ogg Vorbis Format

Before running a producer encode for the Ogg Vorbis format, you must download and install the Ogg and Vorbis libraries from http://www.xiph.org.  You can find compiled copies or source for these DLLs in the Ogg Vorbis SDK at http://www.vorbis.com/download.psp  The following DLLs are required:

In order for the producer to find these DLLs, they will need to be located the command line application directory or somewhere else in your command path.

2.4 Working with Helix Producer 9.0 Job Files   

Helix Producer 10 and 11 uses a new job file format, job file version 2.0. Helix Producer 11 will automatically convert older job files to the new format when it runs them via the command line application. Note that older versions of Producer can't open version 2.0 job files.

2.5 Upgrading from RealNetworks SDKs to Helix DNA SDKs   

The Helix DNA Producer 11 SDK is almost identical to the Helix Producer SDK 9.0 and 9.0.1 from RealNetworks.  If you built an application based on the Helix Producer 9.0 or 9.0.1 SDK from RealNetworks, you can upgrade this application to work with the Helix DNA Producer 11 SDK using an automated script that updates interface names and header files.  Name changes made to the Helix Producer 10.0 SDK are documented in the Helix DNA Producer SDK interface changes guide.  Please refer to this document to upgrade your existing 9.0 or 9.0.1 applications to the latest SDK.

2.6 Using the ActiveX Control   

This release includes an ActiveX Control that can be used to develop Helix Producer applications in Visual Basic, C++, VBA and VBScript. 

Note: The ActiveX control in this release is a Preview Release that includes a new GUI preview widget. Please refer to the SDK documentation for more information about the changes to the ActiveX control.

2.6.1 Installing the ActiveX Control   

The Helix DNA Producer ActiveX control consists of a DLL and supporting libraries and files.  The ActiveX control is included with the Producer SDK.  

To install the ActiveX control provided with the SDK, download the SDK package, unpack it and include the contents of the 'bin' directory in your application directory.  Make sure to keep the contents of the 'bin' directory intact.  Then register the file 'prodctrl.dll' using the method described below in Registering the ActiveX Control.

2.6.2 ActiveX Control Documentation   

Documentation about the ActiveX Control is provided with the SDK. Please refer to these documents for more information about the Helix Producer ActiveX Control.

2.6.3 Registering the ActiveX Control   

The ActiveX control functionality in this release is encapsulated in the DLL, prodctrl.dll.  To use the ActiveX control, this DLL must first be registered.  To register the control, open a command prompt and type the following from the directory where prodctrl.dll is located:

regsvr32.exe helixproducerctrl.dll

Note: The prodctrl.dll dynamic library is bundled with the Helix DNA Producer SDK.  The prodctrl.dll library can not be moved relative to the audiences, codecs, common, plugins, and tools directories.  The ActiveX Control depends on other libraries located in these directories.

3 System Requirements   

3.1 Compiler System Requirements   

  1. The RealMedia Edit SDK are not available for gcc 3.2

3.1.1 Application System Requirements   

  1. Windows XP recommended for Hyperthreading support.
  2. Latest Windows Service Pack recommended for any Windows version.
  3. Minimum system configuration can encode using the command line application into RealVideo 10 in High Complexity Mode from a live device at 240x180 @ 15fps to a 28 kbps and 56 kbps SureStream file (default settings) without any degradation in encoding complexity or frame rate.
  4. Recommended system configuration can encode using the command line application into RealVideo 10 in High Complexity Mode from a live device at 320x240 @ 30fps to a 768 kbps file without any degradation in encoding complexity or frame rate.

3.1.2 Supported Chipset Optimizations   

Below is a list of CPU optimizations that are supported by Helix Producer.  Consult your hardware vendor's documentation to determine if your hardware supports these optimization instruction sets. 

1. About Hyperthreading and Helix Producer

3.1.3 Supported Input File Formats   

File type support varies by platform.  The following list describes the input file types supported and the platforms they are supported on:

Notes:

  1. For MPEG2 input support via DirectShow, an MPEG2 decoder, commonly installed by PC DVD Players, is required.
  2. DirectShow file reader supported only on Windows.
  3. QuickTime file reader support requires QT 5 Player or later and is supported only on Windows.

3.1.4 Supported Input Capture Devices   

3.1.5 Supported Input Color Formats   

Note: I420 is the native color format required by RealVideo codecs. Using I420 as input will improve performance by removing the need to convert the color format prior to encoding.

4 Troubleshooting   

4.1 General   

  1. Do not use pnm:// in the playback URL for a live or on-demand stream generated with Helix Producer 9. Files generated with Helix Producer 9 or later do not include the interleaved audio/video stream required by the PNM protocol.
  2. For delivering RealAudio or RealVideo from a web server, use Single Rate encoding (one audience) only.  Delivering SureStream files via a web server generated with Producer 9 or later will result in the player reporting "A general error has occurred."

4.2 Installation   

  1. On Linux, when installing, be sure that the installer's target directory for shortcuts (symbolic links) exists in you command path. For express installs, this location is /usr/local/bin. For custom installs, it is the location you designate. To check what directories are included in your command path, type "echo $PATH". On Mandrake Linux the path does not include a reference to '/usr/local/bin' by default when logged in as root but does when logged as a user.

4.3 Performance   

  1. When encoding a live broadcast or capture to file using the GUI, Producer may report quality level is medium when there is ample CPU to encode at high quality.  For audio-only broadcasts this can be safely ignored since all but the lossless audio codec does not scale back quality at this level.  For video, try running the encoding process as "High" priority by changing the process priority in the Windows Task Manager. 
  2. RealVideo requires an input color format of I420, aka IYUV (4:2:0).  If needed,  Helix Producer will convert the video color format to I420.  However, this conversion uses additional resources.  If possible, make sure your source color format is I420.  Color format can be controlled through your capture drivers or from the software you use to create your source files.
  3. Resizing video can take a significant portion of CPU.  For optimal performance, set the desired input size using your hardware capture device rather than resizing within Helix Producer.  Resizing within Helix Producer is fastest when increasing in multiples of 2 or decreasing in decrements of 50% (e.g. 640x480 to 320x240).

4.4 Audio And Video Preview   

  1. The output video monitor can not be enabled during encoding.  To monitor output video during an encode, leave the output video display on when the encode is started or use the input video monitor to monitor progress instead.

4.5 File Input   

  1. Encoding DV-AVI files on Windows created with Windows MovieMaker may result in RealMedia files with distorted and out of sync audio. This is caused by the audio track being recorded at 48 kHz, but DirectShow reporting the audio as 32 kHz. DV-AVI files created by other applications do not exhibit this problem.
  2. The Mac OS X port of DNA Producer only supports the following file readers in this release: Any other input file types must first be converted to one of these formats before encoding with Helix DNA Producer on Mac OS X.
  3. There are known issues with encoding uncompressed QuickTime files using the uncompressed QuickTime file reader.  This is most significant for users on Linux (or Mac OS X in Helix Community builds).   If you experience problem with uncompressed files on Windows, install the QuickTime 6 or later player.  If you experience this problem on other platforms, try alternate formats like uncompressed AVI.
  4. Upgrading to DirectShow 8.1 or later can correct the following known problems with earlier DirectShow versions.

4.6 Capture Input   

  1. If you experience a problem with 1394 DV (Firewire) capture (i.e. audio sounds like its going too fast or is garbled), try capturing audio through your sound card or line-in on your computer instead of via the DV cable. This problem is due to audio samples being dropped by one of the DirectShow filters before they reach Producer. RealNetworks is investigating this issue. To capture audio and video from your DV camera, do the following:
    1. For video, connect the DV cable to the 1394 Firewire input on your computer.
    2. For audio, connect the analog on the camera (Dual RCA Jacks or single 1/8" Stereo jack) to the sound card input on your computer.
    3. Configure Helix Producer by selecting the sound card for audio input and the DV input for video.
  2. For capture devices with VFW (Video for Windows) drivers, some settings like video port and audio port can not be set via the command line application.  These settings must be set in the driver-specific configuration dialog that is installed with your capture card.
  3. On Linux, if an audio device is in use when opened by the command line application, the OSS audio driver will load the next available audio device instead of failing.  4Front Technologies has indicated that this behavior is scheduled to change in OSS version 3.99. The new drivers will fail when attempting to access any device except for /dev/dsp which will retain the behavior of finding the next available device.
  4. If you have more than one sound card installed on Windows, the Recording Mixer button will always open the audio mixer for the first sound card.  To change settings for other sound cards, change the sound mixer device by choosing Properties from the Options menu in the Recording Mixer.
  5. On Windows 98 and ME you may find that the video freezes but the encoder continues to encode audio after anywhere from 20 seconds to 40 minutes of live capture using Osprey 1xx, Osprey 2xx and Winnov Videum.
  6. If you experience a crash with WinTV-PVR-pci capture card, it may be due to a second invalid driver installed by the WinTV capture card.  The WinTV-PVR-pci capture card driver installs an invalid capture device called 'Hauppauge PVR Capture (PCI)' in addition to the normal driver.  This causes Helix Producer to crash if you try to list the capture devices using either the command line application the GUI application.  If you experience this problem, you can copy the following text to a file and name the file 'solocap_off.reg'.  Then double click this file in Windows and it will uninstall the invalid driver.
       REGEDIT4
       [-HKEY_CLASSES_ROOT\CLSID\{860BB310-5D01-11d0-BD3B-00A0C911CE86}\Instance\Solo Capture]
  7. The VFW (Video for Windows) driver for the Winnov Videum card saves individual settings for any software application that uses the card.  Because of this, the command line application will retain settings for the Winnov Videum capture card that already existed before you run the command line application the first time.  Before using the command line application, make sure to run the Video Configuration Utility, WnvConfig.exe, and set the proper source settings.  If you have already run the command line application for capture with a Winnov Videum capture card, you must perform the following steps to re-configure the registry settings for the command line application.
    1. Copy the following text to a file and name the file 'videum_remove.reg'.  Then double click this file in Windows and it will uninstall the invalid settings.

          REGEDIT4
          [-HKEY_CURRENT_USER\Software\Winnov\Videum\producer0.exe]

    2. Run the Winnov's Video Configuration Utility, WnvConfig.exe. In this utility set the desired source settings defaults.
    3. Run producer.exe and video capture should now retain the settings specified in the previous step.
  8. Some sound cards do not work with Winnov Videum AV card.  This problem occurs with applications using DirectShow capture.  Such applications include AmCap and Helix Producer.  Winnov offers a patch to resolve this problem.   For more information see: http://support.winnov.com/general_info/videum%20vo/sound_conflits_vo.htm in the Winnov Troubleshooting Database.
  9. Capture from the WinTV capture cards using specific frame sizes may result in corrupted video as follows: If you experience any of these problems, please try different frame sizes or install the VFW driver for the WinTV card.  The VFW driver does not exhibit these problems. You may also check for any updated drivers from WinTV that might address these problems.
  10. If you are using an nVidia-based capture device, and you are unable to capture video from the device, check for updated drivers from your card manufacturer. At the time of Helix Producer 9.1 release, capture devices based on the nVidia chips and Helix Producer were incompatible.
  11. Framerate with Hauppauge WinTV WDM beta release drivers is lower than VfW. Uninstalling the Hauppauge WDM beta release drivers and install the VFW drivers is recommended. Using the RGB555 color format setting in the WinTV driver dialog may also improve frame rate.

4.7 Codecs   

  1. If you are encoding more than 2 channels of audio (Multichannel) you will need to use the command-line producer interface, and specify a job file with the audioGainPrefilter disabled. The audio gain prefilter is always used when encoding from the GUI, and will down-sample Multichannel source audio to stereo.
  2. If you are encoding to Ogg Vorbis audio format, see Ogg Vorbis Encoding Support for configuration information.

4.8 Broadcast Output   

  1. If you need to perform server-side archiving of a SureStream broadcast, use RealServer 8 or earlier.  SureStream broadcasts created with DNA Producer 9.1 cannot be archived on RealServer 8 or earlier.  Single Rate streams however, can be archived on RealServer 8 and earlier.
  2. If you are unable to establish a player connection to a live broadcast, and you want to determine whether the problem is a configuration problem in Helix Producer, try the following:
    1. To confirm that the stream has reached the server, check that the stream appears in the Server Monitor's connections tab.  You should see an entry of Type 'encoder' along with the proper filename.
    2. If you are using the Legacy Server broadcast method, ensure that you have the correct Server mount point ("/encoder/" by default) in your player URL.  For example, rtsp://yourserver.yourcompany.com:554/encoder/live.rm
    3. If you are using any of the Server 9 Push broadcast methods, ensure that you have the correct Server mount point ("/broadcast/" by default) in your player URL.  For example, rtsp://yourserver.yourcompany.com:554/broadcast/live.rm
    4. If you are using the Pull broadcast method, ensure that you have the correct Server mount point ("/broadcast/pull/" by default) in your player URL.  For example, rtsp://yourserver.yourcompany.com:554/broadcast/pull/live.rm 
  3. You must use a password when using the Pull broadcast method from the command line application (-si).  If you wish to broadcast using the Pull broadcast method and not require a password, use a server file with the server definition option (-sd).
  4. When using the Account-Based Push broadcast method, be sure the username and password are added to the correct realm on the Helix Server as follows:
    1. For the Account-based Push broadcast method, users should be added to the Helix Server SecureRBSEncoder realm.
    2. For the Legacy Push broadcast method, users should be added to the Helix Server SecureEncoder realm.
  5. When using the Account-based Push broadcast method with Helix Server 9, you may experience problems making new Account-based Push connections if the Helix Server Administrator is used to reconfigure the Helix Server while existing Account-based Push encodes are running. To avoid this problem, do not reconfigure the Helix Server while Account-based Push encodes are active. You can identify Account-based Push encodes by looking for pairs of entries as follows in the Helix Server Monitor:
    IP ADDRESS TYPE DURATION FILENAME
      encoder 00:02:27 live.rm
    172.23.104.111 player 00:02:27 encfs/servvar.set

    Each of these entries represent a single Account-based Push broadcast session.

  6. If your system is not able to maintain the desired quality level, RealProducer 10 will automatically adjust the quality level by reducing the encoding complexity to medium or low.  However, if RealProducer reports that it is dropping video frames in order to maintain a live encode, try the following:

4.9 RealMedia Editing   

  1. If you are editing RealMedia files crated with Producer 9 or later, you must use the RealMedia Editor that ships with Producer 9 or later.  RealMedia Editor 8.5 cannot edit files generated with Producer 9 or later.
  2. When cutting RealMedia files the last few packets are dropped from the end of the file. If your RealMedia files were created with RealSystem Producer 8.51 or earlier then use RealMedia Editor 8.51 to edit your files. Otherwise, you may want to use SMIL to play only the desired segments instead of physically cutting the file. See below for examples of SMIL as alternatives to cutting and pasting.
  3. If you need to combine two or more RealMedia files that are larger than 2 gigabytes in total, use SMIL. RealMedia Editor can not work with files larger than 2 gigabytes. An example SMIL 1.0 file for such a case is:
    <smil>
    
        <head>
    
           <layout>
    
              <region id="vid" left="0" top="0"/>
    
           </layout>
    
        </head>
    
        <body>
    
           <par>
    
              <seq>
    
                 <video region="vid" src="real8video.rm"/>
    
                 <video re
    gion="vid" src="real8video.rm"/>
    
              </seq>
    
           </par>
    
        </body>
    
     </smil>
  4. If you need to combine Audio/Video rolled files (files created as a result of the file rolling functionality of the RealProducer) use SMIL as shown above. Combining rolled files in RMEditor may result in an error, or cause the audio to loose sync with the video.
  5. If you need to cut a RealMedia file that is larger than 2 gigabytes, use SMIL. RealMedia Editor cannot work with files larger than 2 gigabytes. An example SMIL 1.0 file for such a case is:
    <smil>
    
       <head>
    
          <layout>
    
             <region id="vid" left="0" top="0"/>
    
          </layout>
    
       </head>
    
       <body>
    
          <par>
    
             <video region="vid" src="real8video.rm" clip-begin="0:10" clip-end="0:40"/>
    
          </par>
    
       </body>
    
    </smil>
  6. Cutting the end of a single rate file may leave a short amount of silence and frozen video before the file finishes.
  7. When cutting video files with the RealMedia Editor, it is normal for the video to display the first video key frame following the cut point but for audio to begin playback exactly at the requested point. To achieve a more accurate cut, cut the source video before encoding.
  8. If you need to merge two RealMedia files with image maps in both, do the following:
    1. Export the image maps from both input files using the RealMedia Editor command line application -d option.
    2. Get the duration of the first input file as reported by the RealPlayer.
    3. Use the RealMedia Editor and merge the two RealMedia files into one.
    4. Add the duration reported by the RealPlayer to the times in the image map text dump from the 2nd input file.
    5. Use a text editor and combine the two image map files into one.
    6. Use the RealMedia Editor and merge the combined image map file into the merged RealMedia file.

    Otherwise, RealMedia Editor will drop the image maps from the second file.

  9. Playback of Multichannel audio files at 1/2 speed in RealMedia editor can be safely ignored.  If needed, use RealPlayer 10 to preview the file.  The files can still be safely edited in RealMedia Editor.

5 More Information   

 

Copyright © 2005 RealNetworks, Inc. 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.