主要内容

audiodevinfo

R2026b

有关音频设备的信息

描述

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

示例

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

示例

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

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

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

示例

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

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

示例

全部折叠

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

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

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

info.input
ans = 1×2 struct array with fields:
                                                              'Primary Sound Capture Driver (Windows DirectSound)'    'Windows DirectSound'    0
    'Microphone Array (Microphone Array (Intel® Smart Sound Technology (Intel® SST)) (VDI)) (Windows DirectSound)'    'Windows DirectSound'    1

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

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

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

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

nDevices = audiodevinfo(0)
nDevices = 
2

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

检查 ID 值 0 标识的输入音频设备是否支持 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

输出参量

全部折叠

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

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

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

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

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

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

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

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

如果由 IO 和 ID 指定的音频设备支持 Fs 的采样率,nBits 位的采样位数和 nChannels 个音频通道,则 support 为 1 (true)。否则,support 为 0 (false)。

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

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

限制

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

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

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

    • 不支持 "DriverVersion"。

提示

  • Google Chrome® 支持在 MATLAB Online 和 MATLAB Web App Server 中使用 audiodevinfo。

  • 注意

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

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

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

版本历史记录

在 R2006a 之前推出