Forlinx iMX8M Plus Core Board Multimedia Function Evaluation

It's been a while since the launch of Forlinx FETMX8MP-C core board, which has been favored by many engineer users because of its powerful performance and versatility in many areas. This article will focus on the rich multimedia resources and excellent multimedia functions of the iMX8M Plus core board, and evaluate this single board computer.

iMX8M Plus Core Board

FETMX8MP-C SoM integrates a video processing unit VPU to support video hardware codecs in the following formats:

Video decoding: H264, H265, VP8, VP9, up to 1080p 60fps.

Video code: H264, H265, up to 1080p 60fps.

See the table below for details:

iMX8M Plus Video decoding

At the same time, FETMX8MP-C core board supports LVDS, HDMI, MIPI-DSI three display interfaces, of which HDMI can support up to 4K resolution output, and three display interfaces can work at the same time, support three-screen appearance, but also support 4K HD camera input. Below, the author will evaluate FETMX8MP-C core board in the video hardware codec, multi-screen display and 4K HD camera (model: daA3840-30mc) input three functions.

01 Hardware codecs

To test the hardware codec performance of the FETMX8MP-C core board, the following core board is compared to the FETMX8MM-C core board and the FETMX8MQ-C core board, which are the same NXP i.MX8M series processors, and the same H264 video file (with audio) are decoded with hardware, and the CPU footprint is compared as follows:

FETMX8MQ-C system on module

FETMX8MQ-C system on module test

FETMX8MM-C system on module

FETMX8MM-C system on module test

FETMX8MP-C system on module

FETMX8MP-C system on module test

As can be seen from the figure, the CPU occupancy rate is 23.5% when the FETMX8MQ-C core board decodes and plays the H264 video file for testing, and when the FETMX8MM-C core board is decoded by hard decoding CPU occupancy was 18.2% when the same test video was played, compared with 11.6% when FETMX8MP-C core board decodes and plays the same test video by hard decoding.

02 Muti-Sreen Asynchronous display

Dual-screen display is already available on the FETMX6Q (DL) series core board, while FETMX8MP-C core board is available for three-screen display. Before the official start of testing, first briefly describe the user's considerations when using single-screen display: FETMX8MP-C core board support LVDS, HDMI, MIPI-DSI three display interfaces, the core board default self-starting as a three-screen display state, this state after starting only MIPI screen display QT test program list interface. LVDS and HDMI are displayed as logo images embedded in Forlinx. Therefore, if the user only needs a single screen display, need to start the stage of screen configuration, the rest of the screen off, the specific operation can refer to the product manual 2.4 screen switch section.

Three-screen asynchronous display

The way to test the three-screen different display this time is to play the video on the main screen (MIPI screen), and then drag the video with the mouse to move between the three screens. The specific effects are as follows:

Three-screen asynchronous display Three-screen asynchronous display

From the video, we see that in the three-screen display state, the three screens are sorted from left to right by MIPI-DSI, LVDS, HDMI. This test process because the resolution of the three screens is different, so the same video during the drag process some changes in size, if you use three resolutions and the same size screen will have a better display.

This assessment provides a simple demonstration of the three-screen alienation function, which engineer users can implement on the basis of actual requirements

Play video simultaneously on three screens

At present, the FETMX8MP-C core board can use commands to play the same or different videos on three screens at the same time. The following commands play the same video on three screens:

[email protected]:~# gst-launch-1.0 playbin uri=file:///media/forlinx/video/1080p_60fps_h264.mp4 video-sink="waylandsink window-x=0 window-y=10" & gst-launch- 1.0 playbin uri=file:///media/forlinx/video/1080p_60fps_h264.mp4 video-sink="waylandsink window-x=1152 window-y=120" & gst-launch-1.0 playbin uri=file:///media /forlinx/video/1080p_60fps_h264.mp4 video-sink="waylandsink window-x=2754 window-y=250"

The blue part can be changed to the path of three different videos, so that different videos can be played at the same time.

The red part is the actual coordinates of the video display, here is used to move the video to other screens (the first is on MIPI, the second is on LVDS, and the third is on HDMI, and they are all displayed in the center)

The following image shows three screens playing the same video at the same time, with the adjustment of the command to center the video display.

03 4K HD camera input

At present, FETMX8MP-C core board in addition to support OV5645 MIPI camera and USB UVC camera, but also support 4K HD camera, model daA3840-30mc. The daA3840-30mc camera is the official recommendation of NXP for a 4K HD camera that provides a powerful vision system for i.MX 8M Plus processors as a solution for intelligent vision-based machine learning applications. Here's how to test it:

First confirm basler's device node.

View the format and resolution supported by the camera:

Camera preview:

[email protected]:~# gst-launch-1.0 v4l2src device=/dev/video1 ! waylandsink

Under the 4K display, the camera quality output can also reach 4K, the display clarity is very high. To test more camera-related features (e.g. camera photography, video recording), refer to the product manual.