Main Content

audiodevinfo

有关音频设备的信息

说明

示例

info = audiodevinfo 返回有关系统上的输入和输出音频设备的信息。

示例

nDevices = audiodevinfo(IO) 返回系统上的输出设备的数目(如果 IO0),或者返回系统上的输入设备的数目(如果 IO1)。

name = audiodevinfo(IO,ID) 返回设备标识符 ID 指定的音频设备的名称。

DriverVersion = audiodevinfo(IO,ID,"DriverVersion") 返回 ID 指定的音频设备的驱动程序版本。

示例

如果 ID 指定的输入或输出音频设备支持 FsnBitsnChannels 值分别指定的采样率、采样位数和通道数,则 support = audiodevinfo(IO,ID,Fs,nBits,nChannels) 返回逻辑值 1 (true),否则返回逻辑值 0 (false)。

devID = audiodevinfo(IO,devName) 返回带有名称 devName 的输入或输出音频设备的标识符。如果未找到具有指定名称的设备,则 audiodevinfo 生成错误。

suppDevID = audiodevinfo(IO,Fs,nBits,nChannels) 返回支持 FsnBitsnChannels 值分别指定的采样率、采样位数和通道数的第一个输入或输出设备的设备标识符。如果未找到支持设备,则 suppDevID-1

示例

全部折叠

通过调用不带任何输入的 audiodevinfo 查看系统上输入和输出音频设备的信息。audiodevinfo 返回包含两个字段 inputoutput 的结构体。

info = audiodevinfo
info = struct with fields:
     input: [1×2 struct]
    output: [1×2 struct]

输入字段包含音频设备名称、使用的驱动程序和设备标识符。

info.input
ans=1×2 struct array with fields:
    Name
    DriverVersion
    ID

显示关于第一个输入设备的信息。

info.input(1)
ans = struct with fields:
             Name: 'Primary Sound Capture Driver (Windows DirectSound)'
    DriverVersion: 'Windows DirectSound'
               ID: 0

显示关于第二个输入设备的信息。

info.input(2)
ans = struct with fields:
             Name: 'Microphone Array (Microphone Array (Intel® Smart Sound Technology (Intel® SST)) (VDI)) (Windows DirectSound)'
    DriverVersion: 'Windows DirectSound'
               ID: 1

您的系统上的值可能与此示例中的值不同。

查看系统上的输出音频设备的数目,并使用 IO0 指示输出。

nDevices = audiodevinfo(0)
nDevices = 2

您的系统上的值可能与此示例中的值不同。

检查 ID0 标识的输入音频设备是否支持 44,100 Hz 的采样率、16 位的采样位数和两个通道。

support = audiodevinfo(1,0,44100,16,2)
support = logical
   1

您系统上的结果可能与此示例中的不同。

输入参数

全部折叠

输入或输出设备,指定为 0 表示输出,或指定为 1 表示输入。

音频设备标识符,指定为整数。设备可以为输入或输出音频设备。

采样率(以赫兹为单位),指定为正标量。

示例: 44100

数据类型: single | double

采样位数,指定为正标量。

示例: 16

数据类型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

音频通道数,指定为正标量。

输入或输出音频设备的名称,指定为字符向量。

数据类型: char

输出参量

全部折叠

有关音频设备的信息,以包含两个字段(inputoutput)的结构体数组形式返回。每个字段都是一个结构体数组,每个结构体都包含有关系统中的某个音频输入或输出设备的信息。单个设备结构体包含以下字段:

  • Name - 设备名称,以字符向量形式返回。

  • DriverVersion - 与设备通信的驱动程序的版本,以字符向量形式返回。

  • ID - 设备标识符,以正整数标量形式返回。

输出音频设备的数量(IO0 时),或输入音频设备的数量(IO1 时),以非负整数标量形式返回。

设备标识符为 ID 的输出音频设备(IO0 时)或输入音频设备(IO1 时)的名称,以字符向量形式返回。

设备标识符为 ID 的输出音频设备(IO0 时)或输入音频设备(IO1 时)的驱动程序版本,以字符向量形式返回。

True 或 false 结果,以 logical 类型的 10 形式返回。

如果由 IOID 指定的音频设备支持 Fs 的采样率,nBits 位的采样位数和 nChannels 个音频通道,则 support1 (true)。否则,support0 (false)。

设备名称为 devName 的输出音频设备(IO0 时)或输入音频设备(IO1 时)的标识符,以正整数标量形式返回。

支持 Fs 的采样率、nBits 位的采样位数和 nChannels 个音频通道的第一个输出音频设备(IO0 时)或第一个输入音频设备(IO1 时)的标识符,以正整数标量形式返回。

局限性

  • MATLAB® Online™MATLAB Web App Server™ 中使用 audiodevinfo 时,存在以下限制:

    • audiodevinfo 会忽略 nBits。例如,当您调用 support = audiodevinfo(IO,ID,Fs,nBits,nChannels) 时,如果 FsnChannels 的值与音频设备支持的采样率和通道数匹配,则 audiodevinfo 将返回逻辑值 1。它不会将 nBits 与音频设备的默认采样位数匹配。

      同样,当您调用 suppDevID = audiodevinfo(IO,Fs,nBits,nChannels) 时,如果音频设备支持的采样率和通道数与 FsnChannels 的值匹配,则 audiodevinfo 会返回有关音频设备的信息。它不会与音频设备支持的采样位数 nBits 匹配。

    • 不支持 "DriverVersion"

提示

  • Google Chrome® 支持在 MATLAB OnlineMATLAB Web App Server 中使用 audiodevinfo

  • 注意

    使用 MATLAB OnlineMATLAB Web App Server 时的安全注意事项:MATLAB OnlineMATLAB Web App Server 中使用 audiodevinfo 时,某些功能和设置有助于您保护您的隐私。

    要减少不必要的应用程序使用麦克风的可能性,请关闭对音频设备的自动访问权限。您可以随时更改这些设置。对某网站授予一次权限后,您的浏览器可能会在将来访问该网站时自动访问您的麦克风。在最初允许访问后,可使用 Google Chrome 的浏览器设置撤消对特定网站的访问权限。

    您还可以使用 Google Chrome 中的私密浏览模式访问 MATLAB Online 网站或 MATLAB Web App Server。当您这样做时,Chrome® 会在您每次尝试访问麦克风时自动询问是否允许访问麦克风,而不管您的浏览器设置如何。

版本历史记录

在 R2006a 之前推出