Overview

2.1.4What Algorithms Can a Codec Server Integrate?

You can use any algorithm that is xDM-compliant in a Codec Server.

In addition, if you want to use a xDAIS-compliant algorithm that is not xDM-compliant, you can first implement your own stubs and skeletons for that algorithm, and then use that algorithm in a Codec Server. See the Codec Engine Algorithm Creator User’s Guide (SPRUED6) for details.

The Codec Engine does not provide APIs for chaining algorithms. However, you may use an xDM- or xDAIS-compliant algorithm that, behind its exposed interface, chains algorithms together.

The xDM specification defines an uniform API for each class of algorithms. From an application perspective this means that the same API will be used for an H.264 and an MPEG-4 decoder.

The algorithm is identified by an unique string in the "create" function. Everything else should remain the same. Note that the application must be aware of the restrictions of the algorithm it is trying to invoke. For example TI video decoders expect one frame of data to work properly.

2.1.5What Examples Exist?

You can use the Codec Servers as examples for creating your own Codec Servers. These servers are provided as part of the Codec Engine distribution.

CE_INSTALL_DIR/examples/servers/all_codecs

CE_INSTALL_DIR/examples/servers/video_copy

2.1.6What is the Config Kit?

The XDC Config Kit is a set of configuration packages and tools that may be used to configure and build an executable. Some examples of such executables are:

A DSP executable that contains remote codecs (for example, a Codec Server)

A DSP executable that contains an application and local codecs (for example, a single processor Codec Engine application plus local codecs)

A GPP executable that contains an Codec Engine, implying local and/or remote codecs (for example, a Codec Engine application)

2-6

Page 22
Image 22
Texas Instruments Codec Engine Server manual What Algorithms Can a Codec Server Integrate?, What Examples Exist?

Codec Engine Server specifications

Texas Instruments Codec Engine Server (CES) is a powerful software framework designed to handle audio and video processing on embedded systems. It serves as a bridge between high-level application programming and low-level codec implementations, simplifying the development of multimedia applications. The Codec Engine's primary focus is on optimizing media codecs for applications such as telecommunications, video conferencing, multimedia playback, and streaming services.

One of the standout features of the CES is its ability to support multiple codecs simultaneously, allowing developers to efficiently decode and encode various media formats in real time. This flexibility is crucial for applications that demand high-quality audio and video processing without compromising performance. Furthermore, the CES architecture promotes modular design, enabling developers to swap in and out different codec implementations based on specific project requirements.

The CES leverages advanced technologies including simultaneous multithreading, which maximizes the processing power of multi-core processors. With this capability, developers can allocate threads efficiently across multiple cores, tackling demanding tasks without latency. Additionally, the framework supports dynamic codec allocation, meaning that resources can be managed and adjusted on-the-fly as needed, ensuring optimal performance in varying conditions.

Another significant characteristic of the CES is its compatibility with various Texas Instruments DSP (Digital Signal Processor) platforms. This ensures that developers can take advantage of the specialized capabilities of TI's hardware, including their power management features and high-performance processing capabilities. The integration of hardware and software within the CES architecture allows for optimized resource utilization, leading to energy-efficient applications.

The development process is further streamlined through the use of a comprehensive API (Application Programming Interface) that provides access to codec functionalities while abstracting the complexities of underlying hardware. This allows developers to focus on building high-level features without getting bogged down in low-level programming details.

In conclusion, Texas Instruments Codec Engine Server stands out as a robust solution for developers aiming to create high-performance media applications. Its support for multiple codecs, efficient resource management, and compatibility with TI DSP platforms make it an indispensable tool in the multimedia processing space. By facilitating seamless interaction between hardware and software, CES empowers developers to deliver richer multimedia experiences in their applications.