测试文件下载

uart文件下载 uart
测试音乐下载 :test.wav

设备基础信息

1. 设备基础信息

项目详情
设备型号EDGE-RK3588 开发板硬件版本:V1.2A
系统版本Debian11 Xfce(固件版本:rk3588_edge_v12_debain_xfce_rk7_v1.2 中性
内核版本Linux 5.10

2. 核心硬件配置

项目配置详情
CPU8 核异构架构:4×Cortex-A76(高性能核) + 4×Cortex-A55(能效核),最高主频 2.4GHz
GPU

Mali-G610 MP4 图形处理器

支持标准:OpenGL ES 1.1/2.0/3.2、OpenCL 2.2、Vulkan 1.2

内存(DDR)
LPDDR4X 类型,可选容量:4GB/8GB/16GB
AI 算力(NPU)6.0 Tops(支持 INT4/INT8/FP16 计算精度)
内置存储支持 eMMC 5.1 / SDIO 3.0 接口
可选容量:16GB/32GB/64GB/128GB

3. 供电参数

项目规格说明
直流电源要求输入:12V 2A DC
 接口规格:5.5mm × 2.0mm 圆柱电源口
 ⚠️ 注意:输入电压低于 12V 可能导致设备无法开机
扩展供电

预留 POE 电源接口,支持外挂 POE 模块供电(需单独配置)

一、电源接口

1. 测试端口功能有效性

  • 验证设备电源接口的兼容性、电气性能及安全性,确保符合供电参数要求。

2. 测试环境与工具适应性

工具 / 环境规格说明
直流电源适配器12V 2A DC(匹配 5.5mm×2.0mm 接口)
万用表支持电压 / 电流测量
POE 模块(选配)适配设备预留 POE 接口型号
待测设备目标产品(含电源接口)

 3. 测试项目与步骤

1.直流电源接口兼容性测试

  • 测试步骤
    1. 确认直流电源适配器规格为 “12V 2A DC”,接口尺寸 “5.5mm×2.0mm”;
    2. 将适配器接入设备电源接口,通电后观察设备是否正常开机。
  • 判定标准
     接口可稳定插入 / 拔出,设备正常开机无异常。

2.输入电压下限验证

  • 测试步骤
    1. 使用可调直流电源,将电压调至11.5V(低于 12V),接入设备;
    2. 观察设备是否出现 “无法开机” 等异常现象。
  • 判定标准
     电压低于 12V 时,设备无法正常开机(与供电参数 “注意” 项一致)。

3.POE 接口扩展供电测试(选配)

  • 测试步骤
    1. 连接 POE 模块至设备预留 POE 接口;
    2. 给 POE 模块供电,观察设备是否正常运行。
  • 判定标准
     设备可通过 POE 模块稳定供电,功能正常。

二、通信接口测试

1.RS232 串口测试

RS232对应设备节点:ttyS3(V1.2 版本)/ ttyS4 (V1.4 版本)

测试准备:

1.使用导线短接RS232串口的TX与RX引脚,硬件连接如下图所示:

推送测试文件至设备
bash
adb push C:\Users\Administrator\Desktop\uart /your_path/uart 

给予执行权限
bash
chmod 777 uartc

测试步骤:
1.安装screen工具:
bash
在终端下载screen工具
apt update 
apt install screen -y
2.开启三个终端进行测试:
bash
终端1 
screen /dev/ttyS3 9600 
终端2 
./uart /dev/ttyS3 #输入数据  
终端3 
cat /dev/ttyS3 #接收数据 
#最终实现RS232通信(参考图示)

最终实现效果:实现RS232串口通信,数据收发正常

2、RS485串口测试

三、USB接口测试

1. 设备连接状态识别

 通过以下命令确认设备是否接入系统并获取设备节点信息:

bash
# 查看所有块设备,识别USB对应的设备节点(如/dev/sda1)
lsblk
# 查看USB设备详细信息,包括控制器和设备ID
lsusb
结果说明lsusb输出中,ID 1d6b:0002对应 USB2.0 控制器,ID 1d6b:0003对应 USB3.0 控制器,可通过设备挂载的总线判断其关联的 USB 版本。

2. 设备配套 USB 版本兼容性

通过设备速度参数精准判断 USB 版本,USB2.0 对应高速(480Mbps),USB3.0 对应超高速(5000Mbps),操作如下:


  1. 查看设备速度文件:
bash
# 遍历所有USB设备,输出其传输速度
for device in $(ls /sys/bus/usb/devices/); do
    if [ -f "/sys/bus/usb/devices/$device/speed" ]; then
        speed=$(cat /sys/bus/usb/devices/$device/speed)
        echo "Device: $device, Speed: $speed Mbps"
    fi
done

 2.通过详细信息验证:

bash
# 查看指定USB设备的详细参数,搜索Speed字段
lsusb -v | grep -E "Speed|Device"

 结果说明:输出中Speed: 480Mbit/s对应 USB2.0,Speed: 5000Mbit/s对应 USB3.0。

3.传输性能测试

传输速率是 USB2.0 与 USB3.0 的核心差异点,USB2.0 理论速率 480Mbps,USB3.0 理论速率 5Gbps。以下提供两种常用测试方法,分别适用于存储设备和网络类 USB 设备。

1. 简易测试:dd 命令

dd命令可快速测试读写速率,适合初步验证,测试时需先挂载 USB 设备。

 1.挂载 USB 设备:

bash
# 假设通过lsblk确认USB设备节点为/dev/sda1,创建挂载点并挂载
mkdir -p /mnt/usb
mount /dev/sda1 /mnt/usb

 2. 试顺序写速率:

bash
# 写入1GB零数据到USB设备,绕过缓存确保结果真实
dd if=/dev/zero of=/mnt/usb/testfile bs=1M count=1024 conv=sync oflag=direct

 3.测试顺序读速率:

bash
# 读取USB设备中的测试文件并丢弃,测试读取速度
dd if=/mnt/usb/testfile of=/dev/null bs=1M iflag=direct

 4.测试后清理临时文件:

bash
rm /mnt/usb/testfile

 结果说明:命令执行完毕后会显示传输时间和速率,USB2.0 实际写速率通常在 10 - 30MB/s,USB3.0 实际写速率通常在 50 - 150MB/s(受设备本身性能影响)。

2. 专业测试:fio 工具

fio工具支持复杂的 IO 场景测试,结果更全面,适合深度性能评估。

 1.安装 fio:

bash
# Ubuntu/Debian
sudo apt install fio -y

 2.fio测试命令代码块

bash
# 顺序写测试
fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=write -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1

# 顺序读测试
fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=read -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1

# 随机写测试
fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randwrite -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1

# 随机读测试
fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randread -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1

# 随机读写混合测试(默认读写比例 50:50)
fio -filename=/temp/testfile -direct=1 -ioengine=psync -iodepth 128 -rw=randrw -bs=1M -size=3G -numjobs=4 -runtime=30 -group_reporting -name=iopstest -time_based=1

五、WIFI测试

1.硬件规格符合性

WiFi 型号:AP6275P,支持 WiFi6(IEEE 802.11a/b/g/n/ac/ax MIMO),双发双收。

2.基础连接稳定性

1.启动NetworkManager服务

bash
sudo systemctl start NetworkManager

2.扫描并连接WiFi网络

bash
sudo nmcli dev wifi rescan                 # 重新扫描WiFi网络
sudo nmcli dev wifi list                   # 查看可用WiFi列表(可选)
sudo nmcli dev wifi connect "WiFi名称" password "WiFi密码" ifname wlan1

3.网络连通性测试

bash
ping www.baidu.com

4.示例命令

bash
sudo nmcli dev wifi connect "Hi nova 9 Pro" password "12345678" ifname wlan1

3.Wi-Fi 网络 TCP/UDP 协议性能测试

1.环境准备:

两台测试设备(如开发板 + PC),确保处于同一网络(WiFi / 以太网);

安装 Iperf3:


bash
# Debian/Ubuntu
sudo apt install iperf3

2.角色定义:

服务端(Server):接收数据的设备;

客户端(Client):发送数据的设备。

3.TCP 带宽测试(常用)

步骤 1:启动服务端

bash
# 服务端默认监听5201端口
iperf3 -s

步骤 2:客户端发起测试

bash
# 测试TCP带宽(持续10秒,默认)
iperf3 -c [服务端IP]

扩展命令(自定义参数)

bash
# 测试30秒,每2秒输出一次实时数据
iperf3 -c [服务端IP] -t 30 -i 2
# 测试双向带宽(服务端/客户端互传)
iperf3 -c [服务端IP] -d

4.UDP 丢包 / 延迟测试

步骤 1:启动服务端

bash
iperf3 -s

步骤 2:客户端发起测试

bash
# 测试UDP(指定带宽100Mbps)
iperf3 -c [服务端IP] -u -b 100M

5.结果解读(示例)

TCP 测试结果

bash
[  5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201
[ ID] Interval           Transfer     Bitrate
[  5]   0.00-10.00  sec  1.10 GBytes   943 Mbits/sec  # 实际带宽:943Mbps

UDP测试结果

bash
[  5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201
[ ID] Interval           Transfer     Bitrate         Jitter    Lost/Total Datagrams
[  5]   0.00-10.00  sec  119 MBytes   100 Mbits/sec  0.035 ms  0/85000 (0%)  # 丢包率:0%

 6.常见场景测试
 

测试目标命令示例
长连接稳定性(1 小时)iperf3 -c [IP] -t 3600
多线程并发测试iperf3 -c [IP] -P 4(4 线程)
限制带宽测试iperf3 -c [IP] -b 500M(限制为 500Mbps)

、M.2接口测试

1.硬件信息完整性

  • 接口类型:M.2 Key M PCIe3.0(兼容 B&M Key 扩展卡,支持 PCIe 4x + USB3.0)
  • 硬件安装:将 M.2 SSD 插入开发板 M.2 插槽

2.基础连接有效性

设备识别验证

bash
# 查看系统是否识别到M.2 SSD
lsblk

预期结果:输出中显示 SSD 对应的磁盘设备(如nvme0n1)。

磁盘信息读取

bash
# 查看M.2 SSD的详细信息(如容量、接口协议)
sudo fdisk -l

预期结果:显示 SSD 的容量、分区表类型(如 GPT),接口协议为PCIe 3.0 x4

读写性能测试

bash
# 安装测试工具
sudo apt install hdparm fio

# 测试读取性能
sudo hdparm -tT /dev/nvme0n1  # 替换为实际SSD设备名

# 测试随机读写性能(示例:1GB数据)
fio --name=ssd-test --filename=/dev/nvme0n1 --size=1G --rw=randrw --bs=4k --numjobs=4 --iodepth=64 --runtime=30 --time_based

3.结果判定标准

  • 设备识别:lsblk显示 SSD 设备→识别成功;
  • 接口协议:fdisk -l显示PCIe 3.0 x4→接口匹配;
  • 性能达标:读取速度≥1000MB/s(PCIe3.0 SSD 典型值)→性能正常。

七、SATA接口测试

1.硬件连接说明

通过标准 7Pin SATA3.0 接口连接硬盘,SATA 电源支持 5V 2A 输出

2.硬盘识别与健康状态检测

bash
# 查看硬盘信息及SMART健康状态
fdisk -l

#更新软件源(可选,避免安装失败)
apt update
# 若提示权限不足,先提权(已 root 可跳过)
# sudo apt update

#安装 smartmontools
apt install -y smartmontools

# 注:/dev/sda为实际识别的SATA设备节点,需根据系统显示调整
 smartctl -a /dev/sda  

测试结果验证

1.设备识别状态fdisk -l 输出中需显示 SATA 硬盘的容量、分区等信息;

2.SMART 健康状态smartctl -a 输出中SMART overall-health self-assessment test result项需显示为PASSED(如图中红框标注项)。

八、蓝牙连接测试

1.硬件说明

默认适配 AP6275P 蓝牙模块(支持蓝牙 5.2)。

2.进入蓝牙命令模式

bash
# 通过adb连接设备
adb shell
# 启动蓝牙控制工具
sudo bluetoothctl
3.扫描并连接蓝牙设备
bash
scan on                      # 开启蓝牙扫描(按Ctrl+C停止扫描)
trust [设备MAC地址]          # 信任目标设备
pair [设备MAC地址]           # 配对目标设备
connect [设备MAC地址]        # 连接目标设备

4.操作示例

bash
# 扫描后,对MAC为7C:B4:37:11:5B:83的设备执行操作
trust 7C:B4:37:11:5B:83
pair 7C:B4:37:11:5B:83
connect 7C:B4:37:11:5B:83

5.测试结果判定

执行connect后,终端输出[CONN] Device 7C:B4:37:11:5B:83 Connected: yes,表示蓝牙连接成功。


九、HDMI/DP输出测试

1.规格说明:

接口核心规格关键限制
HDMI 2.1单接口、支持 8K@30Hz/4K@60Hz、HDCP2.3需 HDMI2.1 认证线缆,最大带宽 48Gbps
DP 1.4a(4Lane)单接口、支持 4K@60Hz、HDCP2.38K 仅支持 30Hz,4K 可满帧 60Hz

2.分辨率验证(含 8K/4K)

1.显示接口及分辨率列表查询

bash
# 图形界面(X11)- 直观查看支持的分辨率/刷新率/HDCP状态
xrandr --verbose | grep -E "HDMI|DP|3840|7680|HDCP"
# 命令行模式(无X11)- 读取DRM底层信息(需安装drm-info)
sudo apt install drm-info
drm_info | grep -E "mode|hdcp|HDMI|DP"

2.音频输出测试步骤(命令行操作)

bash
# 步骤1:通过adb连接设备(确保设备已开启调试模式)
adb shell

# 步骤2:推送测试音频文件到设备(电脑端执行)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav

# 步骤3:查看设备音频输出列表(确认card编号对应关系)
aplay -l

# 步骤4:HDMI0音频输出测试
aplay -D plughw:0,0 /test.wav
# 预期现象:HDMI连接的显示设备播放音频

# 步骤5:DP1音频输出测试
aplay -D plughw:4,0 /test.wav
# 预期现象:DP连接的显示设备播放音频



十、HDMI 输入测试


1.测试准备

  1. 硬件连接:将有效 HDMI 信号源(如笔记本电脑、HDMI 摄像头、机顶盒等)通过标准 HDMI 线连接至开发板的 HDMI IN 接口;
  2. 信号源配置:确保 HDMI 信号源已开机,且输出分辨率 / 帧率与开发板 HDMI IN 接口兼容(推荐 1920×1080@60Hz,避免非标准分辨率导致识别失败);
  3. 系统登录:通过 SSH / 串口 / 本地终端登录开发板系统,建议使用具备图形显示权限的用户(如 blueberry)操作。

步骤 1:HDMI 输入设备节点查询与验证

1. 查看系统视频设备列表

bash
# 切换到具备图形显示权限的用户(避免权限不足导致设备访问失败)
su - blueberry

# 列出 /dev 目录下所有视频相关设备,确认 HDMI IN 对应的设备节点
ls -la /dev/video*

查询结果:

bash
-rw-rw----  1 root video     4 Dec  2 02:18 /dev/video-dec0
-rw-rw----  1 root video     4 Dec  2 02:18 /dev/video-enc0
crw-rw----+ 1 root video 81, 0 Dec  2 02:18 /dev/video0

2.查询设备详细信息
bash
执行命令:
cat /sys/class/video4linux/video0/name
输出结果: stream_hdmirx
说明: stream_hdmirx 表示这是一个视频流 HDMI 接收设备(hdmirx = HDMI Receiver)

结果分析

设备节点设备类型功能说明权限 / 设备号
/dev/video0字符设备(c 开头)HDMI 输入视频采集设备(核心)root/video 组可读写;主设备号 81,次设备号 0
/dev/video-dec0普通文件系统视频解码设备root/video 组可读写
/dev/video-enc0普通文件系统视频编码设备root/video 组可读写

3.查询设备驱动信息:
bash
readlink -f /sys/class/video4linux/video0/device/driver

输出结果/sys/bus/platform/drivers/rk_hdmirx说明:设备使用瑞芯微官方 rk_hdmirx 驱动,为 Rockchip 平台 HDMI 输入功能的核心驱动,驱动加载正常。

步骤 2:HDMI 输入视频流播放测试

2.1.执行视频播放命令:


bash
# 切换到具备图形显示权限的用户
su - blueberry

# 配置显示环境变量(指定主屏输出),通过 GStreamer 播放 HDMI 输入视频流
gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! autovideosink


2.2 执行结果验证
  • 终端输出示例 

    bash
    Setting pipeline to PAUSED ...       # 管道状态:暂停中
    Using mplane plugin for capture      # 采集插件:使用mplane(多平面)模式
    Pipeline is live and does not need PREROLL ...  # 管道状态:已激活,无需预滚动
    Pipeline is PREROLLED ...            # 管道状态:完成预滚动(数据已就绪)
    Setting pipeline to PLAYING ...      # 管道状态:播放中
    New clock: GstSystemClock            # 时钟初始化:使用系统时钟同步


    输出解读

    每行日志对应 GStreamer 管道的启动流程状态,无报错信息说明:

    1. 视频采集插件(mplane)加载成功;
    2. 管道完成初始化、激活、预滚动,可正常开始视频流传输;
    3. 时钟同步组件(GstSystemClock)正常工作,为视频流提供时间基准。

    显示屏效果:开发板连接的显示屏弹出视频播放窗口,窗口内实时显示 HDMI 信号源输出的画面(如笔记本桌面、摄像头画面等),画面无花屏、卡顿、黑屏即为测试通过。

异常排查说明


异常现象可能原因排查方法
终端提示 “No such device”/dev/video0 节点不存在

1.检查 HDMI IN 驱动是否加载:lsmod grep rk_hdmirx

2.若无输出,重新加载驱动:sudo modprobe rk_hdmirx`
3.重新插拔 HDMI 线,确保接口接触良好

显示屏无播放窗口DISPLAY 环境变量配置错误执行 echo $DISPLAY 确认值为 :0.0,或切换到本地终端执行命令
画面卡顿 / 花屏信号源分辨率不兼容将 HDMI 信号源输出分辨率调整为 1080P@60Hz 后重新测试
 




十一、4G模块测试

测试准备:

1.硬件连接(参考图示)

测试步骤:

1.检查初始化状态:

bash
#检查4G服务状态 systemctl status quectel.service
#检查开机自启设置 systemctl is-enabled quectel.service
#预期结果:服务未运行,开机自启未设置

2.启动4G服务

bash
启动4G服务
#启动4G服务 systemctl start quectel.service 
#验证服务状态 systemctl status quectel.service 
#预期结果:服务状态显示 active (running)

3.设置开机自启

bash
设置开机自启
#设置开机自启动 systemctl enable quectel.service 
#验证设置 systemctl is-enabled quectel.service 
#预期结果:输出 enabled

4.重启验证

bash
#重启设备 reboot
#重新连接后检查服务状态 systemctl status quectel.service 
#预期结果:重启后服务自动运行,服务状态显示 active (running)

5.网络通测试:


bash
检查网络接口 ifconfig -a 测试网络连接 ping -c 3 8.8.8.8 
#预期结果:能ping通外网,延迟正常 

root@linaro-alip:/# ping -c 3 8.8.8.8 
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data. 
64 bytes from 8.8.8.8: icmp_seq=1 ttl=109 time=160 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=109 time=160 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=109 time=160 ms











十二、音频接口测试

一、测试对象

本测试针对设备的音频输出接口(含板载 Codec、HDMI),明确各接口的硬件映射关系:

card编号

设备名称

硬件接口

功能说明

0

rockchiphdmi0

HDMI0

第一个HDMI接口音频输出

1

rockchipdp0

DisplayPort0

第 1 路 DP 接口(仅支持视频输出,不支持音频

2

rockchipdp1

DisplayPort1

第 2 路 DP 接口(仅支持视频输出,不支持音频

4

rockchipes8388

ES8388 Codec

板载音频接口(3.5mm 4 节接口,支持:耳机输出、扬声器输出、MIC 输入)

二、测试准备

2.1 工具 / 文件:

  • 测试音频文件:test.wav(推荐格式:16bit、44.1kHz、立体声)
  • 调试工具:
    • 电脑端:adb(需配置环境变量)
    • 设备端:aplay(已预装)

2.2 硬件连接:

  • 测试 HDMI 音频:将 HDMI 线连接至设备的 HDMI 接口与支持音频输出的显示设备(如带音箱的显示器)
  • 测试板载音频:将 3.5mm 耳机插入板载音频接口

三、音频输出测试步骤(命令行操作)

bash
# 步骤1:通过adb连接设备(确保设备已开启调试模式)
adb shell

# 步骤2:推送测试音频文件到设备(电脑端执行)
adb push C:\Users\Administrator\Desktop\test.wav /test.wav

# 步骤3:查看设备音频输出列表(确认card编号对应关系)
aplay -l

# 步骤4:HDMI0音频输出测试
aplay -D plughw:0,0 /test.wav
# 预期现象:HDMI连接的显示设备播放音频

# 步骤5:板载音频(耳机)输出测试
aplay -D plughw:4,0 /test.wav
# 预期现象:3.5mm耳机播放音频

# 步骤6:硬件功能验证(正弦波测试,排除文件本身问题)
speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2
# 预期现象:耳机输出1000Hz双声道正弦蜂鸣声

测试结果记录

测试项

操作命令

预期结果

HDMI0 音频输出

aplay -D plughw:0,0 /test.wav

显示设备正常播放音频

板载耳机输出

aplay -D plughw:4,0 /test.wav

耳机正常播放音频

硬件正弦波测试

speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2

耳机输出蜂鸣声

四、音频输入测试步骤(命令行操作)

1.列出所有音频采集设备

bash
# 查看系统音频设备列表(重点关注“Capture”(输入)设备)
arecord -l

典型输出示例

bash
**** List of CAPTURE Hardware Devices ****
card 3: rockchiphdmiin [rockchip,hdmiin], device 0: rockchip,hdmiin i2s-hifi-0 [rockchip,hdmiin i2s-hifi-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 4: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323.3-0010-0 [dailink-multicodecs ES8323.3-0010-0]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

结果解析

设备类型关键信息 & 用途状态说明
card 3: rockchiphdmiin
 device 0
HDMI-IN 音频采集卡对应 Rockchip 芯片的 HDMI 输入音频通道
 用于采集 HDMI 信号中的音频流
正常识别(Subdevices: 1/1)
card 4: rockchipes8388
 device 0
板载音频编解码芯片ES8388/ES8323 是低功耗音频 Codec
 用于板载麦克风 / 扬声器的音频采集 / 播放
正常识别(Subdevices: 1/1)

2.录音测试(实时采集+播放)

bash
# 功能:实时采集音频输入(hw:4,0)并输出到音频输出(hw:0,0)
# 参数说明:
# - arecord端:
#   -D hw:4,0:指定音频输入设备(需根据实际`arecord -l`结果调整)
#   -r 48000:采样率48000Hz(适配多数音频设备)
#   -c 2:立体声采集(若MIC为单声道,可改为-c 1)
#   -f s16_le:16位小端音频格式(通用兼容格式)
#   -t raw:以原始格式传输(避免文件编码开销)
# - aplay端:
#   -D hw:0,0:指定音频输出设备(如HDMI/板载扬声器)
#   - 其余参数与arecord保持一致(确保格式匹配)
# - &:后台运行(避免终端阻塞)

arecord -D hw:4,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw &

测试操作与结果验证

  1. 执行命令:在终端输入上述命令并回车;
  2. 触发音频输入:对着 MIC 说话 / 播放声音;
  3. 验证效果:从音频输出设备(扬声器 / 耳机)能实时听到采集的声音,无杂音、卡顿、延迟(<200ms)即为测试通过;
  4. 停止测试:执行kill %1(后台任务编号)终止实时采集。

注意事项

  • 若执行报错Device or resource busy:先执行killall arecord aplay关闭占用音频设备的进程,再重新测试;
  • 若无声音:检查-D参数的设备编号(通过arecord -l/aplay -l确认正确的输入 / 输出设备);
  • 若杂音较大:将-c 2改为-c 1(单声道),或调整采样率为44100
  • 系统音频输入通道配置:打开系统声音设置,切换到「Input Devices」(输入设备)标签页,在设备对应的「Port」下拉选项中,选择「Internal Microphone」(内置麦克风),确保音频输入通道已正确启用。

十三、视频硬解码测试

MMP视频解码器规格:

bash
插件名称:mppvideodec
插件版本:1.14.4
插件路径:/usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so
支持编码:HEVC/H.265, AVC/H.264, VP8, VP9
解码类型:硬件加速解码
技术架构:基于Rockchip MPP(Media Process Platform)框架
最大解码能力:8K 10-bits 视频解码,支持 8K 60HZ 视频输出
测试步骤:
1.准备测试视频:
bash
#假设视频路径:
C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4

# 将视频文件推送到开发板的/tmp目录
adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/


执行硬解码测试:
bash
# 验证硬解码功能(以H.264格式视频为例)
gst-launch-1.0 filesrc location=/tmp/4K_60fps.mp4 ! \
qtdemux ! \
h264parse ! \
mppvideodec ! \
videoconvert ! \
autovideosink

执行命令后显示屏会出现解码视频:

开启第二个终端进行cpu占用率监控

bash
# 窗口2:查看整体系统状态
adb shell "top -bn1 | head -20"


系统整体状态:

bash
CPU使用率:用户态5.0% + 系统态5.0% = 总10%,空闲89.9%
内存:8GB总内存,仅使用731MB,空闲6GB
硬件解码工作正常:CPU占用率仅5.9%,远低软件解码
性能优秀:系统整体很空闲,解码4K视频无压力
内存使用低:仅占用26MB内存,硬件解码不占用大量内存

测试结果:视频能流畅播放,无卡顿、花屏现象,CPU 占用率低(硬件加速生效




  • 无标签