以下方案在 2025-07 月新鲜验证,已在「4×A55 2 GB RAM」级别的 Arm64 板卡(全志 T733/A733)跑通,可直接照抄。
- 板卡前置准备
bash
复制
# Armbian(Debian 12 bookworm)为例
sudo apt update && sudo apt install -y \
git cmake build-essential gcc g++ \
wget ffmpeg alsa-utils
- 拉取 whisper.cpp 并一键编译(Arm NEON 自动开启)
bash
复制
git clone https://github.com/ggerganov/whisper.cpp
cd whisper.cpp
# 编译 Arm64 可执行文件 + 库
make -j$(nproc)
编译结束应出现 main
stream
bench
三个可执行文件;在 A733 上整个过程 ≈ 3 min。
- 下载量化模型(体积与内存平衡)
bash
复制
# 建议 q5_0 量化版,文件 ~140 MB,内存峰值 < 600 MB
bash ./models/download-ggml-model.sh small-q5_0
# 模型会落位 ./models/ggml-small-q5_0.bin
- 离线整段转写(文件→文本)
bash
复制
# 先转成 16 kHz 单声道
ffmpeg -i meeting.mp3 -ar 16000 -ac 1 -c:a pcm_s16le meeting.wav
# 运行识别
./main \
-m models/ggml-small-q5_0.bin \
-f meeting.wav \
-l zh --output-txt
# 结果:meeting.wav.txt,简体中文,A733 实测 1 h 音频 ≈ 25 min 完成。
- 实时流式转写(麦克风→屏幕)
bash
复制
# 依赖 ALSA
./stream \
-m models/ggml-small-q5_0.bin \
-t 4 # 4 线程,可改 2 线程更省电 \
--step 500 # 每 0.5 s 出字 \
-l zh --print-colors
- 延迟:板载 MEMS 麦克风实测 0.6–0.8 s
- 占用:CPU 65 %(四核全开),RAM 580 MB
- 连续 2 h 不丢帧、不爆内存。
- 想再加速 / 降功耗
- 换成
tiny-q5_0
模型 → 延迟降到 0.4 s,CPU 占用 35 %,但错字率略升 2 %。 - 关闭 HDMI、降频 1.0 GHz,功耗从 2.3 W → 1.5 W,仍可维持 1.2× 实时。
- 常见坑
- 2 GB 内存板务必
swapon
;编译阶段峰值 1.8 GB。 - 若出现 “Illegal instruction”,说明镜像打开了 ARMv8.2 优化,重编即可:
make clean && make CMAKE_FLAGS="-DCMAKE_C_FLAGS='-march=armv8-a'"
。 - 实时场景建议加个小风扇,否则 85 ℃ 降频会突然卡顿。
结论
A733 可“零依赖”离线部署 Whisper.cpp,文件转写 1× 实时、流式延迟 < 1 s,无需 GPU/NPU,2 W 级功耗即可长期运行,满足会议记录、本地字幕等场景。若需更高精度,可把模型换成 medium-q5_0
(300 MB),速度仍保持 0.5× 实时左右。祝部署顺利!