/** * @file src/vod/Media.ts * @author leeight */ import BceBaseClient from '../bce_base_client'; import Statistic from './Statistic'; import type { BceResponse } from '../types/common'; import type { MediaInfo, ApplyMediaResponse, ProcessMediaOptions, ListMediaOptions, ListMediaResponse, GetDownloadUrlResponse, TranscodingMode, VodClientConfig } from './types'; /** * 音视频媒资接口 * https://cloud.baidu.com/doc/VOD/API.html#.E9.9F.B3.E8.A7.86.E9.A2.91.E5.AA.92.E8.B5.84.E6.8E.A5.E5.8F.A3 */ export default class Media extends BceBaseClient { private _mediaId; private _sourceBucket; private _sourceKey; private _host; /** * 构造函数 * @param config VOD 客户端配置 */ constructor(config: VodClientConfig); /** * 设置媒资ID * @param mediaId 媒资ID * @returns 当前实例 */ setMediaId(mediaId: string): this; /** * 构建请求URL * @param extraPaths 额外路径段 * @returns 构建的URL */ private _buildUrl; /** * 申请媒资 * * @param mode 提供"no_transcoding"说明要申请一个不转码的媒资;提供NULL/""/其他值说明申请一个普通的转码媒资 * @returns Promise 解析为申请响应 */ apply(mode?: TranscodingMode): Promise>; /** * 处理媒资 * * @param title 媒资标题 * @param options 额外的媒资属性 * @returns Promise 解析为处理响应 */ process(title: string, options?: ProcessMediaOptions): Promise>; /** * 停用指定媒资,仅对 PUBLISHED 状态的媒资有效 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为停用响应 */ disable(mediaId?: string): Promise>; /** * 恢复指定媒资,仅对 DISABLED 状态的媒资有效 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为恢复响应 */ resume(mediaId?: string): Promise>; /** * 删除指定媒资,对 RUNNING 状态的媒资无效 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为删除响应 */ remove(mediaId?: string): Promise>; /** * 查询指定媒资 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为媒资信息 */ get(mediaId?: string): Promise>; /** * 查询指定媒资的部分信息 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @param scope 查询范围,目前仅支持thumbnail * @param taskId 不同scope下的某个任务标识,目前当scope=thumbnail时,taskId分别可取default、second、wonderful * @returns Promise 解析为部分媒资信息 */ getPartInfo(mediaId?: string, scope?: string, taskId?: string): Promise>; /** * 获取音视频媒资的源文件下载地址 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @param expiredInSeconds 过期时间,单位(s),默认1天 * @returns Promise 解析为下载地址信息 */ getDownloadUrl(mediaId?: string, expiredInSeconds?: number): Promise>; /** * 查询媒资列表 * * @param options 查询选项 * @returns Promise 解析为媒资列表 */ list(options?: ListMediaOptions): Promise>; /** * 更新媒资信息 * * @param title 新标题 * @param description 新描述 * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为更新响应 */ update(title: string, description?: string, mediaId?: string): Promise>; /** * 查询媒资处理进度 * * @param mediaId 媒资ID,可选,默认使用当前实例的媒资ID * @returns Promise 解析为处理进度信息 */ getProgress(mediaId?: string): Promise>; /** * 获取统计信息 * * @returns 统计实例 */ getStatistic(): Statistic; } //# sourceMappingURL=Media.d.ts.map