我正在尝试实现PyAudio库的方法,我想更改默认的输入设备,因为我已经将基于USB的麦克风连接到笔记本电脑并且未使用内置的MIC,但是这样做却遇到了问题,
这是该方法的完整细节,
Help on method open in module pyaudio:
open(self, *args, **kwargs) method of pyaudio.PyAudio instance
Open a new stream. See constructor for
:py:func:`Stream.__init__` for parameter details.
:returns: A new :py:class:`Stream`
。
class pyaudio.Stream(PA_manager, rate, channels, format, input=False, output=False, input_device_index=None, output_device_index=None, frames_per_buffer=1024, start=True, input_host_api_specific_stream_info=None, output_host_api_specific_stream_info=None, stream_callback=None)
PortAudio Stream Wrapper.
使用PyAudio.open()作出新的流。
__init__(PA_manager, rate, channels, format, input=False, output=False, input_device_index=None, output_device_index=None, frames_per_buffer=1024, start=True, input_host_api_specific_stream_info=None, output_host_api_specific_stream_info=None, stream_callback=None)
初始化流;这应该由调用PyAudio.open()。流可以是输入,输出或两者兼有。
我想做的就是使用
PyAudio.open()
方法并将其值设置input_device_index=为1
但是我不明白如何在此函数中传递参数以及如何使用此init?
我已经尝试过的是
p = pyaudio.PyAudio()
p.open(__init__(input_device_index=1))
但是它给出了错误。
下面是这些方法的完整文档,初始化“> http://people.csail.mit.edu/hubert/pyaudio/docs/#pyaudio.Stream。INIT
解决方案
*args将任何位置参数作为列表传递给函数。
**kwargs将使任何关联参数作为dict传递给函数。
例:
def a(*args,**kwargs):
print args
print kwargs
a('abc','75449',test=None,abc=-1)
印刷品:
['abc','75449']
{'test':None,'abc':-1}