1# Types 2<!--Kit: Audio Kit--> 3<!--Subsystem: Multimedia--> 4<!--Owner: @songshenke--> 5<!--Designer: @caixuejiang; @hao-liangfei; @zhanganxiang--> 6<!--Tester: @Filger--> 7<!--Adviser: @zengyawen--> 8 9> **说明:** 10> 11> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 12 13## AudioRendererChangeInfoArray<sup>9+</sup> 14 15type AudioRendererChangeInfoArray = Array<Readonly<AudioRendererChangeInfo>> 16 17数组类型,AudioRenderChangeInfo数组,只读。 18 19**系统能力:** SystemCapability.Multimedia.Audio.Renderer 20 21| 类型 | 说明 | 22|---------|---------------------------------------------------------------| 23| Array<Readonly<AudioRendererChangeInfo>> | 数组类型,[AudioRendererChangeInfo](arkts-apis-audio-i.md#audiorendererchangeinfo9)数组,只读。 | 24 25 26## AudioCapturerChangeInfoArray<sup>9+</sup> 27 28type AudioCapturerChangeInfoArray = Array<Readonly<AudioCapturerChangeInfo>> 29 30数组类型,AudioCapturerChangeInfo数组,只读。 31 32**系统能力:** SystemCapability.Multimedia.Audio.Capturer 33 34| 类型 | 说明 | 35|---------|-----------------------------------------------------------------| 36| Array<Readonly<AudioCapturerChangeInfo>> | 数组类型,[AudioCapturerChangeInfo](arkts-apis-audio-i.md#audiocapturerchangeinfo9)数组,只读。 | 37 38 39## AudioEffectInfoArray<sup>10+</sup> 40 41type AudioEffectInfoArray = Array<Readonly<AudioEffectMode>> 42 43待查询ContentType和StreamUsage组合场景下的音效模式数组类型,[AudioEffectMode](arkts-apis-audio-e.md#audioeffectmode10)数组,只读。 44 45**系统能力:** SystemCapability.Multimedia.Audio.Renderer 46 47| 类型 | 说明 | 48|---------|---------------------------------------------------------------| 49| Array<Readonly<AudioEffectMode>> | 待查询ContentType和StreamUsage组合场景下的音效模式数组类型,[AudioEffectMode](arkts-apis-audio-e.md#audioeffectmode10)数组,只读。 | 50 51## AudioDeviceDescriptors 52 53type AudioDeviceDescriptors = Array<Readonly<AudioDeviceDescriptor>> 54 55设备属性数组类型,为[AudioDeviceDescriptor](arkts-apis-audio-i.md#audiodevicedescriptor)的数组,只读。 56 57**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。 58 59**系统能力:** SystemCapability.Multimedia.Audio.Device 60 61| 类型 | 说明 | 62|---------|---------------------------------------------------------------| 63| Array<Readonly<AudioDeviceDescriptor>> | 设备属性数组类型,为[AudioDeviceDescriptor](arkts-apis-audio-i.md#audiodevicedescriptor)的数组,只读。 | 64 65 66## AudioRendererWriteDataCallback<sup>12+</sup> 67 68type AudioRendererWriteDataCallback = (data: ArrayBuffer) => AudioDataCallbackResult | void 69 70回调函数类型,用于音频渲染器的数据写入,回调函数结束后,音频服务会把data指向的数据放入队列里等待播放,因此请勿在回调外再次更改data指向的数据, 且务必保证往data填满待播放数据, 否则会导致音频服务播放杂音。 71 72**系统能力:** SystemCapability.Multimedia.Audio.Renderer 73 74**参数:** 75 76| 参数名 | 类型 |必填 | 说明 | 77| :--------------| :--------| :----- | :------------ | 78| data | ArrayBuffer | 是 | 待写入缓冲区的数据。 | 79 80**返回值:** 81 82| 类型 | 说明 | 83|--------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------| 84| [AudioDataCallbackResult](arkts-apis-audio-e.md#audiodatacallbackresult12) \| void | 如果返回 void 或 AudioDataCallbackResult.VALID:表示数据有效,将播放音频数据;如果返回 AudioDataCallbackResult.INVALID:表示数据无效,且音频数据不播放。 | 85