OKMX8MM-C是飞凌基于NXP公司i.MX8M Mini 四核64位处理器所设计的一款开发板,主频最高达1.8GHz,可提供多种音频接口,包括I2S、AC97、TDM、PDM和SPDIF。在性能和算力都大幅提高的同时,系统的运行也更加流畅。

f_199e6b0aaebc5565f5a37003312b2d36&t=jpg&o=&s=&v=1626245709.jpg

△图为飞凌嵌入式OKMX8MM-C开发板


飞凌iMX8MM开发板(OKMX8MM-C)专注于提供优秀的视频和音频体验,其音视频部分应用层软件采用的是 Gstreamer,视频部分则拥有一个视频处理单元VPU,且均支持硬件编解码。

f_ccabf56e823cdb832c415c625ebf9742&t=png&o=&s=&v=1626245831.jpg

△硬件编解码参数表


下面让我们感受一下,飞凌iMX8MM开发板(OKMX8MM-C)在音视频方面的处理能力。

一、使用播放器播放◾ 使用Gplay 播放器

Gplay是基于 Gstreamer 实现的音视频播放器,能够自动根据硬件选择合适的插件进行音视频播放,运行也十分简单。

$ gst-play-1.0 /home/forlinx/video/1080p_30fps_h265.mp4

◾ 使用gst-launch播放音视频

gst-launch是开发者在开发阶段常用的调试工具,相比Gplay而言,它更加灵活,当然使用起来也相对复杂。

[color=inherit !important]iMX8MM仅播放音频:

$ gst-launch-1.0 filesrc location=/home/forlinx/audio/test.mp3 ! id3demux ! queue ! \

mpegaudioparse ! decodebin ! audioconvert ! audioresample ! pulsesink

iMX8MM仅播放视频:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_h265.mp4 typefind=true ! \

video/quicktime ! aiurdemux ! queue max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! \

video/x-raw, format=RGB16, width=1024, height=600 ! waylandsink

iMX8MM同时播放音频和视频:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_h265.mp4 typefind=true ! \

video/quicktime ! aiurdemux name=demux demux. ! queue max-size-buffers=0 \

max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! video/x-raw, format=RGB16, width=1024, \

height=600 ! waylandsink demux. ! queue max-size-buffers=0 max-size-time=0 \

二、视频硬编码◾ H264硬编码

将YUV420格式视频编码为H264格式视频:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/yuv420_p352x288.yuv ! videoparse format=2 \

width=352 height=288 ! video/x-raw,width=352,height=288 ! vpuenc_h264 ! queue ! \

h264parse ! qtmux ! filesink location=yuv2h264.mp4

iMX8MM播放编码的H264视频:

$ gst-launch-1.0 filesrc location=yuv2h264.mp4 typefind=true ! video/quicktime ! aiurdemux ! \

queue max-size-time=0 ! vpudec ! waylandsink

可以在屏幕看到视频播放。

f_e6c7f141e1a0a64f30f3725a5479596c&t=png&o=&s=&v=1626245831.jpg

◾ VP8硬编码

将YUV420格式视频编码为VP8格式视频:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/yuv420_p352x288.yuv !

videoparse format=2 \

width=352 height=288 ! video/x-raw,width=352,height=288 ! vpuenc_vp8 ! queue ! qtmux ! \

filesink location=yuv2vp8.mkv

iMX8MM播放编码的VP8视频:

$ gst-launch-1.0 filesrc location=yuv2vp8.mkv ! qtdemux ! queue ! vpudec ! waylandsink

便可以在屏幕看到视频播放。

f_a23b2f19710534faef0e87742939ea3d&t=png&o=&s=&v=1626245831.jpg

三、视频硬解码◾ H264解码

iMX8MM解码并播放H264视频文件:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_60fps_h264.mp4 typefind=true ! \

video/quicktime ! aiurdemux ! queue max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! \

video/x-raw, format=RGB16, width=1024, height=600 ! waylandsink

iMX8MM解码并播放H264视频文件(带音频):

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_60fps_h264.mp4 typefind=true ! \

video/quicktime ! aiurdemux name=demux demux. ! queue max-size-buffers=0 \

max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! video/x-raw, format=RGB16,

width=1024, \

height=600 ! waylandsink demux. ! queue max-size-buffers=0 \

max-size-time=0 ! decodebin ! audioconvert ! audioresample ! pulsesink

f_2e961ba2192f6cdf62ce05ccb0bc4792&t=png&o=&s=&v=1626245831.jpg

◾ H265解码

iMX8MM解码并播放H265视频文件:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_h265.mp4 typefind=true ! \

video/quicktime ! aiurdemux ! queue max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! \

video/x-raw, format=RGB16, width=1024, height=600 ! waylandsink

iMX8MM解码并播放H265视频文件(带音频):

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_h265.mp4 typefind=true ! \

video/quicktime ! aiurdemux name=demux demux. ! queue max-size-buffers=0 \

max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! video/x-raw, format=RGB16, width=1024, \

height=600 ! waylandsink demux. ! queue max-size-buffers=0 max-size-time=0 \

! decodebin ! audioconvert ! audioresample ! pulsesink


f_0eda4c81c5e54c177d9685d9970b230f&t=png&o=&s=&v=1626245831.jpg

◾ VP8解码

iMX8MM解 码并播放VP8视频文件:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_vp8.webm typefind=true ! \

video/x-matroska ! aiurdemux ! queue max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! \

video/x-raw, format=RGB16,width=1024, height=600 ! waylandsink

解码并播放VP8视频文件(带音频):

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_vp8.webm typefind=true ! \

video/x-matroska ! aiurdemux name=demux demux. ! queue max-size-buffers=0 \

max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! video/x-raw, format=RGB16,width=1024, \

height=600 ! waylandsink demux. ! queue max-size-buffers=0 max-size-time=0 \

! decodebin ! audioconvert ! audioresample ! pulsesink

f_967814ef81deb8e012280f571ae84ac6&t=png&o=&s=&v=1626245831.jpg

◾ VP9解码

iMX8MM解码并播放VP9视频文件:

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_vp9.webm typefind=true ! \

video/x-matroska ! aiurdemux ! queue max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! \

video/x-raw, format=RGB16,width=1024, height=600 ! waylandsink

iMX8MM解码并播放VP9视频文件(带音频):

$ gst-launch-1.0 filesrc location=/home/forlinx/video/1080p_30fps_vp9.webm typefind=true ! \

video/x-matroska ! aiurdemux name=demux demux. ! queue max-size-buffers=0 \

max-size-time=0 ! vpudec ! imxvideoconvert_g2d ! video/x-raw, format=RGB16,width=1024, \

height=600 ! waylandsink demux. ! queue max-size-buffers=0 max-size-time=0 \

! decodebin ! audioconvert ! audioresample ! pulsesink

f_ce47bf26b208f87e46856f96f0956935&t=png&o=&s=&v=1626245831.jpg

在影音体验上,飞凌iMX8MM开发板(OKMX8MM-C)可谓是独树一帜,在拥有高性能音视频处理能力的同时,还支持7.1声道声音输出以及环麦输入,用于高保真音乐系统及语音识别应用。

f_c40ee62c0b7585e0b25f1c8f63de5b97&t=png&o=&s=&v=1626245831.jpg

好了,以上便是文章的主要内容,关于OKMX8MM-C开发板的详细参数您进入飞凌嵌入式的官方网站了解查看。