0

我正在做一个项目,我必须控制 8 个音频通道。我正在使用 alsaaudio 库在 python3 中编程。一切正常,但我有这 3 个错误,一旦我启动程序,我的互联网连接就会中断。

在下面的代码中,您可以看到我如何初始化设备(AudioInjector 的八声卡)。请注意,如果缩进错误只是因为复制粘贴错误。

import alsaaudio

def start_device(ch):
variables.mut.acquire()
    if variables.device_flag[ch] == 1:
        try:
            variables.device_PCM[ch] = alsaaudio.PCM(type=alsaaudio.PCM_PLAYBACK, mode = alsaaudio.PCM_NORMAL,device=variables.device_name[ch])
            variables.device_flag[ch] = 0            # device open
            print('device -%s- OPEN' % (variables.device_name[ch]))


        except:
            print("Except raised")
            json_builder.jsonerror("Init device ch" + str(ch) +" FAILED to OPEN",ch)
            variables.device_flag[ch] == 1

    else:
        print("Device -%s- already opened" % (variables.device_name[ch]))

    variables.mut.release()

奇怪的是,这段代码有效,我可以驱动所有 8 个频道,但出现 3 个错误,我的互联网停止工作:

  • 消息:“模块‘alsaaudio’没有‘PCM’成员”

  • 消息:“模块 'alsaaudio' 没有 'PCM_PLAYBACK' 成员”

  • 消息:“模块 'alsaaudio' 没有 'PCM_NORMAL' 成员”

( device=device_name[ch] 有效,没有错误)

4

1 回答 1

0

好吧,我会推荐你​​使用 Alvas.Audio 库,它可以编辑、转换、播放、暂停转换音频文件。C# Alvas.Audio 库也可用于转换无标题格式(SLINEAR)等。 http://alvas.net/alvas.audio,tips.aspx 此外,它有助于提取 AVI 流并将一种文件格式转换为另一种文件格式。所以,试试 Alvas.Audio C# 库并获得免费试用https://www.filerepairtools.com/alavas-audio-library.html

于 2019-06-29T09:37:40.493 回答