银河麒麟系统声卡采样率需通过PulseAudio、ALSA及UKUI三层协同调整:先用pactl查实时sink采样率;再改/etc/pulse/daemon.conf并重启服务;接着用aplay/cat查ALSA硬件支持;然后禁用UKUI自动降频策略;最后用parec+sox实录验证真实采样率。

如果您在银河麒麟操作系统中需要调整声卡采样率,但系统设置界面未提供直观选项,则说明该参数受 PulseAudio 运行时配置、ALSA 硬件能力及 UKUI 桌面策略共同约束。采样率并非固定值,而是由音频服务动态协商决定,需通过命令行逐层验证与修改。以下是针对性的操作步骤:
一、查询当前默认 sink 实际生效的采样率
PulseAudio 将当前输出设备(sink)正在使用的采样率实时暴露在运行时信息中,此值最贴近真实播放状态,不受配置文件静态设定干扰。
1、在终端中执行命令列出所有可用 sink 及其索引:pactl list short sinks
2、记录第一列数字(通常为 0),作为默认 sink 索引
3、执行命令查询该 sink 的采样率属性:pactl get-sink-info 0 | grep sample_rate
4、若输出为 sample_rate: 48000,表示当前正以 48kHz 运行;若为 sample_rate: 44100,则处于 CD 标准模式
二、修改 PulseAudio 全局默认采样率配置
/etc/pulse/daemon.conf 是 PulseAudio 的主配置文件,其中 default-sample-rate 控制新创建 sink 的初始采样率,修改后需重启服务方可生效。
1、使用管理员权限打开配置文件:sudo nano /etc/pulse/daemon.conf
2、查找并取消注释行 default-sample-rate = 44100,将其改为所需值(如 default-sample-rate = 48000)
3、可选:同步修改 alternate-sample-rate 以支持多速率切换(如 alternate-sample-rate = 96000)
4、保存文件后执行命令重启 PulseAudio:pulseaudio -k
三、绕过 PulseAudio 直查 ALSA 硬件支持能力
当怀疑上层音频服务干扰或需确认声卡原生能力时,应跳过 PulseAudio,直接向 ALSA 查询硬件默认 PCM 设备所支持的采样率范围。
1、执行命令查看声卡支持的默认格式:aplay -L | grep -A 5 "default"
2、进一步获取详细硬件参数:cat /proc/asound/card*/codec#* 2>/dev/null | grep -i "rate\|sample"
3、若输出含 rates: 44100 48000 96000,说明硬件原生支持多档采样率
4、如需强制 ALSA 层使用特定速率,可编辑 ~/.asoundrc 添加 pcm 插件重采样规则
四、禁用 UKUI 自适应音频策略防止静默降频
银河麒麟 UKUI 桌面环境内置 auto-sample-rate 机制,在低负载或节能状态下可能主动将采样率切回 44100Hz,即使 daemon.conf 已设为更高值。
1、检查当前策略状态:gsettings get org.ukui.sound auto-sample-rate
2、若返回 true,执行命令关闭该功能:gsettings set org.ukui.sound auto-sample-rate false
3、立即终止当前 PulseAudio 实例:pulseaudio -k
4、等待约 1 秒后,PulseAudio 将自动重启并加载新策略
五、使用 parec 录音验证实际传输采样率
图形界面或命令行查得的值仍属“配置值”,唯有实录音频流并解析原始数据,才能确认播放路径最终采用的采样率——这是唯一能排除浏览器、播放器等应用层覆盖的实锤方法。
1、启动原始音频流录制(以 48kHz 为例):parec --raw --rate=48000 --channels=2 --file-format=raw > test.raw
2、播放一段已知采样率的测试音源(如 48kHz WAV 文件)持续 5 秒
3、中断录制(Ctrl+C),将 raw 数据转为 WAV:sox -r 48000 -b 16 -e signed-integer -c 2 -t raw test.raw test.wav
4、用 Audacity 打开 test.wav,查看轨道属性中的 Sample Rate 字段


















