|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
距离飞凌FETMX8MP-C核心板推出已经有一段时间了,因其强大的性能且具有多领域的通用性,此款iMX8MP核心板受到了很多工程师用户的青睐。本篇文章,笔者将从FETMX8MP-C核心板丰富的多媒体资源和优异的多媒体功能为着眼点,对此款iMX8MP核心板进行测评。) d H E& P% D9 s% P
/ [/ o3 ^+ q* k" i: @6 A
4 O+ g" @( H* S) g
" |6 b% V6 L" D. g. W7 M8 c/ i& m' a5 E0 Y4 K
![]()
" F6 D1 F* ~- k3 o6 k) p# I7 a* |1 z0 e! [
- y( c6 T5 S4 x0 \) Q$ _* f! M* d3 }2 S" R9 ~3 y Y, ?8 `" C( t: A
+ C& ?0 r+ X$ y
% m5 S! m( Z; C9 d
( s# ?% w+ ^$ a y% z$ P$ w8 D' t! Q' T7 x+ X; } u3 H8 a8 t
FETMX8MP-C核心板采用NXP iMX8MPplus处理器,集成了一个视频处理单元 VPU,支持以下格式的视频硬件编解码:
/ J: J9 W+ E; b( {$ r8 f1 H1 U8 H# C6 Z& A
视频解码: H264, H265, VP8, VP9,最大支持 1080p 60fps 。
1 R7 p8 g0 m( c7 _8 b* q
5 Y2 O. J5 g8 P视频编码: H264, H265,最大支持 1080p 60fps 。 K: Q" M3 a0 `* S8 U
% M; K6 u8 W- S详细参数见下表:3 `2 N5 ^; y; X( ~9 [) | j
/ W; I: a. j9 q* C: b
$ X% P" {. L9 V& e$ h
' q1 J0 L" c$ j0 V! F4 `# K* G- \% b; Z9 Z9 _
![]()
% U& O$ I _& W. d3 K# n, B
! |2 i! M- c* y. s
* n+ T& g0 [. ]8 |7 @+ m$ u4 t9 y$ B/ a
; U+ Z) k- R- y4 m; T! x1 W* G: O0 k0 j7 m' Q
9 r+ A+ E; Q; i6 X
* c8 O& W. p# |$ N
$ t/ H" F5 D9 m/ i2 c
* A. T, x& j m7 O r
/ }, T& K9 i$ X9 t& [$ i同时,飞凌嵌入式的这款FETMX8MP-C核心板支持LVDS、HDMI、MIPI-DSI三种显示接口,其中HDMI最大可支持4K分辨率输出,并且三个显示接口可同时工作,支持三屏异显,还支持4K高清摄像头输入。下面,笔者将在视频硬件编解码、多屏显示及4K高清摄像头(型号:daA3840-30mc)输入三方面的功能对这款iMX8MP板卡进行详细讲解。& P6 i! d% C9 |* `. l3 ]. u. [
. ~# P' _, {" `; N2 F* x
1 x+ ^- e) d7 |/ c. v
( m M# j, ?- Z: I0 L1 T
& b* w5 b# a& T+ H$ K8 _4 f
3 [7 \! a1 I: {; M o* i
; m$ d# `! x) x2 I
' R w' Y1 l& D S5 U) h一、硬件编解码
& a' c% J* B* b2 a6 X! H/ n为了对FETMX8MP-C核心板的硬件编解码性能有更清晰的了解,选择飞凌嵌入式另外两款基于NXP iMX8M系列处理器设计的的FETMX8MM-C核心板和FETMX8MQ-C核心板与其做对比,用硬件解码播放同一个 H264 视频文件(带音频),CPU占用率对比如下:! J. x4 o: Q1 a3 Q
1 [6 g- x+ [: h. b6 n
5 Q F. \- w Q- J* v5 h
. e% ~" c: {9 R( X7 _" \5 y( ~4 n- M7 z
8 i+ D* L- m4 ?1 {9 MFETMX8MQ-C核心板:
: t( C" o% ?) V, {3 W" u3 I
% T! r& y6 u6 b9 x% f
V$ i2 P7 a: |6 h) E0 b6 ]9 h4 B* W, L3 Q; J6 o# Z! {
) j2 Z( [' e) C6 P5 Z( {
![]()
& W1 ^9 B( Z+ J/ G
3 d1 t: V# O1 i0 Z
% q( U8 E4 ?/ m& a4 X1 x) q2 E6 n, ]; ~
* ] u$ F5 x' \# E! F8 G# l8 A3 i% ^9 E. l
/ |! l. r U9 M+ @: o$ b, j- e1 @0 [* s* p# F2 h& {
FETMX8MM-C核心板:
* Y- A& z6 E+ G
$ e K- ^) q2 f1 r( J. F; T
; y* f9 @7 _% ~0 L$ U) D2 P2 }/ G2 @7 ]: b, @: [/ ^+ G
- {& c) J5 P5 j) W # n) h# z! @% y0 f. B9 l. L
1 U# O+ [ e7 Y+ U0 i& D
, o m& n# z; e2 Y
2 ^; j" L- v% e* Z" Q6 e
1 L& y4 {) m) D& ^1 j5 f, V. C; _
* c$ w. [- v8 S0 A( z9 b1 X6 O: s4 i' C/ e
FETMX8MP-C核心板
+ C0 R! |$ P& G% M) t% y+ |# ]( F) E: `( j) Y! ?
' p& R5 Z* }4 }" u p+ o
, z3 u1 l% d! U& B# D9 t
/ Q x, g* J2 x' e# M& i& u5 ?) |8 s U
![]()
8 i1 g' r, _& B# q; G+ z
$ M" T7 R, R( c) V* I6 ?) Y" a7 }( P: ^4 _4 U+ v9 X2 q( j( k' j a
) t0 e1 `( R' Y0 M
2 s/ o. O T$ Q6 I# A4 k) @
J: _3 t4 z- g" j: o- y! X9 g
5 ]$ s, d* M; d3 Q
8 S& p3 u! \0 {1 v& _如图可见,在飞凌嵌入式提供的三款iMX8M系列核心板中,当FETMX8MQ-C核心板用硬解码方式解码并播放测试用的 H264 视频文件时CPU占用率为23.5%,当FETMX8MM-C核心板用硬解码方式解码并播放同一个测试视频时CPU占用率为18.2%,而当FETMX8MP-C核心板用硬解码方式解码并播放同一个测试视频时CPU占用率仅为11.6%。( m! R! K( q3 \0 P7 o i/ O: [/ g
/ w) |' z' R/ z+ ^3 f/ ?由此可见,虽然同为硬件解码,但FETMX8MP-C核心板比同系列处理器产品具有更高的硬件解码性能,CPU资源占用率更低。
, P: x0 u% O. Y0 E$ v- f! k3 N- X8 e: U8 ~4 ?3 Q& Y# L/ b
二、多屏显示
2 O' X& `$ R/ A双屏显示功能在飞凌嵌入式iMX6Q/iMX6DL系列核心板上就已经实现,而iMX8MP系列 核心板做到了三屏显示。在正式开始测试前,先简述一下用户使用单屏显示时的注意事项:FETMX8MP-C核心板支持LVDS、HDMI、MIPI-DSI三种显示接口,核心板默认自启为三屏显示状态,此状态下启动后只有MIPI屏显示QT测试程序列表界面。LVDS和HDMI显示为飞凌嵌入式的logo图片。故若用户只需要单屏显示,需要在启动阶段先进行屏幕配置,将其余屏幕关掉,具体操作可参考飞凌嵌入式提供的iMX8MP系列产品使用手册中2.4屏幕切换章节。
( j9 O0 o$ _+ o8 J, g2 l. P
( p* T- T# Y( n+ p6 [& K接下来,笔者将对多屏显示进行测评。
' J% X# r" P& a. l" ^
6 s) J3 R* m' D- e7 o
2 e1 c: [! a0 k7 |8 _, e' i; a, i) T% V3 Y$ @- a6 s+ `' L
6 R. }, p$ U6 @* U1、三屏异显
! j4 m/ c- G% G" w: f2 U- s
8 O7 T9 H2 ^+ X* ^2 J! q此次iMX8MP核心板测试三屏异显的方式是在主屏(MIPI屏)上播放视频,然后通过鼠标拖动视频在三屏之间移动,具体效果如下:1 D1 @3 T% u; f1 K
3 @ }8 W$ C5 P% K: u! _' D
% T5 b; p+ y) H% V# m4 I0 h) F
( n1 Z: a$ o9 q7 z3 w, x& n" n; u! J" Y
![]()
& n! d: L3 K L! X8 p7 B) N$ J1 j/ W6 Z1 D7 Y! P8 m+ a. R
( k$ y5 h: f" c) h m! z! `8 l# p8 [: M
9 z; T4 Z) v$ R; b" K
2 G+ w, |" d0 L3 A
5 r. d4 u% m4 X$ I: T
7 u2 K, V" K ~2 Z* _5 p
从视频中我们看到,三屏显示状态下,三个屏幕从左到右排序分别为MIPI-DSI、LVDS、HDMI。此测试过程因三个屏幕的分辨率不同,所以会出现同一个视频在拖动过程中大小有些许变化的情况,若用三个分辨率及尺寸相同的屏幕会有更好的显示效果。6 w* R& ]) n6 I R& H' \
) n& @8 w: P3 h# ~, M% p( a; w+ t
此测评对三屏异显功能进行了简单的演示,工程师用户可根据实际需求在此功能基础上进行实现。
. l8 H$ r$ O4 u4 J- n, a
5 d w8 m9 W% { M+ Q
m5 f" c' z% u1 c U2 F- D; }2 c0 v/ x o/ [1 Q+ [% t
6 U. T* [! ^+ G2、三屏同时播放视频
+ G* T8 k0 ^$ V, x- ?3 l
( A n# q/ D' d5 o7 J目前FETMX8MP-C核心板可用命令实现在三个屏幕上同时播放相同或不同的视频,如下命令为三屏播放相同视频:
; {: R4 } _7 N% P Y& z5 ?" \( Y2 G; g7 r, F1 m$ x4 u: Z& }
root@OK8MP:~# 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". `! C- c: y8 E* W* F4 W; M
9 P2 F- y) Q D! i
7 x+ Q5 f- Z s9 I
# {2 B, @. r# q
( P: h" n# r" _; a/ f/ |3 b% Z5 D蓝色部分可改成三个不同视频的路径,即可实现同时播放不同视频。
0 K) @5 c3 |9 [! z) M, k4 Z, H2 N% K' F. j! j* i
红色部分为视频显示的实际坐标,此处用做移动视频到其他屏(第一个在MIPI上,第二个在LVDS上,第三个在HDMI上,且都是居中显示)
3 K, N8 Q% T+ @% \. ^/ T
" ]& K9 j1 R' C2 B3 Q. S7 |如下图,展示的是三屏同时播放相同的视频,通过对命令的调整可使视频居中显示。& ~) u2 f, f% E' H* t2 z! J
3 j6 V* e; c$ x% p
, E0 g; V k9 T/ w! Z z ^9 p% T3 X N( [* p
) R) s% l, c; e5 v3 ]* G: {
7 o: N' N3 N4 ?) n3 P G; q+ f; v
) _9 U8 N) V( [6 ^8 _+ M! {
: z% P. x }" d& e8 u
+ v; w. `- S* B; h9 `5 ~: {( _3 L& |- s
( A, U$ ^" i/ c( J+ a# N, A/ P$ j8 ^) D0 m( F
. j2 B- P( E2 [, a& {* {* h0 T* a三、4K高清摄像头输入
n1 [- C$ ^; G8 Q. t# P+ z目前FETMX8MP-C核心板除了支持OV5645 MIPI 摄像头和USB UVC摄像头外,还支持4K高清摄像头,型号为daA3840-30mc。daA3840-30mc 摄像头是NXP官方推荐的能为iMX 8M Plus处理器提供强大视觉系统的4K高清摄像头,可作为基于视觉的智能机器学习应用的解决方案。具体测试方法如下:
. Y. R& D7 f( ], \5 N, W V1 V4 O2 ?/ G( G5 M7 [5 s
首先确认 basler 的设备节点。
% a1 G$ u* P- a' l3 _! g
+ p5 | F" T0 i* ]5 w$ h$ g$ K: P# P2 A, ^root@OK8MP:~# v4l2-ctl --list-devices(): /dev/v4l-subdev0 /dev/v4l-subdev3 /dev/v4l-subdev4(): /dev/v4l-subdev1(csi0): /dev/v4l-subdev2VIV (platform:viv0): /dev/video0VIV (platform:viv1): /dev/video1
. w. K9 [# Z$ L' n+ u查看摄像头支持的格式与分辨率:
0 I7 k5 m. ]) w) t! F6 }+ S6 J
@. d. P* J5 m, J/ F6 M; |root@OK8MP:~# v4l2-ctl --list-formats-ext -d /dev/video1ioctl: VIDIOC_ENUM_FMT Type: Video Capture [0]: 'YUYV' (YUYV 4:2:2) Size: Discrete 3840x2160 Interval: Discrete 0.033s (30.000 fps) [1]: 'NV12' (Y/CbCr 4:2:0) Size: Discrete 3840x2160 Interval: Discrete 0.033s (30.000 fps) [2]: 'NV16' (Y/CbCr 4:2:2) Size: Discrete 3840x2160 Interval: Discrete 0.033s (30.000 fps) [3]: 'BA12' (12-bit Bayer GRGR/BGBG) Size: Discrete 3840x2160 Interval: Discrete 0.033s (30.000 fps)
/ H: l2 s8 }1 X( g& m4 k摄像头预览:
1 }& ~ B7 D0 E: f( g" D9 z* K% q, Q; P* m
root@OK8MP:~# gst-launch-1.0 v4l2src device=/dev/video1 ! waylandsink
" ]7 t, ]9 a5 f4 L. }0 N5 U/ |. Z, z2 u# F
8 @% H2 U. m( c5 _: `! X) p
. ]6 u7 Z" T! z 6 C" ~, m& L* E& Q" e
6 b; J6 B; F2 U% U6 M2 V$ F
) S) T5 |5 K3 p& v/ o* x2 ?0 `1 W f( i' ]
0 \. b3 m/ R/ H0 X# }3 s: P+ ]" i+ |
! S% p% D/ i3 w9 D; b! U e
% u: Y# v- t' [( U( _, ?5 `在4K显示屏下,摄像头画质输出也可达到4K,显示清晰度极高。如需测试更多有关摄像头的功能(如摄像头拍照、录像),可参考飞凌嵌入式提供的iMX8MP系列产品使用手册。, |" p @" n9 s( j& ~4 l, l
/ T" ] Z7 ^' ?# { Y$ G0 V) E综上,本文分别从硬件编解码、多屏显示和4K高清摄像头三部分对FETMX8MP-C的多媒体性能进行了测评,由上述测评及结果可得出结论:FETMX8MP-C具有更高效的视频处理方式,能够为用户带来更好的多媒体体验,可满足用户对复杂多媒体显示的需求,而4K高清摄像头也为用户提供了更加优秀的视频采集效果,为产品设计带来了更多可能。
. m3 k4 G8 H) h6 Q+ x0 W; @; d& _2 U6 x( v! j! f) I8 v
4 T- o+ i. r( Q
; |( h/ q; F* x9 X0 |% E+ |/ N |
|