New Concept of Integration in Digital Video System

Publisher:ananan一二三四五Latest update time:2012-03-27 Source: 电子产品世界 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Digital Video Configuration Tools

The primary challenge in embedding digital video into applications is that the complexity of implementing video goes far beyond simple image and audio compression and decompression.

Digital video can take on a variety of forms and formats, and developers need to support complex configurations and a variety of different aspects, including different resolutions/display sizes, different bit rates, real-time issues, and even the reliability of video sources, such as distinguishing and processing video streams from hard drives and video streams from wireless communication links. Even seemingly simple and straightforward tasks—such as effectively managing audio/video synchronization and achieving reliable video transmission over IP networks—can still give developers a headache.

How to solve these technical challenges is the key to successfully implementing digital video system design using DaVinci technology. The four elements of DaVinci technology, namely processors, development tools, software, and system expertise, play an important role in the integration of digital video design. One of the most effective tools is the digital video configuration tool (eXpressDSP Configuration Kit) included in the Digital Video Development Kit (DVSDK) provided by TI for DaVinci development.

Since the Codec Engine structure is introduced into the Da Vinci technology software structure, the Codec Engine provides a complete package of the DSP standardized algorithm (XDAIS), which separates the development of the application program from the DSP program, making it more convenient and simple. The Codec Engine allows DSP developers to not care about the application end, but only need to develop the Codec Server according to the corresponding standards, which can be correctly called by the application. With the support of the eXpressDSP configuration tool, the interface between the developer modules, the eXpressDSP configuration tool will automatically bind the codec (CODEC) and the software module that complies with the xDM standard, without any other operations, and can almost reduce the development time from several months to within a few weeks, greatly increasing the reuse rate of the software. The eXpressDSP configuration tool brings together the CODEC ENGINE of Linux and Da Vinci technology as well as DSP/BIOS and DSP/BIOS LINK. Figure 1 is a system integration diagram.


Figure 1 System integration diagram

The digital video configuration tool makes the process of configuring a CODEC extremely simple. It only requires simple script configuration and can be completed without DSP programming. First, obtain the Codec library that complies with the xDM standard on the DSP, perform simple configuration through the script configuration language, put this Codec library in the Codec Engine, and compile and link it again. So far, all the work on the Codec has been completed. The following will describe the process of generating an application based on the Da Vinci development board step by step:

The first step is to develop and complete the Codec. That is, to develop the core algorithm of audio and video encoding and decoding, and encapsulate it into a Codec library according to the xDM standard. The Codec mainly completes the core algorithm of audio and video, is called when the application is running, and does not participate in other functions.

The second step is to integrate the Codec into the Codec Engine. Integrate the Codec developed in the first step or the existing Codec that complies with xDM into the Codec Engine. This step requires the configuration of two javascript script files. One of the script files indicates the use and configuration information of the Codec, and the file name is generally *.cfg. The other describes the configuration of the memory allocation of the Codec on Da Vinci, and the file name is generally *.tcf. After configuring these two files, use the make command to generate the Codec Engine, and its file name is generally *.X64P. It can be called directly by the application.

The third step is to develop audio and video applications and call the Codec Engine in them. Develop audio and video applications under Linux, including user interfaces, audio and video acquisition, playback, synchronization, etc., in which the call to the Codec Engine is completed. The application must also complete a script configuration file with the extension cfg to indicate the use of the Codec Engine.

Step 4: Load DSPLINK and CMEM modules and run the application.

At this point, a complete Da Vinci audio and video application is completed. Many of the processes are completed through script file configuration. The process is very simple and easy to understand. Next, we need to run it on Da Vinci. First, we need to load the two driver modules DSPLINK and CMEM. DSPLINK mainly implements the underlying communication between arm and dsp, while CMEM mainly completes the function of allocating continuous memory on the physical segment. After loading these two modules, we can directly run the completed application.

Graphical system visualization tool

Integrating multiple software modules is only the first step in the entire development process. DVDSK also includes a graphical system visualization tool that can be used to analyze and display the performance of the entire system, thereby helping to quickly develop digital media software. Visual analysis based on the TMS320DM644x SoC analyzer quickly identifies and separates the execution status of each part of the system with minimal intervention, and identifies the program running status by capturing data, as well as displaying system interactions, load distribution and other types of behaviors. After eliminating a large number of unnecessary breakpoint tracking debugging, developers can determine where the bottleneck of the system is and solve it.

The TMS320DM644x SoC Analyzer allows users to spend time solving problems rather than just finding them. As a complete visual analysis tool, users can get functions such as system interaction analysis, load analysis of each part, bottleneck separation, abnormal behavior analysis and application benchmark performance. [page]

When a task runs on DSP and ARM at the same time, the analyzer collects and displays data, providing complete system visualization of the application, eliminating the tedious process of manually collecting and comparing data, as shown in Figure 2.


Figure 2 Visual analysis process

TI's industry-first graphical system visualization technology maximizes design efficiency and performance for digital video system design. Its multi-window graphical interface is extremely user-friendly and displays the task status of ARM and DSP on the same image, as shown in Figure 3.


Figure 3 Data visualization tool interface

Conclusion: Realizing the new concept of integration

Now it has become an easy and pleasant thing to build a video application system with Da Vinci technology, and the concept of integration has been launched on a small single-chip system. Digital video developers first need to build a general integrated development environment for DSP, and then use the industry's first optimized digital video configuration tool to minimize the complexity of design work, and then use the first comprehensive graphical system visualization tool to maximize design efficiency and performance. The application of new technologies and new methods can comprehensively simplify the design and development process of digital video systems and obtain a higher level of digital video innovation.

Reference address:New Concept of Integration in Digital Video System

Previous article:Design of Internet Telephone Gateway Using VxWorks
Next article:USB boot technology for embedded real-time system

Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号