The core essence of the Cortex-M7 processor is a microcontroller, but it has a main frequency of up to 600MHz, high-density 512KB TCM SRAM and 16MB high-speed SDRAM, ultra-fast real-time response, and super processing performance gives RT1052 video codec ability.
For video applications, when the processor does not have a GPU unit, the decoding of the video file by the codec library requires the CPU to provide fast computing power and a large amount of memory as a buffer. This is the main factor that the traditional single-chip computer is not competent, so Video applications mostly use the core boards of application processors such as M6Y2C Cortex-A7 \ M6708 Cortex-A9.
As the cross-core core board of the Cortex-M7 core, M1052 has the advantages of small size, low power consumption, easy to use, low cost, etc. Can it also have strong audio and video encoding and decoding capabilities?
Figure 1 M1052 cross-border core board
i.MX RT1052 support for video applications
Although the i.MX RT1052 uses an MCU core, it is based on an application processor architecture, which can not only achieve the high performance and rich functions of the application processor, but also have the ease of use of traditional MCUs and real-time low-power operation characteristics. Fill the gap between high performance and ease of use.
The core of i.MX RT1052 runs at up to 600MHz, built-in high-density 512KB TCM SRAM, and can achieve ultra-fast real-time response, interrupt latency as low as 20 nanoseconds. And support SEMC interface, can mount SDRAM as memory expansion. The eLCDIF peripheral can easily drive the display, and the built-in SAI audio interface and MQS sound card provide good support for audio and video applications.
Figure 2 RT1052 frame diagram
M1052 video application development
Although the M1052 core board is dominated by industrial control applications, it can also be used in multimedia applications to diversify auxiliary products. The M1052 core board has 16MB SDRAM onboard, which gives a huge buffer space for data. It can mount TF card, U disk, Nand, and QSPI Flash to provide large-capacity storage expansion for system applications. It supports ultra-high resolution 1366X768 LCD display, supports hardware floating-point operation, and the drawing speed can reach 80 frames / s. Rich resources and strong performance lay a solid foundation for video application development.
The M1052 core board is supported by the AWorks SDK software package, and has been configured for users to develop peripheral drivers related to video applications. Users can directly start the development of video applications without providing the underlying peripheral driver, and provide a video player Demo program for Users provide a certain reference for video application development.
Figure 3 Example video player
Integrated professional codec function library
libjpeg is an open source JPEG compression / decompression function library, which has the advantages of high stability, strong compatibility, and fast decoding speed. The decoding library is all implemented in C language, which is very easy to transplant to different platforms. Comparing the performance and resources of i.MX RT1052, it is a good choice to use libjpeg for the decoding library. Therefore, libjpeg is used in the demo program of the video player to decode the AVI video in JPEG format.
Figure 4 Support libjpeg codec library
Diversified video playback methods
The video playback Demo program implements a relatively complete video player framework. The GUI interface task is responsible for image display and touch screen processing. It controls the state machine to perform state conversion on the playback logic. The audio and video decoding and playback tasks work together to achieve good results. The effect of audio-visual synchronization is shown in the programming framework.
Figure 5 video design framework
The video player supports reading video files from TF card, U disk, Nand Flash, supporting file list preview, file selection, playback progress control and other functions. In the case of audio and video synchronization, it can smoothly play 480 X 272 resolution 25 frames / s video, and the CPU usage is about 35%. It can be seen that the i.MX RT1052 can fully meet the needs of video applications.
Zhejiang Best Nail Industrial Co., Ltd. , https://www.beststaple.com