import Taro from '../../index' declare module '../../index' { /** 创建音视频处理容器,最终可将容器中的轨道合成一个视频 * * > 可通过 [Taro.createMediaContainer](./createMediaContainer) 创建 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.html */ interface MediaContainer { /** 将音频或视频轨道添加到容器 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.addTrack.html */ addTrack( /** 要添加的音频或视频轨道 */ track: MediaTrack, ): void /** 将容器销毁,释放资源 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.destroy.html */ destroy(): void /** 将容器内的轨道合并并导出视频文件 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.export.html */ export(): void /** 将传入的视频源分离轨道。不会自动将轨道添加到待合成的容器里。 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.extractDataSource.html */ extractDataSource(option: MediaContainer.ExtractDataSourceOption): void /** 将音频或视频轨道从容器中移除 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaContainer.removeTrack.html */ removeTrack( /** 要移除的音频或视频轨道 */ track: MediaTrack, ): void } namespace MediaContainer { interface ExtractDataSourceOption { /** 视频源地址,只支持本地文件 */ source: string } } /** 可通过 [MediaContainer.extractDataSource](/docs/apis/media/video-processing/MediaContainer#extractdatasource) 返回。 * [MediaTrack](/docs/apis/media/video-processing/MediaTrack) 音频或视频轨道,可以对轨道进行一些操作 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/MediaTrack.html */ interface MediaTrack { /** 轨道类型 * @readonly */ kind: keyof MediaTrack.Kind /** 轨道长度 * @readonly */ duration: number /** 音量,音频轨道下有效,可写 */ volume: number } namespace MediaTrack { interface Kind { /** 音频轨道 */ audio /** 视频轨道 */ video } } interface TaroStatic { /** 创建音视频处理容器,最终可将容器中的轨道合成一个视频 * @supported weapp * @see https://developers.weixin.qq.com/miniprogram/dev/api/media/video-processing/wx.createMediaContainer.html */ createMediaContainer(): MediaContainer } }