Codec Engine 2.25.04.15 Release Notes
June 2010
This Codec Engine Release is targetted to DaVinci and OMAP platforms,
enabling users to instantiate and utilize both local and remote codecs.
In addition to heterogenous devices (e.g. DM644x, DM6467, OMAP2530, OMAP3530,
etc.), it supports single processor environments as well; specifically C64+
devices (e.g. DM643x, and DM648), ARM devices (e.g. DM355,
DM365, OMAP3503) and x86 devices running Linux.
Introduction,
Documentation,
What's New,
Upgrade Info,
Compatibility Information,
Device Support,
Validation Info,
Known Issues,
Examples,
Version Information,
Technical Support.
The Codec Engine is a software platform for algorithm execution that
satisfies the following, high-level goals:
- Robust - drives pre-integrated components with fully
characterized performance.
- Easy to use - app developers specify what needs to
be run, but not how or where.
- Extensible and Configurable - new algorithms can be added
by anyone, using standard tools and techniques.
- Portable - API's are target, platform, and in many cases
even codec independant.
Primary packages in this Codec Engine release are briefly described here.
(There are others, see the Configuration Reference
Guide documentation for a complete package list.)
- ti.sdo.ce - The Codec Engine runtime.
- ti.sdo.ce.video2 - The Codec Engine video component
(supporting the XDM IVIDDEC2 interface). An example is also provided.
- ti.sdo.ce.video1 - The Codec Engine video component
(supporting the XDM IVIDDEC1 and IVIDENC1 interfaces). An example is also
provided.
- ti.sdo.ce.image1 - The Codec Engine image component
(supporting the XDM IIMGDEC1 and IIMGENC1 interfaces). An example is also
provided.
- ti.sdo.ce.speech1 - The Codec Engine speech component
(supporting the XDM ISPHDEC1 and ISPHENC1 interfaces). An example is also
provided.
- ti.sdo.ce.audio1 - The Codec Engine audio component
(supporting the XDM IAUDDEC1 and IAUDENC1 interfaces). An example is also
provided.
- ti.sdo.ce.osal - The Codec Engine OS Abstraction
Layer. This package insulates CE from the OS it's running on, and
provides a few Modules for customers to use (e.g. Memory).
- ti.sdo.ce.utils.trace - The Codec Engine utility
package for trace. This includes the TraceUtils module. This makes
tracing features easier to use by an application. It will be
supported in this release, but may be replaced in a future release
with an incompatible implementation.
Additionally, this release of the Codec Engine continues to support
the deprecated XDM interfaces included in XDAIS 5.00. This
support is provided in the following packages:
- ti.sdo.ce.video - The Codec Engine video component
(supporting the XDM IVIDDEC and IVIDENC interfaces). An example is also
provided.
- ti.sdo.ce.image - The Codec Engine image component
(supporting the XDM IIMGDEC and IIMGENC interfaces). An example is also
provided.
- ti.sdo.ce.speech - The Codec Engine speech/voice
component
(supporting the XDM ISPHDEC and ISPHENC interfaces). An example is also
provided.
- ti.sdo.ce.audio - The Codec Engine audio component
(supporting the XDM IAUDDEC and IAUDENC interfaces). An example is also
provided.
Codec Engine is provided as non-rebuildable libraries. Source is
provided for debugging and educational value, but is not intended to be
modified. Modified sources will not be supported.
Some distributions of this product include a "cetools" directory
containing some dependent products for convenience. Products included in this release are:
- XDAIS 6.25.02.11
- EDMA3 Resource Manager 01.11.00.02 (from the EDMA3 Low Level Driver
product).
- BIOS Utils 1.02.02
- Framework Components 2.25.02.06
- Linux Utils 2.25.03.09
- WinCE Utils 1.00.03.13
- LPM 1.24.02.09
See
this Codec Engine cetools explanation for further details.
The following documentation is available:
In addition, users are encouraged to monitor (and contribute to!) the
TI Embedded Processors Wiki.
Release notes from previous releases are also available in the relnotes_archive directory.
The following significant changes have been made since 1.00
2.25.04.15
- The following defects were resolved:
ID |
Headline |
SDOCM00071370 |
CE releases that contain cetools should report that as a repository in the eclipse product plugin
|
SDOCM00071499 |
Genserver Wizard may generate duplicate config params and incorrect config param assignments
|
SDOCM00071500 |
Genserver Wizard is settiing the default memory segment to SDRAM for OMAPL138 when it should be DDR2
|
SDOCM00071205 |
Replace deprecated Memory_contigAlloc() calls in examples with supported Memory_alloc() calls
|
SDOCM00071502 |
CERuntime_init()/CERuntime_exit()/CERuntime_init() followed by VISA control or process calls will cause seg fault in Linux
|
SDOCM00071304 |
Server isn't sanity checking C674 scratch array sizes during config
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00070670 |
Provide IALG-requested cached memory on a per-alg basis
|
2.25.03.13
- The following defects were resolved:
ID |
Headline |
SDOCM00070766 |
Memory_contigFree() half-succeeds with wrong 'size', leading to bad translation cache entry
|
SDOCM00070216 |
Close XML file when saving in GenCodecPkg and Genserver wizards
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00070775 |
Integrate GenServer and GenCodecPkg feedback
|
SDOCM00070764 |
Add 'producerId' to all packages, ensuring the marketing version follows the pre-built packages
|
2.25.02.11
- The following defects were resolved:
ID |
Headline |
SDOCM00046286 |
BIOSUTILS_INSTALL_DIR in xdcpaths.mak should list correct version
|
SDOCM00068086 |
Codec Engine doesn't have loadmodules.sh, etc. for DM365
|
SDOCM00066275 |
Off-chip memory in Genserver Memory Config pane for OMAPL13[78] should be SDRAM
|
SDOCM00065814 |
Codec Engine "speech" example does not initialize SPHENC1_InArgs encInArgs.data.buf to NULL
|
SDOCM00066601 |
xdcpaths.mak doesn't add BIOS to the XDCPATH when building with PROGRAMS including APP_LOCAL and not DSP_SERVER
|
SDOCM00069685 |
DSP can hang if it runs out of MSGQs
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00068948 |
GenCodecPkg Wizard Enhancements
|
SDOCM00068074 |
Provide better tracing when BIOS memory runs out during remote thread creation
|
SDOCM00068139 |
Need option to use Cache_wbInvAll() in codec engine skeletons
|
2.25.01.06
- The following defects were resolved:
ID |
Headline |
SDOCM00064738 |
CE Codec Class stubs built for debug will segfault in processWait() function if VISA_wait() fails by timing out
|
SDOCM00046286 |
BIOSUTILS_INSTALL_DIR in xdcpaths.mak should list correct version
|
SDOCM00064826 |
OMAPL138 folder missing from examples/apps/system_files
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00064249 |
Add com.ti.dvt.tools.menu addition to codec engine eclipse plugin
|
2.25.00.05
- New features
- Added support for DM6467T and OMAP-L138 devices.
- Updated Dependencies
- XDAIS 6.25
- Framework Components 2.25
- Linux Utils 2.25.01
- DSP Link 1.64
- DSP/BIOS 5.41
- XDCtools 3.16
- The following defects were resolved:
ID |
Headline |
SDOCM00061210 |
xdcpaths.mak doesn't add LPM_INSTALL_DIR and EDMA3_LLD_INSTALL_DIR to XDCPATH
|
SDOCM00062770 |
UNIVERSAL_process() fails to pass outBufs to remote algs if inBufs is NULL
|
SDOCM00061557 |
Queue_get and Queue_put should be atomic
|
SDOCM00062280 |
ti.sdo.ce.alg's package.xs always plugs in Sem_* functions for RMAN, MP use-cases would need SemMP_* functions.
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00062281 |
CE needs to plug in implementations for "acquire/releaseLock" functions for the ti.sdo.fc.ires.grouputils.GROUPTUILS module
|
SDOCM00062629 |
ICodec.serverFxns and .stubFxns shouldn't be 'readonly' so app and server cfg scripts can assign them
|
SDOCM00062826 |
OMAPL138 Support in Genserver
|
SDOCM00063583 |
Enable error logging when CE_CHECK is set
|
SDOCM00060523 |
Add memory map config to genserver wizard
|
2.24
- New features
- WinCE support added for OMAP3 and DM644x
- Updated Dependencies
- XDCtools 3.10.05
- XDAIS 6.24
- Framework Components 2.24
- Linux Utils 2.24.01 (Linux only)
- DSP Link 1.61.03 (Linux) and DSP Link 1.61.04 (WinCE)
- LPM 1.24
- DSP/BIOS 5.33.05
- New Dependencies
- WinCE Utils 1.00 (WinCE only)
- The following defects were resolved:
ID |
Headline |
SDOCM00046289 |
Missing Directories in Codec Engine build_instructions.html file
|
SDOCM00056026 |
Lad daemon renders the dsp inoperable on evmDM6446
|
SDOCM00056164 |
Power enabled server missing on evmDM6446
|
SDOCM00056166 |
Power enabled image1 copy example missing on evmDM6446
|
SDOCM00057124 |
genserver wizard generates wrong groupId values
|
SDOCM00057323 |
Power management is broken on omap2530
|
SDOCM00057417 |
Need instructions on how to rebuild DSPLINK for CE
|
SDOCM00058045 |
IUNIVERSAL DSP-side skeleton can cause memory access violations when codec doesn't write to outbuf with CPU
|
- The following enhancements were resolved:
ID |
Headline |
SDOCM00046186 |
Need a better solution for setting LONGNAME
|
SDOCM00054323 |
Need a better way to build codec engine examples
|
2.23
- Updated Dependencies
- Framework Components 2.23
- Linux Utils 2.23
- DSP Link 1.61.01
- LPM 1.23
- The following defects were resolved:
ID |
Headline |
SDOCM00053545 |
Need to add/set EDMA3_LLD_INSTALL_DIR and LPM_INSTALL_DIR in xdcpaths.mak
|
SDOCM00053715 |
LPM drivers missing in loadmodules script on evmDM6446
|
SDOCM00054193 |
CE Comm_delete for DSPLink needs to validate/trace return value from MSGQ_close.
|
2.22
- New features
- Added support for DM365 and OMAP-L137 devices
- Added hibernate/resume power management for OMAP3 devices (built on
the LPM - Local Power Manager - product)
- Initial, experimental release of
ti.sdo.ce.wizards.genserver - a graphical
wizard for generating Codec Servers (supports multiple codecs).
- Updated Dependencies
- Framework Components 2.22
- Linux Utils 2.22
- DSP/BIOS 5.33.03
- DSP Link 1.61
- LPM 1.22
- EDMA3 LLD 1.06.00.01
- The following enhancements were resolved:
ID |
Headline |
SDOCM00050926 |
Support and document mechanisms for linking debug libs into end executables |
SDOCM00050926 |
Update to latest LPM release with hibernate/resume omap3 support |
2.21
- New features
- Added support for DM357 devices
- Non-rebuildable source code is provided for reference
- All content is BSD licensed
- Restored support for DaVinci devices (DM644x, DM6467, and DM355) -
this was temporarily removed in CE 2.20
- Updated Dependencies
- Framework Components 2.21
- Linux Utils 2.21
- DSP/BIOS 5.33.02
- DSP Link 1.60
- LPM 1.21
- The following defects were resolved:
ID |
Headline |
SDOCM00046065 |
Engine_open() needs to create message queues with names that are unique accross processes |
SDOCM00046126 |
Memory_getBuffer*Address() APIs should 'fail better' if size of the buffer provided is zero |
SDOCM00046128 |
Custom BIOS mem segments can be handled incorrectly, leading to createFromServer() errors |
SDOCM00046138 |
Each AUDENC_process() call for a remote codec invokes the codec's IAUDENC_Fxns->process() call twice |
SDOCM00049745 |
CreateFromServer no longer automatically map internal memory segments |
- The following enhancements were resolved:
ID |
Headline |
SDOCM00050295 |
Change Licensing to BSD |
SDOCM00050211 |
Synchronous APIs should support a configurable timeout value |
2.20
- New features
- Added support for OMAP3530 and OMA2530
- Source code is provided for reference
- New default external memory map used by Codec Engine. See
ti/sdo/ce/ipc/dsplink/DspLinkCfg.xdc for details.
- New support for DSP/BIOS Link porting integration. See
ti/sdo/ce/ipc/dsplink/README.txt for details.
- Removed features
- Removed support for DaVinci ARM-based devices (DM644x, DM355
and DM6467). This is a temporary hiccup in the CE roadmap, but
was done to more quickly support OMAP customers. DaVinci device
support will be restored in a release later this year.
- Updated Dependencies
- XDAIS 6.20
- Framework Components 2.20
- Linux Utils 2.20 (Note, the CMEM product has grown in scope, and was
renamed "Linux Utils")
- DSP/BIOS 5.32.04
- DSP Link 1.51
- LPM 1.20
- XDCtools 3.10
- The following defects were resolved:
ID |
Headline |
SDSCM00025838 |
Engine.createFromServer() fails if DSP addr 0x8ad00000 is found |
- The following enhancements were resolved:
ID |
Headline |
SDSCM00025012 |
Codec Engine should automatically configure RMAN's SEM functions correctly |
SDSCM00025417 |
Add CE_CHECK env var to to modify checked flag without a rebuild |
SDSCM00026142 |
LogServer thread stackSize needs to be configurable and have a better default value |
SDSCM00026675 |
Codec Engine must support generic algorithm interface |
SDSCM00027121 |
Codec Engine's OSAL's Memory module for Linux must limit growth of the cached "contigBuf" list |
2.10
- New features
- Updated C6x libraries to CG Tools 6.0.16
- Added support for DM6467
- Added support for IVIDDEC2 interface.
- Added "experimental" asynchronous API support. Some customers have
requested support for asynchronous VISA APIs. This release provides
that support - with "experimental" quality. That is, the APIs are
supported, but compatibility in future releases may be broken or
removed/replaced completely. Customers should feel free to use these
APIs in products, but look for further guidance and roadmap advice
from TI as the product lifecycle continues.
- Updated Dependencies
- XDAIS 6.10
- Framework Components 2.10
- For codecs that acquire EDMA3 channels via IRES, FC
release notes state the appropriate, dependent EDMA3 LLD product
version.
- CMEM 2.10
- DSP/BIOS 5.32.01
- DSP Link 1.50
- XDC Tools 3.00.06
- The following defects were resolved:
ID |
Headline |
SDSCM00022558 |
Codec Engine build files and instructions should explain better
how to build for particular platforms only, specificallyDM355 |
SDSCM00022858 |
extern declaration of function table symbol is wrong in examples'
<codec>_ti.h files |
SDSCM00023298 |
VIDDEC1 doesn't provide enough buffers for CIF decode
(17 needed) |
- The following enhancements were resolved:
2.00
- New features
- In Linux-based applications, Codec Engine is now callable from
multiple processes. For environments that require DSP/BIOS Link
(e.g. DM644x), users must use Link 1.40.05 P3. For single
processor environments (e.g. DM355), no special instructions are
required. Note that, as always, codecs that
share resources must be configured into the same scratch group. These
scratch groups span processes - so if two different apps use codecs
that share resources, the system integrator must ensure they are placed
into the same system-wide scratch group.
- Support for the new IVIDTRANSCODE XDM API has been added. This
provides a standard API for invoking video transcoding algorithms.
See the Reference Guide for details.
- Added cache management configuration to XDM 0.9-based remote
image and video algorithms. Using this feature, it is possible to
configure these interfaces to not writeback the output data
buffers if, for example, these are being moved between internal and
external (shared) memory using DMA. This can significantly improve
performance of remote process() calls, as writing back large video or
image buffers is time consuming. See the Configuration Reference Guide,
specifically the
ti.sdo.ce.video.VIDDECConfig/.VIDENCConfig
(and similar modules in the ti.sdo.ce.image package) for
details.
- Applications can create remote instances of the same algorithm
to run at different priorities. This enables applications to have,
for example, background transcoding or encoding tasks running alongside
real-time encode or decode operations that use the same codec.
This is handled by adding the priority to the codec name during
creation (e.g. "mpeg3dec:4"). See the Application Developer's Guide
and API Reference Guide for details.
- Improved trace usability with new CE_DEBUG environment
variable. See the Application Developer's Guide for details.
- Updated Dependencies
- Updated to XDAIS 6.00
- Updated to Framework Components 2.00
- Updated to CMEM 2.00
- Updated to XDC 3.00.01
- The following defects were resolved:
ID |
Headline |
SDSCM00017691 |
viddec1_skel.c has wrong array index |
SDSCM00019236 |
SPHDEC1 and SPHENC1 stubs/skels don't support inArgs->data and
outBuf->bufSize fields |
SDSCM00019266 |
VISA _create() calls with params.size "too big" cause assert for
remote algs |
SDSCM00019432 |
XDM 1.00 stubs fail to initialize internal status->data.buf to
NULL |
SDSCM00019767 |
Need to provide workaround for ISPHENC1/ISPHDEC1 creation params |
- The following enhancements were resolved:
ID |
Headline |
SDSCM00010976 |
Provide per-codec instance priority configuration/modification |
SDSCM00015261 |
Codec Engine must be callable from multiple Linux Processes
|
SDSCM00017409 |
Provide an example app demonstrating dynamically loading a CE .so
|
SDSCM00018299 |
Add support for 'registering/unregistering' non-CMEM managed buffers
in the Memory_ lookup tables
|
1.20
- General
- Updated to XDAIS 5.21, which includes XDM 1.00 interfaces
- Updated to DSP/BIOS Link 1.40.05 - this resulted in some
necessary configuration-related changes
- Updated to Framework Components 1.20.02
- Updated to new XDC Tools 2.93.01
- Updated to CMEM 1.04
- Added examples for single-processor, environments (e.g. DM643x) -
this includes placing executables into platform-specific directories,
as well as demonstrating necessary caching techniques for cache-enabled
environments.
- Added Link Arbiter Daemon (LAD)
- Added CERuntime_exit() for applications which want to erase any
CE Runtime from their environment without exiting their application.
This is useful if, for example, an application wants to switch between
a Codec Engine based environment, and a custom DSP Link-based framework.
- Moved examples into "Codec Engine-specific" namespaces (e.g., the
previous codecs.viddec1_copy codec package is now the
ti.sdo.ce.examples.codecs.viddec1_copy package).
- Added configuration option to XDM 0.9-based video encoders
to not manage the cache for the reconstruction buffers.
- Added 'checked' builds to the distribution. This enables
some parameter and usage validation to occur within the CE
framework, helping to identify common coding errors in both
applications and algorithms. Enabling this optional feature
introduces some performance overhead, but is encouraged for
those early in development. This can be enabled in the
application configuration, as well as the Server (for systems
with remote algorithms). See the documentation on the
ti.sdo.ce.Settings Module's "checked" parameter in the
Configuration Reference Guide.
- BIOS-based environments
- Added LOG_events for profiling performance
- The following defects were resolved:
ID |
Headline |
SDSCM00014413 |
xdcpaths.mak requires FC installation in ".lite" release |
SDSCM00014540 |
CE OSAL requires presence of dsplink.dsp package even if it's used
in a DSP/BIOS-only setting |
SDSCM00015336 |
Scale example's SCALE_Params struct does not have the required
IALG_Params struct as its first element |
- The following enhancements were resolved:
ID |
Headline |
SDSCM00013759 |
CMEM should support multiple processes |
SDSCM00014703 |
Add Memory_cacheWb() to OSAL |
1.10
- General
- Updated to C6x Codegen 6.0.7
- Updated to DSP/BIOS 5.31.01
- Updated to Framework Components 1.10.01
- Updated to XDAIS 5.10, which includes XDM 1.00 beta
interfaces
- CE Runtime
- Added new methods to ti.sdo.ce.ICodec interface
(getCreationStackSize(),
getDaramScratchSize(), and
getSaramScratchSize()) to make Server configuration
easier. When codecs implement these methods, the XDC Tools
are able to either:
- Auto-generate the DSKT2 scratch configuration, or
- Validate the scratch config (if the server integrator
wants to continue explicitly configuring those values).
- VISA
- Added support for XDM 1.00 Beta interfaces. (Previous XDM
0.9 interfaces continue to be supported)
- SPI (System Programming Interfaces)
- Added VISA_setContext() and
VISA_getContext() services for stub/skeleton/API authors.
- Documentation
- Added "Adapter" application note describing how to integrate
non-XDM codecs, as well as a technique for adding pre- and post-
processing steps to existing codecs without modifying them.
- Examples
-
Added new, Linux-only example demonstrating how users can
create a shared library from a single configuration, which can
then be used by multiple applications.
-
Added a new example, explicitly describing the steps taking
during configuration to better demonstrate the necessary
configuration steps for users who want to integrate this into
their own, custom build flows.
-
Modified example codecs, when possible, to utilize copy
codecs now distributed in XDAIS 5.10. In this way, it's more
clearly described what little XDC packaging is required to
integrate an already XDC packaged Codec (independant of CE) into
the CE framework.
- Defects
- SDSCM00010422 - CE and CMEM should set the close-on-exec
flag on any open file handles
- SDSCM00005810 - Additional C++ testing required
- SDSCM00004993 - GT no longer supports wildcards as second
character
- SDSCM00004805 - GT computes (a lot) during GT_?trace()
- Enhancements
- SDSCM00010364 - GT needs productized
- SDSCM00008121 - not possible to properly size RMS thread's
stack
- SDSCM00007887 - Support VISA_getContext/setContext SPIs
- SDSCM00006616 - CE should ensure unique UUIDs
- SDSCM00003992 - Add pre- and/or post- process example to
codecs
- SDSCM00002920 - ICodec should have a getScratchSize method
1.02
- General
- Introduced ti.sdo.ce.utils.trace.TraceUtils
module.
- Libraries are now provided in release builds. Previously,
they were debug-only.
- Introduced Engine_setTrace() API.
- Added support for C++
- VISA Classes
- Added extended XDM support to the remaining 3 classes
(AUDENC, VIDENC, and SPHENC).
- Documentation
- Addition of System Programming Interface (SPI) Reference
Guide.
- Codec Engine Server Integrator's Guide (SPRUED5)
- Codec Engine Algorithm Creator User's Guide (SPRUED6)
- Minor updates to the Codec Engine Application Developer's
Guide (SPRUE67A)
1.01
- General
- Many trace strings were modified/added.
- C64P libraries built with 6.0.3 compiler.
- VISA Classes
- Audio Encoding support has been added
- Better compliance checking of "size" field. This field
must be set correctly in the various VISA APIs, as it is
now used to determine how much data to provide to the
codecs.
- Related to previous bullet, added extended XDM support to
VIDDEC, VIDENC, AUDDEC, IMGDEC, and SPHDEC classes. There are
limits to the size of the extended structures, and they must not
contain pointers in the extended structures.
- outArgs fixed to be provided in the case of a failed
process() call (enabling inspection of extendedError).
- Removed cache alignment validation of input buffers. When the
application can ensure cache coherence, these buffers need not be
aligned.
- Documentation
- Minor updates to the Codec Engine Application Developer's
Guide (SPRUE67A)
The Codec Engine packages are available in the "packages/"
subdirectory of the product. If you have a previous release of the
Codec Engine product, you can install this release next to it, and
modify your application and/or server builds to use this newer release.
If you're using the DVEVM, this can be done by setting the
CE_INSTALL_DIR variable in the Rules.make file at the
top of the DVEVM distribution directory.
Compatibility Breaks!
- CE 2.25.04.15 requires system integrators to update to XDC Tools
3.16.00.18 (or newer).
- CE 2.25.04.15 requires Linux and WinCE system integrators update to DSP Link
1.64 (or compatible).
- CE 2.25.04.15 requires system integrators update to Framework
Components 2.25.02.06 (or compatible).
- CE 2.25.04.15 requires system integrators update to XDAIS
6.25.02.11 (or compatible).
- CE 2.25.04.15 requires system integrators update to EDMA3 Resource Manager
01.11.00.02 (or compatible).
- CE 2.25.04.15 requires system integrators update to DSP/BIOS
5.41.00.06 (or compatible).
In order to address SDOCM00062629 (ICodec.serverFxns and .stubFxns
shouldn't be 'readonly' so app and server cfg scripts can assign
them), the ti.sdo.ce.ICodec interface changed 2 fields
(.serverFxns and .stubFxns), removing the 'readonly'
attribute so they can be overridden at config time by a .cfg script.
The result is that any Modules that implement ICodec (e.g. if you've
implemented your own ICodec-derived interface with your own
stubs/skels), you need to remove the 'readonly' attribute from your
<Module>.xdc file and rebuild your Module. Most users,
including those that are simply using the standard VISA interfaces,
will not have to do this.
Note, if you're upgrading from a release earlier than Codec Engine 2.24, be
sure to review the Upgrade section for each of the releases between
your current Codec Engine release and this one. Previous release notes are
available in the relnotes_archive directory.
The details provided below describe each package's compatibility with the
previous release (2.24).
Some packages have broken compatibility with previous releases. The details
provided below describe each package's compatibility with the previous release
(2.23).
Note, the Configuration Reference Guide contains
further details about each package.
-
ti.dsplink.utils.lad - This package is
incompatibile with the previous release. (Compatibility key:
2,0,0 -> 2,0,0)
-
ti.dsplink.utils.ladclient - This package is
compatibile with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
-
ti.sdo.ce - This package is
compatible with the previous release. (Compatibility key:
1,0,6 -> 1,0,6)
-
ti.sdo.ce.alg - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.audio - This package is compatible
with the previous release. (Compatibility key:
1,0,2 -> 1,0,2)
-
ti.sdo.ce.audio1 - This package is compatible
with the previous release. (Compatibility key:
1,0,1 ->1,0,1)
-
ti.sdo.ce.bioslog - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.global - This package is compatible
with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
-
ti.sdo.ce.image - This package is compatible
with the previous release. (Compatibility key:
1,0,3 -> 1,0,3)
-
ti.sdo.ce.image1 - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.ipc - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.ipc.bios - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.ipc.dsplink - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.ipc.dsplink.dsp - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.ipc.linux - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.ipc.noOS - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.node - This package is compatible with the
previous release. (Compatibility key: 1,0,0 -> 1,0,0)
-
ti.sdo.ce.osal - This package is compatible
with the previous release. (Compatibility key:
2,0,2 -> 2,0,2)
-
ti.sdo.ce.osal.bios - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.osal.linux - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.osal.noOS - This package is compatible
with the previous release. (Compatibility key:
2,0,1 -> 2,0,1)
-
ti.sdo.ce.speech - This package is compatible
with the previous release. (Compatibility key:
1,0,2 -> 1,0,2)
-
ti.sdo.ce.speech1 - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.trace - This package is compatible
with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
-
ti.sdo.ce.utils - This package is compatible
with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
-
ti.sdo.ce.utils.trace - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.utils.xdm - This package is compatible
with the previous release. (Compatibility key:
1,0,2 -> 1,0,2)
-
ti.sdo.ce.video - This package is compatible
with the previous release. (Compatibility key:
1,0,3 -> 1,0,3)
-
ti.sdo.ce.video1 - This package is compatible
with the previous release. (Compatibility key:
1,0,2 -> 1,0,2)
-
ti.sdo.ce.video2 - This package is compatible
with the previous release. (Compatibility key:
1,0,2 -> 1,0,2)
-
ti.sdo.ce.video2.split - This package is compatible
with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
-
ti.sdo.ce.vidtranscode - This package is compatible
with the previous release. (Compatibility key:
1,0,1 -> 1,0,1)
-
ti.sdo.ce.wizards.genserver - This package is compatible
with the previous release. (Compatibility key:
1,0,0 -> 1,0,0)
The following packages are being introduced in this release, and therefore
have no compatibility with previous releases.
-
ti.sdo.ce.wizards.gencodecpkg - Compatibility key: 1,0,0)
The following packages are beta quality, and therefore compatibility keys
are not maintained.
-
ti.sdo.ce.universal
-
ti.sdo.ce.vidanalytics
If migrating from a release prior to CE 2.24, consult previous
releases available in the relnotes_archive directory.
Compatibility Key Definitions
Compatibility keys are intentionally independent of Marketing product
numbers and are intended to:
- Enable tooling to identify incompatibilities between components,
and
- Convey a level of compatibility between different releases to
set end user expectations.
Compatibility keys are composed of 3 comma-delimited numbers - M,S,R
- where:
- M = Major. A difference in M indicates a break in
compatibility.
- S = Source. A difference in S indicates source
compability. That is, the user's source doesn't require change, but
does require rebuilding.
- R = Radix. A difference in R indicates an introduction
of new features, but compatibility with previous interfaces has not
broken. If libraries are provided by the package, an application
must re-link with the new libraries, but not rebuild from source.
This release supports the following devices:
- DM644x EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- dual-processor configuration, running WinCE 6.00 and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor ARM configuration, running WinCE 6.00
- single-processor DSP configuration, running DSP/BIOS
- DM6467 and DM6467T EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor DSP configuration, running DSP/BIOS
- OMAP35x EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- dual-processor configuration, running WinCE 6.00 and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor ARM configuration, running WinCE 6.00
- single-processor DSP configuration, running DSP/BIOS
- OMAP 2530 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor DSP configuration, running DSP/BIOS
- OMAP-L137 and OMAP-L138 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C674 DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor DSP configuration, running DSP/BIOS
- DM355 EVM:
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- DM365 EVM:
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- DM357 EVM:
- single-processor ARM configuration, with fixed-function DSP Server,
running MV 5.0 MV Linux (gcclib or uClibc)
- C64+ devices (including simulators):
- single-processor DSP configuration, running DSP/BIOS
- C674 devices (including simulators):
- single-processor DSP configuration, running DSP/BIOS
- x86 Linux:
- single-processor x86 configuration, running Red Hat Linux (gcclib
or uClibc)
This release was built and validated against using the following software
components:
- Framework Components 2.25.02.06
- XDAIS 6.25.02.11
- Linux Utils 2.25.03.09
- WinCE Utils 1.00.03.13
- XDCtools 3.16.00.18
- DSP/BIOS Link 1.64 - see
the Codec Engine Link Config wiki article for more details
- DSP/BIOS 5.41.00.06
- BIOS Utils 1.02.02
- EDMA3 Resource Manager 01.11.00.02
- LPM 1.24.02.09
- MontaVista Linux v5.0
- WinCE 6.00
- Red Hat Enterprise Linux 4 (SMP)
- Pre-built binaries were built with the following toolchains:
- gnu.targets.Linux86 - 4.1.0
- gnu.targets.UCArm9 - 4.2.1
- gnu.targets.arm.GCArmv5T - 4.2.1
- microsoft.targets.arm.WinCE - 14.01.60511
- ti.targets.C64P - 6.0.16
- ti.targets.C674 - 6.1.5
This release was validated using the following hardware platforms:
- OMAP-L137 and OMAP-L138 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C674 DSP/BIOS
- DM6446 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- dual-processor configuration, running WinCE 6.00 and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor ARM configuration, running WinCE 6.00
- single-processor DSP configuration, running DSP/BIOS
- DM6467 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor DSP configuration, running DSP/BIOS
- DM357 EVM:
- single-processor ARM configuration, with fixed-function DSP Server,
running MV 5.0 MV Linux (gcclib or uClibc)
- DM355 EVM:
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- DM365 EVM:
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- OMAP3530 EVM:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- dual-processor configuration, running WinCE 6.0 and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor ARM configuration, running WinCE 6.0
- single-processor DSP configuration, running DSP/BIOS
- OMAP2530 EVMs:
- dual-processor configuration, running MV 5.0 MV Linux (gcclib or
uClibc) and C64+ DSP/BIOS
- single-processor ARM configuration, running MV 5.0 MV Linux (gcclib
or uClibc)
- single-processor DSP configuration, running DSP/BIOS
- The IVIDDEC2FRONT VISA interface does not yet support remote algorithms.
Until this support is added (and there's currently no plan to!), all
IVIDDEC2FRONT algorithms must be local.
- Enabling the capture of remote, BIOS Logs via TraceUtils on any
multi-core device other than DM644x is unsupported, and is likely to
result in system instabilities. This issue has to do with
ti/sdo/ce/bioslog/LogClient.c mapping and reading from a DM644x-specific
memory location to perform time synchronization between the cores.
Non-DM644x users are recommended to simply not use TraceUtils. Or if
they do, to configure out the capture of remote BIOS Logs. More
information will be made available at the Known Issues wiki article
mentioned below.
See
the Codec Engine Known Issues wiki article for issues found after these
release notes were compiled.
Codec Engine examples and instructions are located in the
"examples" directory.
This product's version follows a version format, M.mm.pp.bb,
where M is a single digit Major number, mm is 2 digit
minor number, pp is a 2 digit patch number, and b is an
unrestricted set of digits used as an incrementing build counter.
To support multiple side-by-side installations of the product, the
product version is encoded in the top level directory,
ex. codec_engine_2_25_04_15.
Subsequent releases of patch upgrades will be identified by the patch
number, ex. CE 2.25.01 with directory codec_engine_2_25_01.
Typically, these patches only include critical bug fixes.
For technical support, contact softwaresupport@ti.com
Check the following web site for updates: https://software-dl.ti.com/dsps/dsps_public_sw/sdo_sb/targetcontent/ce/index.html
Last updated: June 17, 2010