Home
Developer Resources
Technical Articles

QNX Technical Articles

QNX® Aviage Multimedia Software Codec for H.264 Installation Note

QNX® Aviage Multimedia Software Codec for H.264

Date of this edition: October 27, 2008

Target OS: QNX® Neutrino® 6.3.2 or 6.4.0 running on x86 platforms.

Host OS: You must have already installed the QNX® Momentics® development suite 6.3.2 or 6.4.0 as a self-hosted QNX Neutrino system, or on one of the following hosts:

Version of QNX Momentics Microsoft Windows Linux
6.3.2 Windows Vista, XP SP2, or 2000 SP4 Linux Red Hat Enterprise Workstation 4 or 5, Red Hat Fedora Core 6 or 7, Ubuntu 6.0.6 LTS or 7.0.4, or SUSE 10
6.4.0 Windows Vista, Vista 64-bit, XP SP2 or SP3, or 2000 SP4 Linux Red Hat Enterprise Workstation 4 or 5, Red Hat Enterprise Server 5.1 64-bit, Red Hat Fedora Core 6 or 7, Ubuntu 6.0.6 LTS or 7, or SUSE 10

Required software:

This package requires the Aviage Multimedia Suite 1.1.0 installed on your system.

If you are installing on a Neutrino 6.3.2 target, you need the following patches:

  • Audio Driver Patch for the Intel 82801G (ICH7 Family) High Definition Audio Controller (Patch ID 684). This patch enables network audio support via two specific API functions: snd_pcm_open_name() and snd_mixer_open_name(). The release notes for this patch include documentation for these new functions.
  • To use USB mediastores, you must have installed the umass-enum Patch (Patch ID 611).

If you are installing on a Neutrino 6.3.2 target, you need the following software to support video:

  • QNX Momentics Advanced Graphics TDK 2.0.0.
  • QNX Momentics 6.3.0 SP2 Character-Set Translation and devi-hid Photon Patch (Patch ID 842)
  • QNX Momentics 6.3.0 SP2 Image and Input Patch for the Advanced Graphics TDK (Patch ID 841)
  • QNX Momentics 6.3.0 SP2 PE and SE Core Patch for the Advanced Graphics TDK (Patch ID 331)

Note: For the most up-to-date version of this note, go to our website (www.qnx.com), log into your myQNX account, then go to the Download Center.

Contents

Installation procedure

To install the QNX Aviage Multimedia Software Codec for H.264 package, follow the procedure described below.

  1. Log in as root (or with administrator privileges on Windows).
  2. Download the H264-decoder-nnnnnnnn.tar package to your host environment, where nnnnnnnn is the build number for the package.
  3. Determine the base directory of your QNX Momentics installation by opening a command shell and using the qconfig command. For example:
    $ qconfig
    QNX Installations
    
    Installation Name: QNX Momentics 6.3.2
    Version: 6.3.2
    Base Directory: /usr/qnx632/
    QNX_HOST: /usr/qnx632/host/qnx6/x86/
    QNX_TARGET: /usr/qnx632/target/qnx6/

    The base directory in this example is /usr/qnx632/, but it could be different on your machine, depending on your host and where you installed QNX Momentics.

  4. Extract the archive you downloaded into the installation directory (base_dir/install), using one of the methods describe below: .

Command-line based extraction

Command-line based extractions differ according to the host.

Windows hosts

To extract the package on a Windows host:

  1. Open a command prompt (cmd.exe) and switch to the drive indicated in the base directory that you found in step 3 above. (e.g. C:).
  2. Copy the package to your installation directory (base_dir\install), replacing base_dir with the path you found in step 3, and package with the name of the package:
    copy drive:\package base_dir\install
  3. Use the following commands to extract the package contents. Do not specify the drive letter in the archive path:
    cd base_dir\install
    tar -xvf archive

Neutrino and Linux hosts

To extract the package on a Neutrino of Linux host:

  1. Open a command shell.
  2. Use the following commands, replacing base_dir with the path found in step 3, and package with the full path to the downloaded archive:
    cd base_dir/install
    tar -x -v -f package

GUI based extraction

To extract the package using a GUI application:

  1. Use any GUI-based application that supports the TAR format (e.g. WinZIP under Windows), making sure that the destination directory is your installation directory (base_dir/install).

Using WinZip

If you use WinZIP:

  1. Choose Options-->Configuration.
  2. Switch to the “Miscellaneous” tab in this dialog.
  3. Turn off the TAR file smart CR/LF conversion option.

Note: If the TAR file smart CR/LF conversion option is turned on and you extract the archive, your shiplist file will contain unwanted ^M characters.

Structure of the package

The QNX Aviage Multimedia Software Codec for H.264 package is installed in the base_dir/install/mmedia-h264/nnnnnnnn/ directory. This directory includes:

manifest
Contains the checksums of the files shipped in the package (as generated by the cksum utility).
shiplist
A list of the files included in the package.
target
A directory of fixes related to components that would be built into QNX Neutrino target or runtime systems.
H264_decoder_inst.html
This installation note. Please read it through before continuing with the installation.
H264_decoder_rel.html
The release notes for the QNX Aviage Multimedia Software Codec for H.264 package

Applying the package

After extracting and installing the package, you must determine how to incorporate it into your host system.

The package is stored in a directory (or folder) that is separate from your development system. This design allows you some flexibility in how you apply the package.

You can use any one of three methods to apply the package:


Note: The first two methods work only for files within the QNX_TARGET subtree. For tools and other host-specific files, you must replace the development host files with the files from the package.

Method 1: Modify build and configuration files

With this method, you use the files in the package by modifying buildfiles to include the full path to the files in the package subdirectory.

This method allows you to test the package before committing to it. It does not affect your development host. If you choose to stop using the package, you only need to change the buildfiles back to their previous state.

Method 2: Use an override directory tree

With this method you create an “override” tree, and tell the system builder and mkifs utilities to look for binaries in a particular subdirectory before looking in the standard location ($QNX_TARGET).

To do this from the command line:

  1. cd base_dir
  2. mkdir build
  3. pax -rw /target/qnx6/* build/
  4. Add base_dir/build to your system builder paths. For mkifs, you can use the -r option, specifying the same path.

Like Method 1, this method allows you to test the package before commmiting to it, and to easily revert back to your previous installation.

Method 3: Replace the development host files

This method replaces files on your development host with files from the new package.


Caution: This is a destructive procedure. We recommend that you create a backup of the affected files before proceeding.

Creating a backup

To create a backup on any of our hosts:

  1. (Windows only) From the cmd.exe prompt, run ksh.
  2. Go to the base directory:

    cd base_dir/

  3. Make a backup of the files that will be overwritten:
    pax -w < install/mmedia-h264/nnnnnnnn/shiplist > install/mmedia-h264/nnnnnnnn/backup.tar

    You can use whatever name you like for the backup archive. The pax utility may display some error messages when it attempts to back up nonexistent files for host operating systems other than the one you're using. You can ignore these messages.

  4. (Windows only) Exit ksh.

Copying the files — Windows hosts

To apply the package on a Windows system from the command prompt:

  1. Switch back to cmd.exe from ksh.
  2. Switch to the drive specified in your base directory (e.g. C:).
  3. Go to the directory with the package installation. Make sure that you use the backslash (\) in all pathnames.
    cd base_dir\install\mmedia-h264\nnnnnnnn\
  4. Install the target updates:
    cd target
    cp -r . ..\..\..\..\target

Copying the files — Neutrino and Linux hosts

To apply the package on a Neutrino or Linux system:

  1. Go to the package directory:
    cd base_dir/install/mmedia-h264/nnnnnnnn/
  2. Install the target updates:
    grep '^target' shiplist | pax -rw base_dir/.
  3. (QNX Neutrino only — optional) Install the runtime updates:
    cd target/qnx6/x86
    find ! -type d | pax -rw /

Technical support

If you have any questions, comments, or problems with a QNX product, please contact Technical Support. For more information, see the How to Get Help chapter of the Welcome to QNX Momentics guide or visit our website, www.qnx.com.