Intel® Integrated Performance Primitives v4.1 for Linux* on Intel® Personal Internet Client Architecture
Processors Release Notes
July 20, 2004
Ordering Number: 302548-002
6.1 Installed Files and
Libraries
8.1.1 What Has Been Added
In This Release
10. Technical
Support and Feedback
This package contains Intel® Integrated Performance Primitives
(Intel® IPP) Version 4.1 for Linux*
on Intel® Personal Internet Client Architecture (Intel® PCA) Processors. This
release version includes the following features that are described in Features of Intel® IPP:
·
Part
I Signal Processing – Signal processing primitives
·
Part
II Video Codecs – H.263 video decoder, H.264 video decoder and MPEG-4 video codec primitives
·
Part
III Audio Codecs – MP3 audio codec and AAC audio decoder primitives
·
Part IV Image Codecs –
JPEG and JPEG 2000 image codec primitives
·
Part
V Image Processing – Image processing primitives
·
Part
VI Speech Codecs – GSM-AMR and G.723.1/A codec primitives
·
Part
VII Cryptography – FIPS standardized symmetric/asymmetric ciphers,
hash/HMAC/DAA algorithm
·
Part
VIII Speech Recognition – Feature extraction and vector quantization, voice
activity detection, acoustic echo cancellation, and noise reduction primitives
The Intel® IPP Version 4.1 builds on the
Intel® IPP Version 4.0 by adding new video codec primitives. For more information, see the Changes Since Last Release section.
Intel® IPP Version 4.1 was developed under the following
environment:
·
Development Tools
–
(1) xscale_le-gcc (GCC) 3.2.1 20020930 (MontaVista), glibc 2.2.5 and binutils 2.12.1.
(2) arm-linux-gcc
(GCC) 3.3.2, glibc 2.3.2 and binutils
2.14.90.0.7 20031029.
·
Processor – Intel®
PXA250, PXA255, PXA262, and PXA263 Processors with Intel XScale® technology
·
Reference board –
Intel® DBPXA250, DBPXA255, DBPXA262, or DBPXA263
Development Platform
·
Operating system
–
(1) Montavista Professional
Edition 3.0: Linux* kernel version 2.4.18_mvlcee30_dbpxa250.
(2) Linux Preview Kit for Intel®
DBPXA255 Development Platform 04-28-2004: Linux* kernel version 2.4.19-rmk2-pxa2.
The
software is aimed at the above environment. However, efforts were made to keep
the software in the ANSI C style whenever possible. Although Intel® IPP functions were tested, no
warranty, expressed or implied, is
associated with these functions and all the associated materials in this
package. The user assumes all risk. See the license agreement for
details.
See the Intel® Integrated Performance
Primitives on Intel® Personal
Internet Client Architecture Processors Reference Manual.
Other related documentation that may be helpful while reading
this document are listed in the reference section of the Intel®
Integrated Performance Primitives on
Intel® Personal Internet Client Architecture Processors
Reference Manual (order number 278893).
Intel® IPP version 4.1 is organized into the following parts:
Parts |
Features |
Part I -Signal processing primitives |
·
Vector
Initialization, Arithmetic, Thresholding, and Statistics ·
Filtering ·
Convolution ·
Transforms ·
Sample
generation ·
Windowing ·
Kodiak |
Part II
-Video codecs:
H.263 video decoder, H.264 video
decoder and MPEG-4 video codec primitives |
·
Variable
length decoding (VLD) and inverse zigzag positioning ·
Variable
length encoding (VLE) and forward zigzag positioning (MPEG-4 only) ·
Inverse
quantization ·
Forward
quantization ·
Inverse
discrete cosine transforms (IDCT) ·
Forward
discrete cosine transforms (DCT) ·
Motion
vector decoding and padding ·
Motion
vector encoding (MPEG-4 Only) ·
Texture
padding (MPEG-4 Only) ·
Overlapped
block motion compensation (OBMC) ·
Coefficient
prediction ·
Block
based decoding ·
Block
based encoding (MPEG-4 only) ·
Deblocking
filtering ·
Motion
compensation and reconstruction ·
Motion
estimation ·
Binary
alpha block (BAB) decoding (MPEG-4
only) · Context-based adaptive variable length decoding (CAVLC) (H.264 only) · 1/4 luma and 1/8 chroma sample interpolation (H.264 only) ·
Inverse
4x4 and 2x2 integer transform (H.264 only) |
Part
III -Audio codecs:
MP3 audio codec
and AAC audio decoder primitives |
·
Frame
packing and unpacking operations ·
Huffman
encoding and decoding ·
Quantization
and requantization module ·
Modified
discrete cosine transform and inverse transform (MDCT and IMDCT) ·
Pseudo
quadrature mirror analysis and synthesis filter bank (PQMF) ·
Psychoacoustic
model ·
Long
term prediction ·
Perceptual
noise substitution ·
Temporal
noise shaping ·
Middle/Side
stereo module ·
Intensity
stereo module ·
Temporal
noise shaping (TNS) module |
Part
IV -Image codecs: JPEG and JPEG 2000 image codec primitives |
·
Color
conversion ·
Discrete
cosine transform (DCT)/quantization and IDCT/dequantization ·
Huffman
encoding and decoding ·
Baseline
sequential DCT-based encoding and decoding ·
Progressive
DCT-based encoding and decoding ·
Reversible
and irreversible discrete wavelet transform (DWT) |
Part V: Image Processing Primitives |
·
General
arithmetic and logical operations ·
Filtering ·
Linear
transforms ·
Color
space conversion ·
Morphological
operations ·
Statistics |
Part
VI: Speech codecs:
GSM-AMR and G.723.1/A codec
primitives |
·
Linear
prediction (LP) analysis ·
Adaptive-codebook
search ·
Fixed-codebook
search ·
Discontinuous
transmission ·
Filtering ·
Post-filtering |
Part
VII: Cryptography – FIPS standardized
symmetric/asymmetric ciphers, hash/HMAC/DAA algorithm |
·
DES
ECB/CBC/CFB modes ·
TDES
ECB/CBC/CFB modes ·
AES
ECB/CBC/CFB modes ·
RIJNDAEL
128 ECB/CBC/CFB modes ·
RIJNDAEL
192 ECB/CBC/CFB modes ·
RIJNDAEL
256 ECB/CBC/CFB modes ·
Blowfish
ECB/CBC/CFB modes ·
Twofish
ECB/CBC/CFB modes ·
DAA
DES/ TDES /Rijndeal128/192/256 /Blowfish /Twofish ·
SHA1/SHA256/384/512
/MD5 message digest ·
HMAC
SHA1/SHA256/384/512 /MD5 ·
Variable
length big number arithmetic ·
Modulus
inversion, exponentiation ·
Pseudo-random
number ·
Prime
generation and test ·
RSA
key generation and key check, RSA encryption/decryption ·
DSA
key generation and key check, DSA signature/verification |
Part VIII:
Speech recognition – Feature extraction,
Vector guantization, voice activity detection, acoustic echo cancellation and
noise reduction primitives |
·
Feature
extraction ·
Vector
quantization ·
Voice
activity detection ·
Noise
reduction ·
Acoustic
echo cancellation |
The installation file has the following components:
Each binary library has a release version and a debug
version. In the debug version, the functions check the input arguments and
provide error codes when the functions are not used correctly. In the release
version, input arguments are not fully checked, and incorrect usage may result
in unpredictable behavior.
For more information, see the Intel® Integrated
Performance Primitives on Intel® Personal Internet Client
Architecture Processors Reference Manual.
Filename |
Description |
ipp.h |
Header file containing the references to all include
files. |
ippdefs.h |
Header file containing the Intel® IPP Common
Types and Macro Definitions. |
ippSP.h |
Header file for the signal-processing domain. This
header file contains the "C" prototype for every primitive in this
domain and associated structures, constants, etc. |
ippVC.h |
Header file for the video codec domain. This header file contains the "C"
prototype for every primitive in this domain and associated structures,
constants, etc. |
ippAC.h |
Header file for the audio codec domain. This header file
contains the "C" prototype for every primitive in this domain and
associated structures, constants, etc. |
ippJP.h |
Header file for the image codec domain. This header file
contains the "C" prototype for every primitive in this domain and
associated structures, constants, etc. |
ippIP.h |
Header file for the image-processing domain. This
header file contains the "C" prototype for every primitive in this
domain and associated structures, constants, etc. |
ippSC.h |
Header file for the speech codec domain. This header file contains the "C" prototype for every primitive in this domain and associated structures, constants, etc. |
ippCP.h |
Header file for the cryptography domain. This header file contains the "C" prototype for every primitive in this domain and associated structures, constants, etc. |
ippSR.h |
Header file for the speech recognition domain. This header file contains the "C" prototype for every primitive in this domain and associated structures, constants, etc. |
Filename |
Description |
ippSP_XSC41LNX_r.a
|
Release
version of signal processing binary library file. |
ippSP_XSC41LNX_d.a |
Debug
version of signal processing binary library file. |
ippVC_XSC41LNX_r.a |
Release
version of video codec binary library file. |
ippVC_XSC41LNX_d.a
|
Debug
version of video codec binary library file. |
ippAC_XSC41LNX_r.a |
Release
version of audio codec binary library file. |
ippAC_XSC41LNX_d.a |
Debug
version of audio codec binary library file. |
ippJP_XSC41LNX_r.a |
Release
version of image codec binary library file. |
ippJP_XSC41LNX_d.a |
Debug
version of image codec binary library file. |
ippIP_XSC41LNX_r.a |
Release
version of image processing binary library file. |
ippIP_XSC41LNX_d.a |
Debug
version of image processing binary library file. |
ippSC_XSC41LNX_r.a |
Release version of speech codec binary library file. |
ippSC_XSC41LNX_d.a |
Debug version of speech codec binary library file. |
ippCP_XSC41LNX_r.a |
Release version of cryptographic primitives binary library file. |
ippCP_XSC41LNX_d.a |
Debug version of cryptographic primitives binary library file. |
ippSR_XSC41LNX_r.a |
Release version of speech recognition binary library file. |
ippSR_XSC41LNX_d.a |
Debug version of speech recognition binary library file. |
The following documentation is included with this kit:
·
ipplic.htm
(license agreement)
·
relnote_l_ipp_pca_4_1.htm
(this file)
·
redist.txt: redistributable
file list
·
ippman_pca.pdf: reference manual
The following sample code illustrates the usage of Intel®
IPP in different applications:
·
Digital
Filtering
·
Random
Signal Generation
·
Sinusoidal
Signal Generation
·
Vector
Manipulation
·
Artificial
Audio Reverberation
·
Adaptive
Noise Cancellation
Note:
The sample code may or may not represent the best
implementation Intel® IPP primitives. Therefore, the sample code
must not be used in benchmarks or any other purposes other than understanding
the usage of Intel® IPP functions.
See the license agreement for more information.
The Intel® IPP Version 4.1 for the Intel® PXA25x and
PXA26x Processors software requires:
·
Host
machine: An Intel® Pentium® 4 processor 1.5
GHz based PC with 512MB
RAM, or better
·
Host
machine operating system: Red Hat* Linux*
Release 7.2, or higher version.
·
Development
tools:
(1) xscale_le-gcc (GCC) 3.2.1 20020930 (MontaVista), glibc 2.2.5 and binutils 2.12.1.
(2) arm-linux-gcc
(GCC) 3.3.2, glibc 2.3.2 and binutils
2.14.90.0.7 20031029.
Red Hat* RPM version 4.0.3 or higher version.
·
Target
platform: Intel® DBPXA250, DBPXA255, DBPXA262, or DBPXA263
Development Platform
To install the Intel® IPP for Linux* package:
1.
Use tar to
extract the Intel® IPP package
into an appropriate directory.
Note: Write access on the
target directory is required to complete this step.
1.
Execute
the install script "./install" that was
extracted into the tar target directory during step 1. Any previously
installed Intel® software products will be listed, followed by a menu of newly
available products for installation. If the installation script has been
run successfully, then one of the line items will read as follows: "Intel®
Integrated Performance Primitives Version 4.1 for Linux on Intel® PCA
Processors."
Note: Root (superuser)
access is required to complete this step.
2.
Select
the IPP package line item from the above list in order to complete the
installation procedure. The installation script will take care of all
dependencies. It is strongly recommended that the rpm options
-ivh --force be
used in order to force any required updates of existing and
potentially obsolete files. The recommended installation path is /opt/intel/ipp41/pca_xsc. After installation,
the packages installed will be displayed, followed by a new
installation menu. Enter 'x' to
exit the install script.
Intel® IPP uses Macrovision's* FLEXlm* electronic licensing
technology. License management should be transparent. However, if you have any
problems during installation, please verify that a current license file (*.lic)
is located in the same directory as the install file. If you still have
problems, please submit an issue to http://premier.intel.com. See the "Technical
Support and Feedback" section of this document for details.
Cryptography primitives are contained in a separate package.
The cryptography package can be obtained through http://premier.intel.com.
Before installing the cryptography package, the
Intel® IPP package must be installed.
To integrate Intel® IPP into your development
environment, the *.h and *.a files must be included in your search path.
The following files reside in these directories (where
~ is the directory chosen during the installation process):
~/ipp41/pca_xsc |
· Main directory. · relnote_l_ipp_pca_4_1.htm - release notes (this file) ·
ipplic.htm - license agreement document · redist.txt - redistributable file list · ippman_pca.pdf – reference manual · uninstall.sh – uninstallation file |
~/ipp41/pca_xsc/include |
· Directory for C "include" files. · ipp.h - master Intel® IPP include file · ippdefs.h - master Intel® IPP definition include file · ipp*.h - include files for each domain accessed through ipp.h |
~/ipp41/pca_xsc/lib |
· Directory for binary library components. |
~/ipp41/pca_xsc/lib |
· Directory for one set of binary library components compatible with the toolchain from MontaVista PE 3.0 gold release. · *.a - chosen static library files |
~/ipp41/pca_xsc/lib |
· Directory for one set of binary library components compatible with the toolchain: arm-linux-gcc 3.3.2. · *.a - chosen static library files |
~/ipp41/pca_xsc/example |
· Directory for sample code |
~/ipp41/pca_xsc/example
|
· Directory for sample code of adaptive noise cancellation. · readme.txt - brief overview · Makefile_mvlpe – Linux makefile using the toolchain from MontaVista PE 3.0 gold release. · Makefile_pvkit – Linux makefile using the toolchain: arm-linux-gcc 3.3.2. · *.h - include files · *.c - source code files |
~/ipp41/pca_xsc/example
|
· Directory for sample code of filtering. · readme.txt - brief overview · Makefile_mvlpe – Linux makefile using the toolchain from MontaVista PE 3.0 gold release. · Makefile_pvkit – Linux makefile using the toolchain: arm-linux-gcc 3.3.2. · *.h - include files · *.c - source code files |
~/ipp41/pca_xsc/example |
· Directory for sample code of OSCR timer for Intel® PCA Processors. · readme.txt - brief overview · *.h - include files · *.c - source code files · *.o – object files |
~/ipp41/pca_xsc/example |
· Directory for sample code of artificial reverberation · readme.txt - brief overview · Makefile_mvlpe – Linux makefile using the toolchain from MontaVista PE 3.0 gold release. · Makefile_pvkit – Linux makefile using the toolchain: arm-linux-gcc 3.3.2. · *.h - include files · *.c - source code files |
~/ipp41/pca_xsc/example |
· Directory for sample code of signal generation. · readme.txt - brief overview · Makefile_mvlpe – Linux makefile using the toolchain from MontaVista PE 3.0 gold release. · Makefile_pvkit – Linux makefile using the toolchain: arm-linux-gcc 3.3.2. · *.h - include files · *.c - source code files |
~/ipp41/pca_xsc/example |
· Directory for sample code of vector manipulation. · readme.txt - brief overview · Makefile_mvlpe – Linux makefile using the toolchain from MontaVista PE 3.0 gold release. · Makefile_pvkit – Linux makefile using the toolchain: arm-linux-gcc 3.3.2. · *.h - include files · *.c - source code files |
There are no known problems at the time of printing of this
document.
Users of Intel® IPP version 4.0 for the Intel® Personal Internet
Client Architecture Processors should note the changes stated in the following
sections.
The following new APIs are available
and described in the Intel® Integrated Performance Primitives on
Intel® Personal Internet Client Architecture Processors Reference
Manual.
Section |
New Intel® IPP APIs |
Audio
codec |
ippsDecodeChanPairElt_MPEG4_AAC |
Video codec |
ippiInterpolateLuma_H264_8u_C1R ippiInterpolateChroma_H264_8u_C1R ippiPredictIntra_4x4_H264_8u_C1R ippiPredictIntra_16x16_H264_8u_C1R ippiPredictIntraChroma8x8_H264_8u_C1R ippiTransformDequantLumaDCFromPair_H264_8u16s_C1 ippiTransformDequantChromaDCFromPair_H264_8u16s_C1 ippiDequantTransformResidualFromPairAndAdd_H264_8u_C1 ippiFilterDeblockingLuma_VerEdge_H264_8u_C1IR ippiFilterDeblockingLuma_HorEdge_H264_8u_C1IR ippiFilterDeblockingChroma_VerEdge_H264_8u_C1IR ippiFilterDeblockingChroma_HorEdge_H264_8u_C1IR ippiDecodeCoeffsToPairCAVLC_H264_1u8u ippiDecodeChromaDCCoeffsToPairCAVLC_H264_1u8u |
The changed primitives are described in the related
chapters of the Intel®
Integrated Performance Primitives on Intel® Personal Internet Client
Architecture Processors Reference Manual (Order number
278893).
Please refer to the Intel® Integrated Performance Primitives
license file for the license agreement details.
MPEG-1, MPEG-2, MPEG-4, H.263, MP3, GSM/AMR, JPEG, JPEG 2000,
Your feedback is very important to
us. To receive technical support and product updates for the tools
provided in this product you need to register at the Intel® Registration Center and click on "Create New
Account".
Note:
If you are having trouble registering or are unable to access your Premier
Support account, contact developer.support@intel.com.
Please do not email your technical issue to developer.support@intel.com as it is not a secure medium.
To submit an issue via the Intel® Premier Support
website please perform the following steps:
1.
Ensure
that Java* and JavaScript* are enabled in your browser.
2.
Go
to https://premier.intel.com/.
3.
Type
in your Login and Password. Both are case-sensitive.
4.
Click
the "Submit" button.
5.
Read
the Confidentiality Statement and click the "I Accept" button.
6.
Click
on the "Go" button next to the "Product" drop-down list.
7.
Click
on the "Submit Issue" link in the left navigation bar.
8.
Choose
"Development
Environment (tools, SDV, EAP)" from the "Product Type" drop-down list.
9.
If
this is a software or license-related issue choose "Intel IPP for Linux*" from the "Product Name" drop-down list.
10. Enter your question and complete the
fields in the windows that follow to successfully submit the issue.
Please follow these guidelines when
forming your problem report or product suggestion:
1.
Describe
your difficulty or suggestion.
For problem reports please be as
specific as possible, so that we may reproduce the problem. Please include a
small test case if possible.
2.
Describe
your system configuration information.
Be sure to include specific information that may be applicable to your setup:
operating system, name and version number of installed applications, and
anything else that may be relevant to helping us address your concern.
INFORMATION
IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. NO LICENSE,
EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY
RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL'S TERMS AND
CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER,
AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO SALE AND/OR
USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR
A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT
OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in
medical, life saving, or life sustaining applications. Intel may make changes
to specifications and product descriptions at any time, without notice.
Designers must not rely on the absence or characteristics of any features
or instructions marked "reserved" or "undefined." Intel
reserves these for future definition and shall have no responsibility
whatsoever for conflicts or incompatibilities arising from future changes to
them.
MPEG is an international standard compression/decompression of digital
audio and digital video promoted by ISO. Implementations of MPEG CODECs, or
MPEG enabled platforms may require licenses from various entities, including
Intel Corporation.
This document and the software described in it are furnished under license
and may only be used or copied in accordance with the terms of the license. The
information in this document is furnished for informational use only, is
subject to change without notice, and should not be construed as a commitment
by Intel Corporation. Intel Corporation assumes no responsibility or liability
for any errors or inaccuracies that may appear in this document or any software
that may be provided in association with this document. Except as permitted by
such license, no part of this document may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means without the express written
consent of Intel Corporation. Contact your local Intel sales office or your
distributor to obtain the latest specifications.
Copies of documents which have an ordering number and are referenced in
this document, or other Intel literature may be obtained by calling
1-800-548-4725 or by visiting Intel's website at http://www.intel.com.
Copyright © Intel Corporation, 2004
Intel, Intel IPP,
Intel PCA, Intel XScale, and Pentium 4 are trademarks or registered trademarks
of Intel Corporation or its subsidiaries in the
* Other brands and names are the property of their respective owners.