补充说明
aplay 属于 alsa-utils,直接把 WAV 等未压缩音频送到 ALSA 设备播放。它支持 WAV、AU、VOC、RAW 等格式,不能解码 MP3、FLAC、AAC;这些需要 mpg123、flac -d 或 ffplay 等工具。
排查“没有声音”时,先用 aplay -l 确认声卡与设备编号,再用 speaker-test 测试;播放 RAW 数据必须显式指定格式、采样率与声道数,否则会得到噪声或报错。
语法
aplay [选项] 文件...
选项
-l, --list-devices:列出所有声卡与数字音频设备-L, --list-pcms:列出 PCM 设备名-D NAME:指定播放设备,如default、hw:0,0-f FORMAT:采样格式,如S16_LE、S24_3LE-r RATE:采样率,如44100、48000-c CHANNELS:声道数-d SECONDS:最多播放多少秒-t TYPE:文件类型,如wav、raw-q:安静模式,不打印进度
实例
# 查看可用声卡
aplay -l
# 播放 WAV 文件
aplay test.wav
# 指定设备播放
aplay -D hw:1,0 test.wav
# 播放裸 PCM 数据(44.1kHz、16 位小端、双声道)
aplay -t raw -f S16_LE -r 44100 -c 2 audio.pcm
# 只播放前 5 秒
aplay -d 5 test.wav
# 生成并播放 1kHz 测试音(需要 speaker-test)
speaker-test -t sine -f 1000 -l 1
若设备被桌面声音服务器占用,可尝试 -D plughw:0,0 让 ALSA 自动做格式转换,或通过 -D pulse 走声音服务器。