# 音频设备管理 (/zh-CN/api-reference/rtc/unity/device-management/audio-device)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

<a id="toc_audio_device"></a>

<a id="api_iaudiodevicemanager_enumerateplaybackdevices"></a>

<a id="ariaid-title2"></a>

## EnumeratePlaybackDevices [#enumerateplaybackdevices]

获取系统中所有的播放设备列表。

<a id="api_iaudiodevicemanager_enumerateplaybackdevices__prototype"></a>

```csharp
public abstract DeviceInfo[] EnumeratePlaybackDevices();
```

<a id="api_iaudiodevicemanager_enumerateplaybackdevices__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_enumerateplaybackdevices__return_values"></a>

### 返回值 [#返回值]

- 方法调用成功，返回一个 DeviceInfo 数组，包含所有音频播放设备的设备 ID 和设备名称。
- 方法调用失败: `null`。

### 所属接口类 [#所属接口类]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_enumeraterecordingdevices"></a>

<a id="ariaid-title3"></a>

## EnumerateRecordingDevices [#enumeraterecordingdevices]

获取系统中所有的音频采集设备列表。

<a id="api_iaudiodevicemanager_enumeraterecordingdevices__prototype"></a>

```csharp
abstract DeviceInfo[] EnumerateRecordingDevices();
```

<a id="api_iaudiodevicemanager_enumeraterecordingdevices__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_enumeraterecordingdevices__return_values"></a>

### 返回值 [#返回值-1]

- 方法调用成功，返回一个 DeviceInfo 数组，包含所有音频采集设备的设备 ID 和设备名称。
- 方法调用失败: `null`。

### 所属接口类 [#所属接口类-1]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_followsystemloopbackdevice"></a>

<a id="ariaid-title4"></a>

## FollowSystemLoopbackDevice [#followsystemloopbackdevice]

设置声卡采集设备是否跟随系统默认的播放设备。

<a id="api_iaudiodevicemanager_followsystemloopbackdevice__prototype"></a>

```csharp
public abstract int FollowSystemLoopbackDevice(bool enable);
```

<a id="api_iaudiodevicemanager_followsystemloopbackdevice__detailed_desc"></a>

方法仅适用于 Windows 和 macOS。

<a id="api_iaudiodevicemanager_followsystemloopbackdevice__parameters"></a>

### 参数 [#参数]

<ParameterList>
<a id="enable"></a>
<Parameter name="enable">

是否跟随系统默认的播放设备：

- true：跟随。当系统默认播放设备发生改变时，SDK 立即跟随切换声卡采集设备。
- false：不跟随。只有当 SDK 使用的声卡采集设备被移除后，SDK 才切换至系统默认的音频播放设备。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_followsystemloopbackdevice__return_values"></a>

### 返回值 [#返回值-2]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-2]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_followsystemplaybackdevice"></a>

<a id="ariaid-title5"></a>

## FollowSystemPlaybackDevice [#followsystemplaybackdevice]

设置 SDK 使用的音频播放设备跟随系统默认的音频播放设备。

<a id="api_iaudiodevicemanager_followsystemplaybackdevice__prototype"></a>

```csharp
public abstract int FollowSystemPlaybackDevice(bool enable);
```

<a id="api_iaudiodevicemanager_followsystemplaybackdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_followsystemplaybackdevice__parameters"></a>

### 参数 [#参数-1]

<ParameterList>
<a id="enable-1"></a>
<Parameter name="enable">

是否跟随系统默认的音频播放设备：

- true：跟随。当系统默认音频播放设备发生改变时，SDK 立即切换音频播放设备。
- false：不跟随。只有当 SDK 使用的音频播放设备被移除后，SDK 才切换至系统默认的音频播放设备。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_followsystemplaybackdevice__return_values"></a>

### 返回值 [#返回值-3]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-3]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_followsystemrecordingdevice"></a>

<a id="ariaid-title6"></a>

## FollowSystemRecordingDevice [#followsystemrecordingdevice]

设置 SDK 使用的音频采集设备跟随系统默认的音频采集设备。

<a id="api_iaudiodevicemanager_followsystemrecordingdevice__prototype"></a>

```csharp
public abstract int FollowSystemRecordingDevice(bool enable);
```

<a id="api_iaudiodevicemanager_followsystemrecordingdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_followsystemrecordingdevice__parameters"></a>

### 参数 [#参数-2]

<ParameterList>
<a id="enable-2"></a>
<Parameter name="enable">

是否跟随系统默认的音频采集设备：

- true：跟随。当系统默认的音频采集设备改变时，SDK 立即切换音频采集设备。
- false：不跟随。只有当 SDK 使用的音频采集设备被移除后，SDK 才切换至系统默认的音频采集设备。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_followsystemrecordingdevice__return_values"></a>

### 返回值 [#返回值-4]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-4]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_irtcengine_getaudiodeviceinfo"></a>

<a id="ariaid-title7"></a>

## GetAudioDeviceInfo [#getaudiodeviceinfo]

获取音频设备信息。

<a id="api_irtcengine_getaudiodeviceinfo__prototype"></a>

```csharp
public abstract int GetAudioDeviceInfo(ref DeviceInfoMobile deviceInfo);
```

<a id="api_irtcengine_getaudiodeviceinfo__detailed_desc"></a>

调用该方法后，你可以获取音频设备是否支持极低延时采集和播放。

:::note
注：

- 该方法仅适用于 Android 平台。
- 该方法在加入频道前后均可调用。
:::

<a id="api_irtcengine_getaudiodeviceinfo__parameters"></a>

### 参数 [#参数-3]

<ParameterList>
<a id="deviceinfo"></a>
<Parameter name="deviceInfo">

音频设备信息，详见 [DeviceInfoMobile](/zh-CN/api-reference/rtc/unity/class-deviceinfo)。

</Parameter>
</ParameterList>

<a id="api_irtcengine_getaudiodeviceinfo__return_values"></a>

### 返回值 [#返回值-5]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-5]

- [IRtcEngine](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_irtcengine)

<a id="api_irtcengine_getaudiodevicemanager"></a>

<a id="ariaid-title8"></a>

## GetAudioDeviceManager [#getaudiodevicemanager]

获取 [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager) 对象，以管理音频设备。

<a id="api_irtcengine_getaudiodevicemanager__prototype"></a>

```csharp
public abstract IAudioDeviceManager GetAudioDeviceManager();
```

<a id="api_irtcengine_getaudiodevicemanager__detailed_desc"></a>

<a id="api_irtcengine_getaudiodevicemanager__return_values"></a>

### 返回值 [#返回值-6]

一个 [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager) 对象。

### 所属接口类 [#所属接口类-6]

- [IRtcEngine](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_irtcengine)

<a id="api_iaudiodevicemanager_getloopbackdevice"></a>

<a id="ariaid-title9"></a>

## GetLoopbackDevice [#getloopbackdevice]

获取当前的声卡采集设备。

<a id="api_iaudiodevicemanager_getloopbackdevice__prototype"></a>

```csharp
public abstract int GetLoopbackDevice(ref string deviceId);
```

<a id="api_iaudiodevicemanager_getloopbackdevice__detailed_desc"></a>

该方法仅适用于 Windows 和 macOS。

<a id="api_iaudiodevicemanager_getloopbackdevice__parameters"></a>

### 参数 [#参数-4]

<ParameterList>
<a id="deviceid"></a>
<Parameter name="deviceId">

输出参数，当前声卡采集设备的 ID。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getloopbackdevice__return_values"></a>

### 返回值 [#返回值-7]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-7]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice"></a>

<a id="ariaid-title10"></a>

## GetPlaybackDefaultDevice [1/2] [#getplaybackdefaultdevice-12]

获取系统默认的音频播放设备。

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice__prototype"></a>

```csharp
public abstract int GetPlaybackDefaultDevice(ref string deviceId, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice__parameters"></a>

### 参数 [#参数-5]

<ParameterList>
<a id="deviceid-1"></a>
<Parameter name="deviceId">

输出参数，系统默认的音频播放设备 ID。

</Parameter>
<a id="devicename"></a>
<Parameter name="deviceName">

输出参数，系统默认的音频播放设备名称。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice__return_values"></a>

### 返回值 [#返回值-8]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-8]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice2"></a>

<a id="ariaid-title11"></a>

## GetPlaybackDefaultDevice [2/2] [#getplaybackdefaultdevice-22]

获取系统默认的音频播放设备及设备类型。

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice2__prototype"></a>

```csharp
public abstract int GetPlaybackDefaultDevice(ref string deviceId, ref string deviceTypeName, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice2__detailed_desc"></a>

:::note
注： 该方法仅适用于 macOS。
:::

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice2__parameters"></a>

### 参数 [#参数-6]

<ParameterList>
<a id="deviceid-2"></a>
<Parameter name="deviceId">

输出参数，系统默认的音频播放设备 ID。

</Parameter>
<a id="devicename-1"></a>
<Parameter name="deviceName">

输出参数，系统默认的音频播放设备名称。

</Parameter>
<a id="devicetypename"></a>
<Parameter name="deviceTypeName">

输出参数，音频设备类型，如：built-in、USB、HDMI 等。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getplaybackdefaultdevice2__return_values"></a>

### 返回值 [#返回值-9]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-9]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdevice"></a>

<a id="ariaid-title12"></a>

## GetPlaybackDevice [#getplaybackdevice]

获取当前音频播放设备。

<a id="api_iaudiodevicemanager_getplaybackdevice__prototype"></a>

```csharp
public abstract int GetPlaybackDevice(ref string deviceId);
```

<a id="api_iaudiodevicemanager_getplaybackdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getplaybackdevice__parameters"></a>

### 参数 [#参数-7]

<ParameterList>
<a id="deviceid-3"></a>
<Parameter name="deviceId">

输出参数，当前音频播放设备的设备 ID。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getplaybackdevice__return_values"></a>

### 返回值 [#返回值-10]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-10]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo"></a>

<a id="ariaid-title13"></a>

## GetPlaybackDeviceInfo [1/2] [#getplaybackdeviceinfo-12]

获取音频播放设备信息。

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo__prototype"></a>

```csharp
public abstract int GetPlaybackDeviceInfo(ref string deviceId, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo__parameters"></a>

### 参数 [#参数-8]

<ParameterList>
<a id="deviceid-4"></a>
<Parameter name="deviceId">

输出参数，播放设备的设备 ID。

</Parameter>
<a id="devicename-2"></a>
<Parameter name="deviceName">

输出参数，播放设备的设备名称。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo__return_values"></a>

### 返回值 [#返回值-11]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-11]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo2"></a>

<a id="ariaid-title14"></a>

## GetPlaybackDeviceInfo [2/2] [#getplaybackdeviceinfo-22]

获取音频播放设备信息及其类型。

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo2__prototype"></a>

```csharp
public abstract int GetPlaybackDeviceInfo(ref string deviceId, ref string deviceName, ref string deviceTypeName);
```

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo2__detailed_desc"></a>

该方法仅适用于 macOS。

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo2__parameters"></a>

### 参数 [#参数-9]

<ParameterList>
<a id="deviceid-5"></a>
<Parameter name="deviceId">

输出参数，播放设备的设备 ID。

</Parameter>
<a id="devicename-3"></a>
<Parameter name="deviceName">

输出参数，播放设备的设备名称。

</Parameter>
<a id="devicetypename-1"></a>
<Parameter name="deviceTypeName">

输出参数，音频播放设备类型，如：built-in、USB、HDMI 等。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getplaybackdeviceinfo2__return_values"></a>

### 返回值 [#返回值-12]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-12]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getplaybackdevicevolume"></a>

<a id="ariaid-title15"></a>

## GetPlaybackDeviceVolume [#getplaybackdevicevolume]

获取播放设备音量。

<a id="api_iaudiodevicemanager_getplaybackdevicevolume__prototype"></a>

```csharp
public abstract int GetPlaybackDeviceVolume();
```

<a id="api_iaudiodevicemanager_getplaybackdevicevolume__detailed_desc"></a>

<a id="api_iaudiodevicemanager_getplaybackdevicevolume__return_values"></a>

### 返回值 [#返回值-13]

播放设备音量。取值范围 [0,255]。

### 所属接口类 [#所属接口类-13]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice"></a>

<a id="ariaid-title16"></a>

## GetRecordingDefaultDevice [1/2] [#getrecordingdefaultdevice-12]

获取系统默认的音频采集设备。

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice__prototype"></a>

```csharp
public abstract int GetRecordingDefaultDevice(ref string deviceId, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice__parameters"></a>

### 参数 [#参数-10]

<ParameterList>
<a id="deviceid-6"></a>
<Parameter name="deviceId">

输出参数，系统默认的音频采集设备 ID。

</Parameter>
<a id="devicename-4"></a>
<Parameter name="deviceName">

输出参数，系统默认的音频采集设备名称。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice__return_values"></a>

### 返回值 [#返回值-14]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-14]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice2"></a>

<a id="ariaid-title17"></a>

## GetRecordingDefaultDevice [2/2] [#getrecordingdefaultdevice-22]

获取系统默认的音频采集设备及类型。

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice2__prototype"></a>

```csharp
public abstract int GetRecordingDefaultDevice(ref string deviceId, ref string deviceTypeName, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice2__detailed_desc"></a>

:::note
注： 该方法仅适用于 macOS。
:::

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice2__parameters"></a>

### 参数 [#参数-11]

<ParameterList>
<a id="deviceid-7"></a>
<Parameter name="deviceId">

输出参数，系统默认的音频采集设备 ID。

</Parameter>
<a id="devicename-5"></a>
<Parameter name="deviceName">

输出参数，系统默认的音频采集设备名称。

</Parameter>
<a id="devicetypename-2"></a>
<Parameter name="deviceTypeName">

输出参数，音频设备类型，如：built-in、USB、HDMI 等。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getrecordingdefaultdevice2__return_values"></a>

### 返回值 [#返回值-15]

- 0：方法调用成功。
- &lt; 0：方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-15]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdevice"></a>

<a id="ariaid-title18"></a>

## GetRecordingDevice [#getrecordingdevice]

获取当前音频采集设备。

<a id="api_iaudiodevicemanager_getrecordingdevice__prototype"></a>

```csharp
public abstract int GetRecordingDevice(ref string deviceId);
```

<a id="api_iaudiodevicemanager_getrecordingdevice__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getrecordingdevice__parameters"></a>

### 参数 [#参数-12]

<ParameterList>
<a id="deviceid-8"></a>
<Parameter name="deviceId">

输出参数。当前采集设备的设备 ID。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getrecordingdevice__return_values"></a>

### 返回值 [#返回值-16]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-16]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo"></a>

<a id="ariaid-title19"></a>

## GetRecordingDeviceInfo [1/2] [#getrecordingdeviceinfo-12]

获取音频采集设备信息。

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo__prototype"></a>

```csharp
public abstract int GetRecordingDeviceInfo(ref string deviceId, ref string deviceName);
```

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo__parameters"></a>

### 参数 [#参数-13]

<ParameterList>
<a id="deviceid-9"></a>
<Parameter name="deviceId">

输出参数，播放设备的设备 ID。

</Parameter>
<a id="devicename-6"></a>
<Parameter name="deviceName">

输出参数，播放设备的设备名称。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo__return_values"></a>

### 返回值 [#返回值-17]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-17]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo2"></a>

<a id="ariaid-title20"></a>

## GetRecordingDeviceInfo [2/2] [#getrecordingdeviceinfo-22]

获取音频采集设备信息及其类型。

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo2__prototype"></a>

```csharp
public abstract int GetRecordingDeviceInfo(ref string deviceId, ref string deviceName, ref string deviceTypeName);
```

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo2__detailed_desc"></a>

该方法仅适用于 macOS。

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo2__parameters"></a>

### 参数 [#参数-14]

<ParameterList>
<a id="deviceid-10"></a>
<Parameter name="deviceId">

输出参数，播放设备的设备 ID。

</Parameter>
<a id="devicename-7"></a>
<Parameter name="deviceName">

输出参数，播放设备的设备名称。

</Parameter>
<a id="devicetypename-3"></a>
<Parameter name="deviceTypeName">

输出参数，音频采集设备类型，如：built-in、USB、HDMI 等。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_getrecordingdeviceinfo2__return_values"></a>

### 返回值 [#返回值-18]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-18]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdevicemute"></a>

<a id="ariaid-title21"></a>

## GetRecordingDeviceMute [#getrecordingdevicemute]

获取当前音频采集设备静音状态。

<a id="api_iaudiodevicemanager_getrecordingdevicemute__prototype"></a>

```csharp
public abstract bool GetRecordingDeviceMute();
```

<a id="api_iaudiodevicemanager_getrecordingdevicemute__detailed_desc"></a>

<a id="api_iaudiodevicemanager_getrecordingdevicemute__return_values"></a>

### 返回值 [#返回值-19]

- true: 采集设备为静音状态。
- false: 采集设备为非静音状态。

### 所属接口类 [#所属接口类-19]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_getrecordingdevicevolume"></a>

<a id="ariaid-title22"></a>

## GetRecordingDeviceVolume [#getrecordingdevicevolume]

获取音频采集设备音量。

<a id="api_iaudiodevicemanager_getrecordingdevicevolume__prototype"></a>

```csharp
public abstract int GetRecordingDeviceVolume();
```

<a id="api_iaudiodevicemanager_getrecordingdevicevolume__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 平台。
:::

<a id="api_iaudiodevicemanager_getrecordingdevicevolume__return_values"></a>

### 返回值 [#返回值-20]

音频采集设备音量。取值范围 [0,255]。

### 所属接口类 [#所属接口类-20]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setloopbackdevice"></a>

<a id="ariaid-title23"></a>

## SetLoopbackDevice [#setloopbackdevice]

指定声卡采集设备。

<a id="api_iaudiodevicemanager_setloopbackdevice__prototype"></a>

```csharp
public abstract int SetLoopbackDevice(string deviceId);
```

<a id="api_iaudiodevicemanager_setloopbackdevice__detailed_desc"></a>

SDK 默认采用当前的播放设备作为声卡采集设备，如果想要指定其他音频设备作为声卡采集设备，则调用该方法并设置 `deviceId` 为你想要指定的声卡采集设备。
该方法可以更改当前的音频采集设备，但不改变系统默认的音频采集设备。假设系统默认的音频采集设备是麦克风 1，你在加入频道前调用该方法设置当前的音频路由为声卡 1，如果在此时进行设备检测，SDK 会对声卡 1 做设备检测。检测结束后，当你加入频道时 SDK 依然会选择使用系统默认的音频采集设备，即麦克风 1。

:::note
注： 该方法仅适用于 Windows 和 macOS。
该方法适用的场景如下：
使用 App A 播放音乐，通过蓝牙耳机播放；同时使用 App B 进行视频会议，通过扬声器播放。

- 如果设置声卡采集设备为蓝牙耳机，则 SDK 会将 App A 中的音乐发布到远端。
- 如果设置声卡采集设备设置为扬声器，则 SDK 不会将 App A 中的音乐发布到远端。
- 如果设置声卡采集设备为蓝牙耳机后，又改用有线耳机播放 App A 中的音乐，则需要重新调用该方法，设置声卡采集设备为有线耳机，则 SDK 会继续将 App A 中的音乐发布到远端。
:::

<a id="api_iaudiodevicemanager_setloopbackdevice__parameters"></a>

### 参数 [#参数-15]

<ParameterList>
<a id="deviceid-11"></a>
<Parameter name="deviceId">

指定 SDK 的声卡采集设备。由 [EnumeratePlaybackDevices](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_enumerateplaybackdevices) 获取。插拔设备不会影响 `deviceId`。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setloopbackdevice__return_values"></a>

### 返回值 [#返回值-21]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-21]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setplaybackdevice"></a>

<a id="ariaid-title24"></a>

## SetPlaybackDevice [#setplaybackdevice]

指定播放设备。

<a id="api_iaudiodevicemanager_setplaybackdevice__prototype"></a>

```csharp
public abstract int SetPlaybackDevice(string deviceId);
```

<a id="api_iaudiodevicemanager_setplaybackdevice__detailed_desc"></a>

该方法可以更改当前的音频路由，但不会改变系统默认的音频路由。假设系统默认的音频路由是扬声器 1，你在加入频道前调用该方法设置当前的音频路由为扬声器 2，如果在此时进行设备检测，SDK 会对扬声器 2 进行检测。检测结束后，当你加入频道时 SDK 依然会选择使用系统默认的音频路由，即扬声器 1。

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_setplaybackdevice__parameters"></a>

### 参数 [#参数-16]

<ParameterList>
<a id="deviceid-12"></a>
<Parameter name="deviceId">

指定播放设备。由 [EnumeratePlaybackDevices](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_enumerateplaybackdevices) 获取。插拔设备不会影响 `deviceId`。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setplaybackdevice__return_values"></a>

### 返回值 [#返回值-22]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-22]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setplaybackdevicemute"></a>

<a id="ariaid-title25"></a>

## SetPlaybackDeviceMute [#setplaybackdevicemute]

设置播放设备静音。

<a id="api_iaudiodevicemanager_setplaybackdevicemute__prototype"></a>

```csharp
public abstract int SetPlaybackDeviceMute(bool mute);
```

<a id="api_iaudiodevicemanager_setplaybackdevicemute__detailed_desc"></a>

<a id="api_iaudiodevicemanager_setplaybackdevicemute__parameters"></a>

### 参数 [#参数-17]

<ParameterList>
<a id="mute"></a>
<Parameter name="mute">

是否设置播放设备为静音：

- true: 播放设备设为静音。
- false: 播放设备不设为静音。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setplaybackdevicemute__return_values"></a>

### 返回值 [#返回值-23]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-23]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setplaybackdevicevolume"></a>

<a id="ariaid-title26"></a>

## SetPlaybackDeviceVolume [#setplaybackdevicevolume]

设置播放设备音量。

<a id="api_iaudiodevicemanager_setplaybackdevicevolume__prototype"></a>

```csharp
public abstract int SetPlaybackDeviceVolume(int volume);
```

<a id="api_iaudiodevicemanager_setplaybackdevicevolume__detailed_desc"></a>

:::note
注： 该方法仅适用于 Windows 平台。
:::

<a id="api_iaudiodevicemanager_setplaybackdevicevolume__parameters"></a>

### 参数 [#参数-18]

<ParameterList>
<a id="volume"></a>
<Parameter name="volume">

播放设备音量。取值范围为 [0,255]。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setplaybackdevicevolume__return_values"></a>

### 返回值 [#返回值-24]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-24]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setrecordingdevice"></a>

<a id="ariaid-title27"></a>

## SetRecordingDevice [#setrecordingdevice]

指定音频采集设备。

<a id="api_iaudiodevicemanager_setrecordingdevice__prototype"></a>

```csharp
public abstract int SetRecordingDevice(string deviceId);
```

<a id="api_iaudiodevicemanager_setrecordingdevice__detailed_desc"></a>

该方法可以更改当前的音频采集设备，但不改变系统默认的音频采集设备。假设系统默认的音频采集设备是麦克风 1，你在加入频道前调用该方法设置当前的音频路由为蓝牙耳机 1，如果在此时进行设备检测，SDK 会对蓝牙耳机 1 进行检测。检测结束后，当你加入频道时 SDK 依然会选择使用系统默认的音频采集设备，即麦克风 1。

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="api_iaudiodevicemanager_setrecordingdevice__parameters"></a>

### 参数 [#参数-19]

<ParameterList>
<a id="deviceid-13"></a>
<Parameter name="deviceId">

音频采集设备的 Device ID。可通过 [EnumerateRecordingDevices](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_enumeraterecordingdevices) 获取。插拔设备不会影响 `deviceId`。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setrecordingdevice__return_values"></a>

### 返回值 [#返回值-25]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-25]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setrecordingdevicemute"></a>

<a id="ariaid-title28"></a>

## SetRecordingDeviceMute [#setrecordingdevicemute]

设置当前音频采集设备静音。

<a id="api_iaudiodevicemanager_setrecordingdevicemute__prototype"></a>

```csharp
public abstract int SetRecordingDeviceMute(bool mute);
```

<a id="api_iaudiodevicemanager_setrecordingdevicemute__detailed_desc"></a>

<a id="api_iaudiodevicemanager_setrecordingdevicemute__parameters"></a>

### 参数 [#参数-20]

<ParameterList>
<a id="mute-1"></a>
<Parameter name="mute">

是否设置音频采集设备静音：

- true: 采集设备静音。
- false: 采集设备为非静音。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setrecordingdevicemute__return_values"></a>

### 返回值 [#返回值-26]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-26]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_setrecordingdevicevolume"></a>

<a id="ariaid-title29"></a>

## SetRecordingDeviceVolume [#setrecordingdevicevolume]

设置音频采集设备音量。

<a id="api_iaudiodevicemanager_setrecordingdevicevolume__prototype"></a>

```csharp
public abstract int SetRecordingDeviceVolume(int volume);
```

<a id="api_iaudiodevicemanager_setrecordingdevicevolume__detailed_desc"></a>

该方法仅适用于 Windows 和 macOS。

<a id="api_iaudiodevicemanager_setrecordingdevicevolume__parameters"></a>

### 参数 [#参数-21]

<ParameterList>
<a id="volume-1"></a>
<Parameter name="volume">

音频采集设备音量。取值范围 [0,255]。0 代表无声，255 代表最大音量。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_setrecordingdevicevolume__return_values"></a>

### 返回值 [#返回值-27]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-27]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest_ng"></a>

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest"></a>

<a id="ariaid-title30"></a>

## StartAudioDeviceLoopbackTest [#startaudiodeviceloopbacktest]

开始音频设备回路测试。

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest__prototype"></a>

```csharp
public abstract int StartAudioDeviceLoopbackTest(int indicationInterval);
```

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest__detailed_desc"></a>

该方法测试音频采集和播放设备是否能正常工作。一旦测试开始，音频采集设备会采集本地音频，然后使用音频播放设备播放出来。SDK 会按设置的时间间隔触发两个 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调，分别报告音频采集设备（`uid` = 0）和音频播放设置（`uid` = 1）的音量信息。

:::note
注：

- 该方法仅适用于 Windows 和 macOS。
- 该方法在加入频道前后都可调用。
- 该方法仅支持主播角色调用。
- 该方法仅在本地进行音频设备测试，不涉及网络连接。
- 完成测试后，必须调用 [StopAudioDeviceLoopbackTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_stopaudiodeviceloopbacktest) 停止音频设备回路测试。
:::

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest__parameters"></a>

### 参数 [#参数-22]

<ParameterList>
<a id="indicationinterval"></a>
<Parameter name="indicationInterval">

SDK 触发 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调的时间间隔，单位为毫秒。建议设置到大于 200 毫秒。不得少于 10 毫秒，否则会收不到 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_startaudiodeviceloopbacktest__return_values"></a>

### 返回值 [#返回值-28]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-28]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_startplaybackdevicetest"></a>

<a id="ariaid-title31"></a>

## StartPlaybackDeviceTest [#startplaybackdevicetest]

启动音频播放设备测试。

<a id="api_iaudiodevicemanager_startplaybackdevicetest__prototype"></a>

```csharp
public abstract int StartPlaybackDeviceTest(string testAudioFilePath);
```

<a id="api_iaudiodevicemanager_startplaybackdevicetest__detailed_desc"></a>

该方法用于测试本地音频播放设备是否能正常工作。启动测试后，SDK 播放指定的音频文件，测试者如果能听到声音，说明播放设备能正常工作。
调用该方法后，SDK 会每隔 100 毫秒触发一次 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调，报告 `uid` = 1 及播放设备的音量信息。
该方法和 [StartEchoTest](/zh-CN/api-reference/rtc/unity/network#api_irtcengine_startechotest3) 的区别在于该方法检测本地的音频播放设备能否正常工作，后者可以检测音视频设备及网络是否正常。

:::note
注： 该方法需要在加入频道前调用。测试完成后，如需加入频道，请确保先调用 [StopPlaybackDeviceTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_stopplaybackdevicetest) 停止设备测试。
:::

<a id="api_iaudiodevicemanager_startplaybackdevicetest__parameters"></a>

### 参数 [#参数-23]

<ParameterList>
<a id="testaudiofilepath"></a>
<Parameter name="testAudioFilePath">

音频文件的绝对路径，路径字符串使用 UTF-8 编码格式。

- 支持文件格式: wav、mp3、m4a、aac。
- 支持文件采样率: 8000、16000、32000、44100、48000。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_startplaybackdevicetest__return_values"></a>

### 返回值 [#返回值-29]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-29]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_startrecordingdevicetest_ng"></a>

<a id="api_iaudiodevicemanager_startrecordingdevicetest"></a>

<a id="ariaid-title32"></a>

## StartRecordingDeviceTest [#startrecordingdevicetest]

启动音频采集设备测试。

<a id="api_iaudiodevicemanager_startrecordingdevicetest__prototype"></a>

```csharp
public abstract int StartRecordingDeviceTest(int indicationInterval);
```

<a id="api_iaudiodevicemanager_startrecordingdevicetest__detailed_desc"></a>

该方法用于测试本地音频采集设备是否能正常工作。调用该方法后，SDK 会按设置的时间间隔触发 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调，报告 `uid` = 0 及采集设备的音量信息。
该方法和 [StartEchoTest](/zh-CN/api-reference/rtc/unity/network#api_irtcengine_startechotest3) 的区别在于该方法检测本地的音频采集设备能否正常工作，后者可以检测音视频设备及网络是否正常。

:::note
注： 该方法需要在加入频道前调用。测试完成后，如需加入频道，请确保先调用 [StopRecordingDeviceTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_stoprecordingdevicetest) 停止设备测试。
:::

<a id="api_iaudiodevicemanager_startrecordingdevicetest__parameters"></a>

### 参数 [#参数-24]

<ParameterList>
<a id="indicationinterval-1"></a>
<Parameter name="indicationInterval">

SDK 触发 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调的时间间隔，单位为毫秒，最小取值为 10，否则会收不到 [OnAudioVolumeIndication](/zh-CN/api-reference/rtc/unity/audio/audio-basic#callback_irtcengineeventhandler_onaudiovolumeindication) 回调，SDK 会返回错误码 `-2`。声网推荐你将该值设为 100。

</Parameter>
</ParameterList>

<a id="api_iaudiodevicemanager_startrecordingdevicetest__return_values"></a>

### 返回值 [#返回值-30]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

  - -2: 参数设置错误，请重新设置参数。

### 所属接口类 [#所属接口类-30]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_stopaudiodeviceloopbacktest"></a>

<a id="ariaid-title33"></a>

## StopAudioDeviceLoopbackTest [#stopaudiodeviceloopbacktest]

停止音频设备回路测试。

<a id="api_iaudiodevicemanager_stopaudiodeviceloopbacktest__prototype"></a>

```csharp
public abstract int StopAudioDeviceLoopbackTest();
```

<a id="api_iaudiodevicemanager_stopaudiodeviceloopbacktest__detailed_desc"></a>

:::note
注：

- 该方法仅适用于 Windows 和 macOS。
- 该方法在加入频道前后都可调用。
- 该方法仅支持主播角色调用。
- 在调用 [StartAudioDeviceLoopbackTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_startaudiodeviceloopbacktest) 后，必须调用该方法停止音频设备回路测试。
:::

<a id="api_iaudiodevicemanager_stopaudiodeviceloopbacktest__return_values"></a>

### 返回值 [#返回值-31]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-31]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_stopplaybackdevicetest"></a>

<a id="ariaid-title34"></a>

## StopPlaybackDeviceTest [#stopplaybackdevicetest]

停止音频播放设备测试。

<a id="api_iaudiodevicemanager_stopplaybackdevicetest__prototype"></a>

```csharp
public abstract int StopPlaybackDeviceTest();
```

<a id="api_iaudiodevicemanager_stopplaybackdevicetest__detailed_desc"></a>

该方法用于停止音频播放设备测试。调用 [StartPlaybackDeviceTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_startplaybackdevicetest) 后，必须调用该方法停止测试。

:::note
注： 该方法需要在加入频道前调用。
:::

<a id="api_iaudiodevicemanager_stopplaybackdevicetest__return_values"></a>

### 返回值 [#返回值-32]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-32]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="api_iaudiodevicemanager_stoprecordingdevicetest"></a>

<a id="ariaid-title35"></a>

## StopRecordingDeviceTest [#stoprecordingdevicetest]

停止音频采集设备测试。

<a id="api_iaudiodevicemanager_stoprecordingdevicetest__prototype"></a>

```csharp
public abstract int StopRecordingDeviceTest();
```

<a id="api_iaudiodevicemanager_stoprecordingdevicetest__detailed_desc"></a>

该方法用于停止音频采集设备测试。调用 [StartRecordingDeviceTest](/zh-CN/api-reference/rtc/unity/device-management/audio-device#api_iaudiodevicemanager_startrecordingdevicetest) 后，必须调用该方法停止测试。

:::note
注： 该方法需要在加入频道前调用。
:::

<a id="api_iaudiodevicemanager_stoprecordingdevicetest__return_values"></a>

### 返回值 [#返回值-33]

- 0: 方法调用成功。
- &lt; 0: 方法调用失败。详见[错误码](/zh-CN/api-reference/rtc/error-code)了解详情和解决建议。

### 所属接口类 [#所属接口类-33]

- [IAudioDeviceManager](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_iaudiodevicemanager)

<a id="callback_irtcengineeventhandler_onaudiodevicestatechanged"></a>

<a id="ariaid-title36"></a>

## OnAudioDeviceStateChanged [#onaudiodevicestatechanged]

音频设备变化回调。

<a id="callback_irtcengineeventhandler_onaudiodevicestatechanged__prototype"></a>

```csharp
public virtual void OnAudioDeviceStateChanged(string deviceId, MEDIA_DEVICE_TYPE deviceType, MEDIA_DEVICE_STATE_TYPE deviceState) { }
```

<a id="callback_irtcengineeventhandler_onaudiodevicestatechanged__detailed_desc"></a>

提示系统音频设备状态发生改变，比如耳机被拔出。

:::note
注： 该方法仅适用于 Windows 和 macOS。
:::

<a id="callback_irtcengineeventhandler_onaudiodevicestatechanged__parameters"></a>

### 参数 [#参数-25]

<ParameterList>
<a id="deviceid-14"></a>
<Parameter name="deviceId">

设备 ID。

</Parameter>
<a id="devicetype"></a>
<Parameter name="deviceType">

设备类型定义。详见 [MEDIA_DEVICE_TYPE](/zh-CN/api-reference/rtc/unity/enum-mediadevicetype)。

</Parameter>
<a id="devicestate"></a>
<Parameter name="deviceState">

设备状态，详见 [MEDIA_DEVICE_STATE_TYPE](/zh-CN/api-reference/rtc/unity/enum-mediadevicestatetype)。

</Parameter>
</ParameterList>

### 所属接口类 [#所属接口类-34]

- [IRtcEngineEventHandler](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_irtcengineeventhandler)

<a id="callback_irtcengineeventhandler_onaudiodevicevolumechanged"></a>

<a id="ariaid-title37"></a>

## OnAudioDeviceVolumeChanged [#onaudiodevicevolumechanged]

音频设备或 App 的音量发生改变回调。

<a id="callback_irtcengineeventhandler_onaudiodevicevolumechanged__prototype"></a>

```csharp
public virtual void OnAudioDeviceVolumeChanged(MEDIA_DEVICE_TYPE deviceType, int volume, bool muted)
```

<a id="callback_irtcengineeventhandler_onaudiodevicevolumechanged__detailed_desc"></a>

当音频播放、采集设备或 App 的音量发生改变时，会触发该回调。

:::note
注： 该回调仅适用于 Windows 和 macOS。
:::

<a id="callback_irtcengineeventhandler_onaudiodevicevolumechanged__parameters"></a>

### 参数 [#参数-26]

<ParameterList>
<a id="devicetype-1"></a>
<Parameter name="deviceType">

设备类型定义。详见 [MEDIA_DEVICE_TYPE](/zh-CN/api-reference/rtc/unity/enum-mediadevicetype)。

</Parameter>
<a id="volume-2"></a>
<Parameter name="volume">

音量。范围为 [0,255]。

</Parameter>
<a id="muted"></a>
<Parameter name="muted">

音频设备是否为静音状态：

- true: 音频设备已静音。
- false: 音频设备未被静音。

</Parameter>
</ParameterList>

### 所属接口类 [#所属接口类-35]

- [IRtcEngineEventHandler](/zh-CN/api-reference/rtc/unity/rtc-interface-class#class_irtcengineeventhandler)
