Multimedia Framework Products (MFP) - Codec Engine, Framework Components and XDAIS


Description & Features

Technical Documents

Support & Training

Order Now
Part Number Buy from Texas Instruments or Third Party Status

Multimedia Framework Products (MFP) - Codec Engine, Framework Components and XDAIS

Not Available ACTIVE

TI Codec Engine



TI Framework Components



TI Linux Utils



TI WinCE Utils



TI eXpressDSP Algorithm Interoperability Standard Developers Kit



Multimedia Framework Products (MFP)

A major advantage of programmable signal processors over fixed-function devices is their ability to accelerate multiple multimedia functions and provide flexible environments to enable user customization. However, sharing scarce embedded hardware resources between different algorithms (including codecs), as well as between multiple instances of the same algorithm, can be challenging. Systems can be further complicated when algorithms are independently provided by different vendors.


The Multimedia Framework Products (MFP) is a collection of related software components, including TI's XDAIS algorithm standard, Framework Components, Linux Utils, WinCE Utils, and Codec Engine. TI's XDAIS algorithm standard provides the rules and guidelines necessary to solve these integration problems. The additional products in the MPF suite build on this standard to provide scalable services that insulate higher-level applications and frameworks from these complexities.


The MFP components are available independently, as different customer use cases enter the SW stack at different locations, and may or may not require the complete MFP solution. The upper layer products (e.g. Codec Engine and Framework Components) include distributions that contain the underlying components as a convenience. Extensive documentation is provided in the various MFP product Wikis referenced here; in particualr, see Codec Engine FAQ.


If you are looking for the complete MFP Suite, you should download the CE release that includes the 'cetools' directory. Check the CE Release Notes for the exact versions of subcomponents that are included in the cetools/ directory.


Multimedia Framework Products MFP

MFP is completely open source.  It is distributed under the BSD license (with the exception of kernel mode Linux drivers in the Linux Utils product, which are licensed under GPLv2), and is freely available from TI.

    TI's well-proven eXpressDSP Algorithm Interoperability Standard, known as XDAIS, provides the rules and guidelines necessary to enable integration and execution of algorithms (including codecs).  It provides C/C++ compatible headers for defined interfaces which can algorithms implement and application invoke. These interfaces enable algorithms to safely share resources, including memory, DMA, and other hardware accelerators.  Examples and tooling are also provided.
    Wiki: XDAIS

  • HLOS: Linux Utils and WinCE Utils
    High Level Operating Systems (HLOS) such as Linux and WinCE don’t allow direct access to hardware resources often needed for efficient implementation of algorithms and codecs. Linux Utils and WinCE Utils provide user mode access to these resources. Since accelerators and DSPs generally lack a MMU, one critical feature provided is the ability to allocate physically contiguous memory (CMEM) for data used by algorithms and codecs.
    Wiki: Linux Utils 
    Wiki: WinCE Utils

  • Framework Components
    XDAIS provides interfaces for algorithm management and resource sharing. Framework Components (FC) provides low-level libraries that utilize these XDAIS interfaces for creating, using, and deleting algorithms (DSKT2), as well as managing resources for them (RMAN and DMAN3). This enables users to quickly create a customized, XDAIS-compliant framework.
    Wiki: Framework Components|

  • Codec Engine
    Codec Engine builds on the products in the MFP suite, and provides a complete out-of-the-box framework that enables users to use XDAIS algorithms and codecs with minimal coding.
    A unique feature is that the algorithms it manages can be ‘local’ (on the same processor as the application) or ‘remote’ (on a different processor than the application), further insulating the application from the hardware on which it’s executing. It supports WinCE and Linux, and has been ported to multiple other Operating Systems.

    CE supports concurrent execution of multiple channels and codecs. It does not provide A/V synchronization or manage application I/O, but rather accepts and delivers elementary audio and video streams. Codec Engine is designed to be used in conjunction with higher layer frameworks or middleware that provide a/v synchronization, video port and disk I/O, or network streaming while calling Codec Engine's APIs for actual encoding, decoding, and processing. This approach enables system providers to easily differentiate their applications while still leveraging Codec Engine.
    Wiki: Codec Engine

What's Included


Technical documents are provided in each product, as well as via the related TI Embedded Processor Wiki sites.

Technical Documents
Datasheet (1)
Title Abstract Type Size (KB) Date Views
PDF 1187 24 Jun 2010
Application notes (2)
Title Abstract Type Size (KB) Date Views
PDF 859 29 Oct 2007 97
Multiple Files   20 Feb 2007 78
User guides (2)
Title Abstract Type Size (KB) Date Views
PDF 259 30 Sep 2007 246
PDF 201 30 Sep 2007 123

Software (1)

Name Part Number Software Type
eXpressDSP Algorithm Standard – xDAIS Developer’s Kit and xDM  TMDXDAISXDM  Software Codecs 

TI Devices (14)

Part Number Name Product Family
OMAP-L137  C6000 DSP+ARM Processor  C6000 DSP + ARM Processors 
TMS320DM335  Digital Media System-on-Chip (DMSoC)  Media Processors  
TMS320DM355  Digital Media System-on-Chip (DMSoC)  Media Processors  
TMS320DM357  Digital Media System-on-Chip (DMSoC)  Media Processors  
TMS320DM6431  Digital Media Processor  Media Processors  
TMS320DM6433  Digital Media Processor  Media Processors  
TMS320DM6435  Digital Media Processor  Media Processors  
TMS320DM6437  Digital Media Processor  Media Processors  
TMS320DM6441  DaVinci Digital Media System-on-Chip  Media Processors  
TMS320DM6443  DaVinci Digital Media System-on-Chip  Media Processors  
TMS320DM6446  DaVinci Digital Media System-on-Chip  Media Processors  
TMS320DM6467  Digital Media System-on-Chip  Media Processors  
TMS320DM647  Digital Media Processor  Media Processors  
TMS320DM648  Digital Media Processor  Media Processors  

Support & Training

TI E2E Community

As a member of  myTI you can join the TI E2E™ Community  where you can ask questions, share ideas and collaborate with fellow engineers and TI experts

Content is provided "AS IS" by the respective TI and Community contributors and does not constitute TI specifications. See  Terms of use.

Engage in the Community



Visit the TI Wiki