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
相关推荐
JosieBook1 小时前
【远程运维】Linux 远程连接 Windows 好用的软件:MobaXterm 实战指南
linux·运维·windows
文档搬运工1 小时前
Linux MInt启动速度的优化
linux
Broken Arrows1 小时前
Linux学习——管理网络安全(二十一)
linux·学习·web安全
Light602 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度
linux·pdf·可观测性·异步队列·plt转pdf·权限治理·进度查询
羚羊角uou2 小时前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)3 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
THMAIL3 小时前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融
让子弹飞023 小时前
36.2Linux单总线驱动DS18B20实验(详细讲解代码)_csdn
linux·ubuntu·驱动的分离和分层
Yana.nice3 小时前
yum list 和 repoquery的区别
linux
码出钞能力4 小时前
更换libc.so导致linux变砖,通过LD_PRELOAD挽救
linux·服务器