diff --git a/api/@ohos.multimedia.audio.d.ts b/api/@ohos.multimedia.audio.d.ts index 25202299941c475bfd282388ba46f0d111804446..6c951754cf3b38ec49a8cbe7368f0bcd62674a56 100755 --- a/api/@ohos.multimedia.audio.d.ts +++ b/api/@ohos.multimedia.audio.d.ts @@ -18,7 +18,7 @@ import {ErrorCallback, AsyncCallback, Callback} from './basic'; /** * @name audio * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio * @import import audio from '@ohos.multimedia.audio'; * @permission */ @@ -27,7 +27,7 @@ declare namespace audio { /** * Obtains an AudioManager instance. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ function getAudioManager(): AudioManager; @@ -36,7 +36,7 @@ declare namespace audio { * @param options All options used for audio capturer. * @return AudioCapturer instance. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ function createAudioCapturer(options: AudioCapturerOptions, callback: AsyncCallback): void; function createAudioCapturer(options: AudioCapturerOptions): Promise; @@ -46,7 +46,7 @@ declare namespace audio { * @param options All options used for audio renderer. * @return AudioRenderer instance. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ function createAudioRenderer(options: AudioRendererOptions, callback: AsyncCallback): void; function createAudioRenderer(options: AudioRendererOptions): Promise; @@ -54,7 +54,7 @@ declare namespace audio { /** * Enumerates the rendering states of the current device. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioState { /** @@ -97,7 +97,7 @@ declare namespace audio { /** * Enumerates audio stream types. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioVolumeType { /** @@ -125,7 +125,7 @@ declare namespace audio { /** * Enumerates audio device flags. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum DeviceFlag { /** @@ -148,7 +148,7 @@ declare namespace audio { /** * Enumerates device roles. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum DeviceRole { /** @@ -166,7 +166,7 @@ declare namespace audio { /** * Enumerates device types. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum DeviceType { /** @@ -204,7 +204,7 @@ declare namespace audio { /** * Enumerates Active device types. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum ActiveDeviceType { /** @@ -222,7 +222,7 @@ declare namespace audio { /** * Enumerates Audio Ringer modes * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioRingMode { /** @@ -245,7 +245,7 @@ declare namespace audio { /** * Enumerates the sample format. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioSampleFormat { SAMPLE_FORMAT_INVALID = -1, @@ -258,7 +258,7 @@ declare namespace audio { /** * Enumerates the audio channel. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioChannel { CHANNEL_1 = 0x1 << 0, @@ -268,7 +268,7 @@ declare namespace audio { /** * Enumerates the audio sampling rate. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioSamplingRate { SAMPLE_RATE_8000 = 8000, @@ -287,7 +287,7 @@ declare namespace audio { /** * Enumerates the audio encoding type. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioEncodingType { /** @@ -305,7 +305,7 @@ declare namespace audio { /** * Enumerates the audio content type. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum ContentType { /** @@ -343,7 +343,7 @@ declare namespace audio { /** * Enumerates the stream usage. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum StreamUsage { /** @@ -365,37 +365,37 @@ declare namespace audio { * Notification or ringtone usage. * @since 7 */ - STREAM_USAGE_NOTIFICATION_RINGTONE = 3, + STREAM_USAGE_NOTIFICATION_RINGTONE = 3 } /** * Interface for audio stream info * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioStreamInfo { /** * Audio sampling rate * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ samplingRate: AudioSamplingRate; /** * Audio channels * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ channels: AudioChannel; /** * Audio sample format * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ sampleFormat: AudioSampleFormat; /** * Audio encoding type * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ encodingType: AudioEncodingType; } @@ -403,25 +403,25 @@ declare namespace audio { /** * Interface for audio renderer info * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioRendererInfo { /** * Audio content type * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ content: ContentType; /** * Audio stream usage * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ usage: StreamUsage; /** * Audio renderer flags * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ rendererFlags: number; } @@ -429,19 +429,19 @@ declare namespace audio { /** * Interface for audio renderer options * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioRendererOptions { /** * Audio stream info * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ streamInfo: AudioStreamInfo; /** * Audio renderer info * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ rendererInfo: AudioRendererInfo; } @@ -449,7 +449,7 @@ declare namespace audio { /** * Enum for audio renderer rate * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioRendererRate { /** @@ -472,7 +472,7 @@ declare namespace audio { /** * Enumerates audio interruption event types. * @since 7 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum InterruptType { /** @@ -491,7 +491,7 @@ declare namespace audio { /** * Enumerates the types of hints for audio interruption. * @since 7 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum InterruptHint { /** @@ -533,7 +533,7 @@ declare namespace audio { /** * Interrupt force type. * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum InterruptForceType { /** @@ -551,20 +551,20 @@ declare namespace audio { /** * Interrupt events * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface InterruptEvent { /** * Interrupt event type, begin or end * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ eventType: InterruptType; /** * Interrupt force type, force or share * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ forceType: InterruptForceType; @@ -572,7 +572,7 @@ declare namespace audio { * Interrupt hint type. In force type, the audio state already changed, * but in share mode, only provide a hint for application to decide. * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ hintType: InterruptHint; } @@ -580,7 +580,7 @@ declare namespace audio { /** * Enumerates device change types. * @since 7 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum DeviceChangeType { /** @@ -599,7 +599,7 @@ declare namespace audio { /** * Enumerates audio scenes. * @since 8 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum AudioScene { /** @@ -629,213 +629,213 @@ declare namespace audio { /** * Manages audio volume and audio device information. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioManager { /** * Sets volume for a stream. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setVolume(audioType: AudioVolumeType, volume: number, callback: AsyncCallback): void; /** * Sets volume for a stream. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setVolume(audioType: AudioVolumeType, volume: number): Promise; /** * Obtains volume of a stream. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getVolume(audioType: AudioVolumeType, callback: AsyncCallback): void; /** * Obtains the volume of a stream. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getVolume(audioType: AudioVolumeType): Promise; /** * Obtains the minimum volume allowed for a stream. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getMinVolume(audioType: AudioVolumeType, callback: AsyncCallback): void; /** * Obtains the minimum volume allowed for a stream. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getMinVolume(audioType: AudioVolumeType): Promise; /** * Obtains the maximum volume allowed for a stream. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getMaxVolume(audioType: AudioVolumeType, callback: AsyncCallback): void; /** * Obtains the maximum volume allowed for a stream. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getMaxVolume(audioType: AudioVolumeType): Promise; /** * Obtains the audio devices of a specified flag. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getDevices(deviceFlag: DeviceFlag, callback: AsyncCallback): void; /** * Obtains the audio devices with a specified flag. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getDevices(deviceFlag: DeviceFlag): Promise; /** * Sets the stream to mute. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ mute(audioType: AudioVolumeType, mute: boolean, callback: AsyncCallback): void; /** * Sets the stream to mute. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ mute(audioType: AudioVolumeType, mute: boolean): Promise; /** * Checks whether the stream is muted. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isMute(audioType: AudioVolumeType, callback: AsyncCallback): void; /** * Checks whether the stream is muted. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isMute(audioType: AudioVolumeType): Promise; /** * Checks whether the stream is active. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isActive(audioType: AudioVolumeType, callback: AsyncCallback): void; /** * Checks whether the stream is active. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isActive(audioType: AudioVolumeType): Promise; /** * Mute/Unmutes the microphone. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setMicrophoneMute(mute: boolean, callback: AsyncCallback): void; /** * Mute/Unmutes the microphone. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setMicrophoneMute(mute: boolean): Promise; /** * Checks whether the microphone is muted. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isMicrophoneMute(callback: AsyncCallback): void; /** * Checks whether the microphone is muted. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isMicrophoneMute(): Promise; /** * Sets the ringer mode. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setRingerMode(mode: AudioRingMode, callback: AsyncCallback): void; /** * Sets the ringer mode. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setRingerMode(mode: AudioRingMode): Promise; /** * Gets the ringer mode. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getRingerMode(callback: AsyncCallback): void; /** * Gets the ringer mode. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getRingerMode(): Promise; /** * Sets the audio parameter. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setAudioParameter(key: string, value: string, callback: AsyncCallback): void; /** * Sets the audio parameter. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setAudioParameter(key: string, value: string): Promise; /** * Gets the audio parameter. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioParameter(key: string, callback: AsyncCallback): void; /** * Gets the audio parameter. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioParameter(key: string): Promise; /** * Activates the device. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setDeviceActive(deviceType: ActiveDeviceType, active: boolean, callback: AsyncCallback): void; /** * Activates the device. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setDeviceActive(deviceType: ActiveDeviceType, active: boolean): Promise; /** * Checks whether the device is active. This method uses an asynchronous callback to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isDeviceActive(deviceType: ActiveDeviceType, callback: AsyncCallback): void; /** * Checks whether the device is active. This method uses a promise to return the execution result. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ isDeviceActive(deviceType: ActiveDeviceType): Promise; /** * Subscribes volume change event callback, only for system * @return VolumeEvent callback. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio * @systemapi */ on(type: 'volumeChange', callback: Callback): void; /** * Monitors ringer mode change * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio * @systemapi */ on(type: 'ringerModeChange', callback: Callback): void; @@ -843,31 +843,31 @@ declare namespace audio { * Sets the audio scene mode to change audio strategy. * This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setAudioScene(scene: AudioScene, callback: AsyncCallback ): void; /** * Sets the audio scene mode to change audio strategy. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setAudioScene(scene: AudioScene): Promise; /** * Obtains the system audio scene mode. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioScene(callback: AsyncCallback ): void; /** * Obtains the system audio scene mode. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioScene(): Promise; /** * Monitors device changes * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ on(type: 'deviceChange', callback: Callback): void; } @@ -875,19 +875,19 @@ declare namespace audio { /** * Describes an audio device. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioDeviceDescriptor { /** * Audio device role * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ readonly deviceRole: DeviceRole; /** * Audio device type * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ readonly deviceType: DeviceType; } @@ -895,33 +895,33 @@ declare namespace audio { /** * A queue of AudioDeviceDescriptor, which is read-only. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ type AudioDeviceDescriptors = Array>; /** * Audio volume event * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio * @systemapi */ interface VolumeEvent { /** * volumeType of current stream * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ volumeType: AudioVolumeType; /** * volume level * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ volume: number; /** * updateUi show volume change in Ui * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ updateUi: boolean; } @@ -929,20 +929,20 @@ declare namespace audio { /** * Describes the device change type and device information. * @since 7 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface DeviceChangeAction { /** * Device change type. * @since 7 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ type: DeviceChangeType; /** * Device information. * @since 7 - * @SysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ deviceDescriptors: AudioDeviceDescriptors; } @@ -950,20 +950,20 @@ declare namespace audio { /** * Provides functions for applications for audio playback. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioRenderer { /** * Gets audio state. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ readonly state: AudioState; /** * Gets audio renderer info. * @return AudioRendererInfo value * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getRendererInfo(callback: AsyncCallback): void; getRendererInfo(): Promise; @@ -971,147 +971,190 @@ declare namespace audio { * Gets audio stream info. * @return AudioStreamInfo value * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getStreamInfo(callback: AsyncCallback): void; getStreamInfo(): Promise; /** * Starts audio rendering. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ start(callback: AsyncCallback): void; /** * Starts audio rendering. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ start(): Promise; /** * Render audio data. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ write(buffer: ArrayBuffer, callback: AsyncCallback): void; /** * Render audio data. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ write(buffer: ArrayBuffer): Promise; /** * Obtains the current timestamp. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioTime(callback: AsyncCallback): void; /** * Obtains the current timestamp. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioTime(): Promise; /** * Drain renderer buffer. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ drain(callback: AsyncCallback): void; /** * Drain renderer buffer. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ drain(): Promise; /** * Pauses audio rendering. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ pause(callback: AsyncCallback): void; /** * Pauses audio rendering. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ pause(): Promise; /** * Stops audio rendering. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ stop(callback: AsyncCallback): void; /** * Stops audio rendering. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ stop(): Promise; /** * Releases resources. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ release(callback: AsyncCallback): void; /** * Releases resources. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ release(): Promise; /** * Obtains a reasonable minimum buffer size for renderer, however, the renderer can * accept other read sizes as well. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getBufferSize(callback: AsyncCallback): void; /** * Obtains a reasonable minimum buffer size for renderer, however, the renderer can * accept other read sizes as well. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getBufferSize(): Promise; /** * Set the render rate. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setRenderRate(rate: AudioRendererRate, callback: AsyncCallback): void; /** * Set the render rate. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ setRenderRate(rate: AudioRendererRate): Promise; /** * Obtains the current render rate. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getRenderRate(callback: AsyncCallback): void; /** * Obtains the current render rate. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getRenderRate(): Promise; + /** + * Subscribes for audio interrupt event callback. + * @param type Event type. + * @return InterruptEvent callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + */ + on(type: 'interrupt', callback: Callback): void; /** * Subscribes mark reach event callback. * @param type Event type. * @param frame Mark reach frame count. * @return Mark reach event callback. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio + * @initial */ - on(type: 'interrupt', callback: Callback): void; + on(type: "markReach", frame: number, callback: (position: number) => {}): void; + /** + * Unsubscribes mark reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + off(type: "markReach"): void; + /** + * Subscribes period reach event callback. + * @param type Event type. + * @param frame Period reach frame count. + * @return Period reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + on(type: "periodReach", frame: number, callback: (position: number) => {}): void; + /** + * Unsubscribes period reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + off(type: "periodReach"): void; + /** + * Subscribes audio state change event callback. + * @param type Event type. + * @param callback Callback used to listen for the audio state change event + * @return AudioState + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + on(type: "stateChange", callback: Callback): void; } /** * Enum for source type. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ enum SourceType { /** @@ -1129,19 +1172,19 @@ declare namespace audio { /** * Interface for audio capturer info. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioCapturerInfo { /** * Audio source type * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ source: SourceType; /** * Audio capturer flags * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ capturerFlags: number; } @@ -1149,19 +1192,19 @@ declare namespace audio { /** * Interface for audio capturer options. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioCapturerOptions { /** * Audio stream info. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ streamInfo: AudioStreamInfo; /** * Audio capturer info. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ capturerInfo: AudioCapturerInfo; } @@ -1169,20 +1212,20 @@ declare namespace audio { /** * Provides functions for applications to manage audio capturing. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ interface AudioCapturer { /** * Gets capture state. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ readonly state: AudioState; /** * Gets audio capturer info. * @return AudioCapturerInfo value * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getCapturerInfo(callback: AsyncCallback): void; getCapturerInfo(): Promise; @@ -1191,7 +1234,7 @@ declare namespace audio { * Gets audio stream info. * @return AudioStreamInfo value * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getStreamInfo(callback: AsyncCallback): void; getStreamInfo(): Promise; @@ -1199,65 +1242,65 @@ declare namespace audio { /** * Starts audio capturing. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ start(callback: AsyncCallback): void; /** * Starts audio capturing. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ start(): Promise; /** * Capture audio data. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ read(size: number, isBlockingRead: boolean, callback: AsyncCallback): void; /** * Capture audio data. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ read(size: number, isBlockingRead: boolean): Promise; /** * Obtains the current timestamp. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioTime(callback: AsyncCallback): void; /** * Obtains the current timestamp. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getAudioTime(): Promise; /** * Stops audio capturing. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ stop(callback: AsyncCallback): void; /** * Stops audio capturing. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ stop(): Promise; /** * Releases a capture resources. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ release(callback: AsyncCallback): void; /** * Releases a capture resources. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ release(): Promise; @@ -1265,17 +1308,64 @@ declare namespace audio { * Obtains a reasonable minimum buffer size for capturer, however, the capturer can * accept other read sizes as well. This method uses an asynchronous callback to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getBufferSize(callback: AsyncCallback): void; /** * Obtains a reasonable minimum buffer size for capturer, however, the capturer can * accept other read sizes as well. This method uses a promise to return the execution result. * @since 8 - * @sysCap SystemCapability.Multimedia.Audio + * @syscap SystemCapability.Multimedia.Audio */ getBufferSize(): Promise; + + /** + * Subscribes mark reach event callback. + * @param type Event type. + * @param frame Mark reach frame count. + * @return Mark reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + on(type: "markReach", frame: number, callback: (position: number) => {}): void; + /** + * Unsubscribes mark reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + off(type: "markReach"): void; + + /** + * Subscribes period reach event callback. + * @param type Event type. + * @param frame Period reach frame count. + * @return Period reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + on(type: "periodReach", frame: number, callback: (position: number) => {}): void; + /** + * Unsubscribes period reach event callback. + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + off(type: "periodReach"): void; + + /** + * Subscribes audio state change event callback. + * @param type Event type. + * @param callback Callback used to listen for the audio state change event + * @return AudioState + * @since 8 + * @syscap SystemCapability.Multimedia.Audio + * @initial + */ + on(type: "stateChange", callback: Callback): void; } } -export default audio; \ No newline at end of file +export default audio;