PyAudio找不到任何输出设备

Nul*_*lad 5 python ubuntu pyaudio

当我跑步时:

import pyaudio
pa = pyaudio.PyAudio()
pa.get_default_output_device_info()
Run Code Online (Sandbox Code Playgroud)

我得到:

IOError: No Default Output Device Available
Run Code Online (Sandbox Code Playgroud)

当我说:

pa.get_device_count()
Run Code Online (Sandbox Code Playgroud)

它返回0L

当然,如果我列出设备

for i in range(0, device_count):
        print("Name: " + pa.get_device_info_by_index(i)["name"])
        print("Index: " + pa.get_device_info_by_index(i)["index"])
        print("\n")
Run Code Online (Sandbox Code Playgroud)

它不会打印任何内容。

我正在运行Ubuntu 16.04,并通过以下方式设置了默认接收器:

pacmd list-sinks
pacmd set-default-sink 0
Run Code Online (Sandbox Code Playgroud)

我拥有最新版本的PulseAudio,ALSA和PortAudio。有什么建议么?

更新:我也无法在Audacity上查看任何声音设备,尽管它们出现在“系统设置”>“声音”下。在Audacity中,我得到了错误:

打开声音设备时出错。请检查记录设备设置和项目采样率。

我认为这几乎可以肯定是PortAudio的问题,因为设置页面如下所示: 在此处输入图片说明

ZF0*_*007 6

它可能是损坏的文件,需要替换。

  1. 搜索“ /usr/./libstdc++.so.6”,其中pip安装了它。

  2. 搜索“ /usr/lib/x86_64-linux-gnu/libstdc++.so.6”,然后复制到(1)的位置。这应该解决它。

  3. 如果您已安装Anaconda版本3-4.3.0或4.4.0或更早版本,则请检查“ anaconda3 / lib / libstdc ++。so.6”,并使用(2)替换。

或者,A)重命名文件并将文件从(2)重命名旧libstdc ++。so.6文件的位置放置,或B)升级到Anaconda至5.0.1版本并运行conda update --all。而且,如果您执行“ B”操作,请不要忘记先手动删除卵或旋转,以确保没有机会从那里再次安装旧软件。

这应该为您解决。

请享用 ;-)