linux 下python代码获取音频文件

1. 安装pyaudio以及其他相关库

复制代码
sudo apt-get install libasound2-dev python3-pyaudio libportaudio2

可能不全,需要再搜一搜确认一下

2. 找不到ALSA库

报错找不到alsa-lib的库:

ALSA lib conf.c:4004:(snd_config_hooks_call) Cannot open shared library libasound_module_conf_pulse.so

原因是在conda环境下,会从当前python环境的依赖中查找alsa的库,但是实际上

在/usr/lib/下搜索libasound*

bash 复制代码
(py3810) ➜  lib find . -name "libasound*"

./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_jack.so
./x86_64-linux-gnu/alsa-lib/libasound_module_ctl_oss.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_speexrate_best.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_samplerate_best.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_speexrate.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_speexrate_medium.so
./x86_64-linux-gnu/alsa-lib/libasound_module_ctl_pulse.so
./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_usb_stream.so
./x86_64-linux-gnu/alsa-lib/libasound_module_ctl_arcam_av.so
./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_vdownmix.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_samplerate_medium.so
./x86_64-linux-gnu/alsa-lib/libasound_module_conf_pulse.so
./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_pulse.so
./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_oss.so
./x86_64-linux-gnu/alsa-lib/libasound_module_pcm_upmix.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_samplerate_order.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_samplerate_linear.so
./x86_64-linux-gnu/alsa-lib/libasound_module_rate_samplerate.so
./x86_64-linux-gnu/libasound.so
./x86_64-linux-gnu/libasound.so.2
./x86_64-linux-gnu/libasound.so.2.0.0

一种解决方案是建立软链接

bash 复制代码
ln -s /usr/lib/x86_64-linux-gnu/alsa-lib /home/douhua2/anaconda3/envs/py3810/lib/alsa-lib
相关推荐
kymjs张涛3 小时前
OpenClaw 学习小组:初识
android·linux·人工智能
程序设计实验室6 小时前
经历分享,发现挖矿木马后,服务器快速备份与重装(腾讯云平台)
linux
Miku167 小时前
OpenClaw-Linux+飞书官方Plugin安装指南
linux·人工智能·agent
Miku167 小时前
OpenClaw 接入 QQ Bot 完整实践指南
linux·人工智能·agent
Yogurt_cry12 小时前
[树莓派4B] 闲置近10年的爱普生 L310 打印机爆改无线打印机
linux·物联网·树莓派
Johny_Zhao1 天前
OpenClaw中级到高级教程
linux·人工智能·信息安全·kubernetes·云计算·yum源·系统运维·openclaw
Sheffield2 天前
Docker的跨主机服务与其对应的优缺点
linux·网络协议·docker
Sheffield2 天前
Alpine是什么,为什么是Docker首选?
linux·docker·容器
Johny_Zhao3 天前
centos7安装部署openclaw
linux·人工智能·信息安全·云计算·yum源·系统运维·openclaw