zego-express-engine-webrtc
Version:
zego webrtc express sdk
155 lines (154 loc) • 6.2 kB
TypeScript
import { ZegoAudioEffectPlayOptions } from "./ZegoExpressEntity.web";
import ZegoLocalStream from "./ZegoLocalStream.web";
/**
* 音效播放器
*
* 详情描述: 当需要播放简短的声音效果,比如鼓掌,欢呼声等时,可以使用音效播放器来实现。
*
*/
export declare class ZegoAudioEffectPlayer {
private _zgp_zegoWebRTC;
private _zgp_stream;
constructor(_zgp_zegoWebRTC: any, _zgp_stream: MediaStream | ZegoLocalStream);
/**
* 开始播放音效。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:开始播放指定音效 ID 上的音效。音效 ID 可以是 [loadAudioEffect] 预加载好的音效或者通过提供参数 [option.path] 指定在线音频资源来加载和播放。
*
* Note: 业务场景:当需要播放简短的声音效果,比如鼓掌,欢呼声等时,可以使用该接口实现。
*
* Note: 调用时机:在 [createAudioEffectPlayer] 之后可调用。
*
* Note: 相关接口:调用停止播放音效接口 [stop] 或者音效播放结束会触发 [onEnd] 回调。
*
* Note: 注意事项:
* 1. 音效 ID 的音效没有播放结束即触发 [onEnd] 回调前,不能重复播放同一个音效 ID。
* 2. 暂停音效接口 [pause] 不会结束音效播放,不会触发 [onEnd] 回调。
*
* @param audioEffectID 音效资源的 ID。
* @param options 音效播放的选项设置。
* @param onStart 音效播放开始的回调方法。
* @param onEnd 音效播放结束的回调方法。
*/
start(audioEffectID: string, options?: ZegoAudioEffectPlayOptions, onStart?: Function, onEnd?: Function): void;
/**
* 结束播放音效。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:结束播放音效。
*
* Note: 调用时机:指定的 [audioEffectID] 已经 [start] 。
*
* Note: 相关接口:结束播放音效会触发开始播放音效接口 [start] 的 [onEnd] 回调方法。
*
* Note: 注意事项: 无。
*
* @param audioEffectID 音效资源的 ID , 不传参则停止所有可停止的音效。
*
* @return 接口是否调用成功。
*/
stop(audioEffectID?: string): boolean;
/**
* 暂停播放音效。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述: 暂停播放指定的音效 [audioEffectID]。
*
* Note: 调用时机:指定的 [audioEffectID] 已经 [start]。
*
* Note: 相关接口:开始播放音效接口 [start] 、恢复播放接口 [resume]。
*
* @param audioEffectID 音效资源的 ID,不传参数则暂停所有可暂停的音效。
*
* @return 接口是否调用成功。
*/
pause(audioEffectID?: string): boolean;
/**
* 恢复播放音效。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述: 恢复播放指定的音效 [audioEffectID]。
*
* Note: 调用时机:指定的 [audioEffectID] 处于 [pause] 状态。
*
* Note: 相关接口:开始播放音效接口 [start] 、恢复播放接口 [pause]。
*
* @param audioEffectID 音效资源的 ID,不传参数则恢复所有可恢复的音效。
*
* @return 接口是否调用成功。
*/
resume(audioEffectID?: string): boolean;
/**
* 设置单个音效的播放音量,会同时设置本地播放音量和推流音量。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:设置单个音效的播放音量,会同时设置本地播放音量和推流音量。
*
* Note: 业务场景:调节播放音效的声音大小。
*
* Note: 调用时机:在 [createAudioEffectPlayer] 之后可调用。
*
* @param audioEffectID 音效资源的 ID。
* @param volume 音量值,取值范围:范围为 [0,100], 默认值:100。
*
* @return 接口是否调用成功。
*/
setVolume(audioEffectID: string, volume: number, delay?: number): boolean;
/**
* 获取指定音效资源的总时长。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:获取指定音效资源的总长度,单位为毫秒。
*
* Note: 调用时机:必须在加载资源完成后才能调用,否则返回值为 0。
*
* Note: 相关接口:开始播放音效接口 [start] 、加载音效接口 [loadAudioEffect]。
*
* @param audioEffectID 音效资源的 ID。
*
* @return 音频总时长,单位为毫秒。
*/
getTotalDuration(audioEffectID: string): number;
/**
* 获取当前播放进度。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:获取指定音效的当前播放进度。单位为毫秒。
*
* Note: 调用时机:音效需要已经通过 [start] 播放,否则返回值为 0。
*
* Note: 相关接口:开始播放音效接口 [start] 。
*
* @param audioEffectID 音效资源的 ID。
*
* @return 音效播放进度,单位为毫秒。
*/
getCurrentProgress(audioEffectID: string): number;
/**
* 设置播放进度。
*
* Note: 支持版本:2.15.0 及以上
*
* Note: 详情描述:设置指定音效的播放进度,单位为毫秒。
*
* Note: 业务场景:加载一个拥有多个音效的音频资源,通过该接口来播放对应位置的音效。
*
* Note: 调用时机:指定的 [audioEffectID] 已经 [start],且还没有播完。
*
* Note: 相关接口:开始播放音效接口 [start] 。
*
* @param audioEffectID 音效资源的 ID。
* @param time 指定的播放进度的时长。取值范围 [0, 音效总时长] 。
*
* @return 标识是否调用成功。
*/
seekTo(audioEffectID: string, time: number): boolean;
}