///
export interface PolarisResponse {
code: number;
headers: any;
status: number;
data: any;
}
export declare enum FileTypes {
VIDEO = "video",
IMAGE = "image",
AUDIO = "audio",
FONT = "font",
OBJECT = "object"
}
export interface UploadParams {
SpaceName: string;
FilePath: string;
FileSize?: number;
SessionKey?: string;
FileType?: string;
CallbackArgs?: string;
FileName?: string;
FileExtension?: string;
maxConcurrency?: number;
Content?: NodeJS.ReadableStream;
}
/**
* 分片信息
*/
export interface VodCheckpointPart {
part_number: number;
part_size: number;
offset: number;
crc32: string;
is_completed: boolean;
}
/**
* Checkpoint 记录结构
*/
export interface VodCheckpointRecord {
space_name: string;
file_path?: string;
file_name?: string;
file_extension?: string;
file_type: string;
upload_id: string;
session_key: string;
host: string;
oid: string;
auth: string;
part_size: number;
total_size: number;
file_info?: {
last_modified: number;
file_size: number;
};
parts_info?: VodCheckpointPart[];
server_part_list?: Array<{
partNumber: number;
crc32: string;
etag: string;
}>;
}
/**
* 上传事件类型
*/
export declare enum VodUploadEventType {
InitUploadPartSucceed = 1,
InitUploadPartFailed = 2,
UploadPartSucceed = 3,
UploadPartFailed = 4,
UploadPartAborted = 5,
UploadMergePartSucceed = 6,
UploadMergePartFailed = 7
}
/**
* 上传事件
*/
export interface VodUploadEvent {
type: VodUploadEventType;
err?: Error;
spaceName: string;
uploadId: string;
checkpointFile?: string;
partInfo?: {
partNumber: number;
partSize: number;
offset: number;
};
}
export interface VodUploadMediaRequest {
SpaceName: string;
FilePath?: string;
CallbackArgs?: string;
Functions?: string;
FileName?: string;
FileExtension?: string;
maxConcurrency?: number;
FileSize?: number;
Content?: NodeJS.ReadableStream;
/**
* Checkpoint 文件路径或对象
* - 传入字符串:checkpoint 文件路径
* - 传入对象:checkpoint 记录对象
* - 不传:不使用断点续传
*/
checkpoint?: string | VodCheckpointRecord;
/**
* 自定义分片大小(字节)
* - 默认:20MB
* - 最小:5MB(除最后一片)
* - 最大:根据文件大小自动计算
*/
partSize?: number;
/**
* 上传进度回调(推荐)
* @param percent 上传进度(0-1)
* @param checkpoint checkpoint 记录对象
*/
onProgress?: (percent: number, checkpoint: VodCheckpointRecord) => void;
/**
* 取消令牌(axios CancelToken)
*/
cancelToken?: any;
/**
* 上传事件回调
*/
onUploadEvent?: (event: VodUploadEvent) => void;
}
export interface VodUploadMaterialRequest extends VodUploadMediaRequest {
FileType?: FileTypes;
}
/**
* 获取上传凭证请求
*/
export interface VodApplyUploadInfoRequest {
SpaceName?: string;
SessionKey?: string;
FileSize?: number;
FileType?: string;
FileName?: string;
FileExtension?: string;
}
interface VodStoreInfo {
StoreUri?: string;
Auth?: string;
}
interface VodHeaderPair {
Key?: string;
Value?: string;
}
interface VodUploadAddress {
StoreInfos?: VodStoreInfo[];
UploadHosts?: string[];
UploadHeader?: VodHeaderPair[];
SessionKey?: string;
}
interface VodApplyUploadInfoData {
UploadAddress?: VodUploadAddress;
}
/**
* 获取上传凭证响应
*/
export interface VodApplyUploadInfoResult {
Data?: VodApplyUploadInfoData;
}
/**
* 确认上传请求
*/
export interface VodCommitUploadInfoRequest {
SpaceName?: string;
SessionKey?: string;
CallbackArgs?: string;
Functions?: string;
}
interface VodSourceInfo {
FileId?: string;
Md5?: string;
FileType?: string;
Codec?: string;
Height?: number;
Width?: number;
Format?: string;
Duration?: number;
Size?: number;
StoreUri?: string;
Definition?: string;
Bitrate?: number;
Fps?: number;
CreateTime?: string;
}
interface VodCommitUploadInfoData {
Vid?: string;
PosterUri?: string;
SourceInfo?: VodSourceInfo;
Mid?: string;
}
/**
* 确认上传响应
*/
export interface VodCommitUploadInfoResult {
Data?: VodCommitUploadInfoData;
}
interface VodUrlUploadURLSet {
SourceUrl?: string;
CallbackArgs?: string;
Md5?: string;
TemplateId?: string;
Title?: string;
Description?: string;
Tags?: string;
Category?: string;
FileName?: string;
FileExtension?: string;
}
/**
* URL批量拉取上传请求
*/
export interface VodUploadMediaByUrlRequest {
SpaceName?: string;
URLSets?: VodUrlUploadURLSet[];
}
interface ValuePair {
JobId?: string;
SourceUrl?: string;
}
/**
* URL批量拉取上传响应
*/
export interface VodUploadMediaByUrlResult {
Data?: ValuePair[];
}
/**
* 查询URL上传任务状态请求
*/
export interface VodQueryUploadTaskInfoRequest {
JobIds?: string;
}
interface VodURLSet {
RequestId?: string;
JobId?: string;
SourceUrl?: string;
State?: string;
Vid?: string;
SpaceName?: string;
AccountId?: string;
SourceInfo?: VodSourceInfo;
}
interface VodQueryUploadResult {
MediaInfoList?: VodURLSet[];
NotExistJobIds?: string[];
}
/**
* 查询URL上传任务状态响应
*/
export interface VodQueryUploadTaskInfoResult {
Data?: VodQueryUploadResult;
}
/**
* 查询媒资信息请求
*/
export interface VodGetMediaInfosRequest {
Vids?: string;
}
interface VodMediaBasicInfo {
SpaceName?: string;
Vid?: string;
Title?: string;
Description?: string;
PosterUri?: string;
PublishStatus?: string;
Tags?: string[];
CreateTime?: string;
}
interface VodVideoStreamMeta {
Codec?: string;
Height?: number;
Width?: number;
Duration?: number;
Definition?: string;
Bitrate?: number;
Fps?: number;
}
interface VodAudioStreamMeta {
Codec?: string;
Duration?: number;
SampleRate?: number;
Bitrate?: number;
}
interface VodTranscodeInfo {
FileId?: string;
Md5?: string;
FileType?: string;
LogoType?: string;
Encrypt?: boolean;
Format?: string;
Duration?: number;
Size?: number;
StoreUri?: string;
VideoStreamMeta?: VodVideoStreamMeta;
AudioStreamMeta?: VodAudioStreamMeta;
CreateTime?: string;
}
interface VodMediaInfo {
BasicInfo?: VodMediaBasicInfo;
SourceInfo?: VodSourceInfo;
TranscodeInfos?: VodTranscodeInfo[];
}
/**
* 查询媒资信息响应
*/
export interface VodGetMediaInfosResult {
MediaInfoList?: VodMediaInfo[];
NotExistVids?: string[];
}
/**
* 修改媒资信息请求
*/
export interface VodUpdateMediaInfoRequest {
Vid?: string;
PosterUri?: string;
Title?: string;
Description?: string;
Tags?: string;
}
/**
* 修改媒资发布状态请求
*/
export interface VodUpdateMediaPublishStatusRequest {
Vid?: string;
Status?: string;
}
/**
* 获取封面候选结果请求
*/
export interface VodGetRecommendedPosterRequest {
Vids?: string;
}
interface VodStoreUriGroup {
Vid?: string;
StoreUris?: string[];
}
/**
* 获取封面候选结果响应
*/
export interface VodGetRecommendedPosterResult {
StoreUriGroups?: VodStoreUriGroup[];
NotExistVids?: string[];
}
/**
* 批量删除完整媒资请求
*/
export interface VodDeleteMediaRequest {
Vids?: string;
CallbackArgs?: string;
}
/**
* 批量删除完整媒资响应
*/
export interface VodDeleteMediaResult {
NotExistVids?: string[];
}
/**
* 删除媒体文件请求
*/
export interface VodDeleteTranscodesRequest {
Vid?: string;
FileIds?: string;
CallbackArgs?: string;
}
/**
* 删除媒体文件响应
*/
export interface VodDeleteTranscodesResult {
NotExistFileIds?: string[];
}
/**
* 获取音视频列表请求
*/
export interface VodGetMediaListRequest {
SpaceName?: string;
Vid?: string;
Status?: string;
Order?: string;
Tags?: string;
StartTime?: string;
EndTime?: string;
Offset?: string;
PageSize?: string;
}
/**
* 获取音视频列表响应
*/
export interface VodGetMediaListResult {
SpaceName?: string;
MediaInfoList?: VodMediaInfo[];
TotalCount?: number;
Offset?: number;
PageSize?: number;
}
/**
* 获取字幕文件请求
*/
export interface VodGetSubtitleInfoListRequest {
Vid?: string;
FileIds?: string;
Languages?: string;
Formats?: string;
LanguageIds?: string;
SubtitleIds?: string;
Status?: string;
Title?: string;
Tag?: string;
Offset?: string;
PageSize?: string;
Ssl?: string;
}
interface VodSubtitleInfoCommon {
Vid?: string;
FileId?: string;
Language?: string;
LanguageId?: number;
Format?: string;
SubtitleId?: string;
Title?: string;
Tag?: string;
Status?: string;
Source?: string;
StoreUri?: string;
SubtitleUrl?: string;
CreateTime?: string;
Version?: string;
}
interface VodFileSubtitleInfo {
FileId?: string;
SubtitleInfoList?: VodSubtitleInfoCommon[];
}
/**
* 获取字幕文件响应
*/
export interface VodGetSubtitleInfoListResult {
Vid?: string;
FileSubtitleInfoList?: VodFileSubtitleInfo[];
NotExistFileIds?: string[];
TotalCount?: number;
Offset?: number;
PageSize?: number;
}
/**
* 修改字幕发布状态请求
*/
export interface VodUpdateSubtitleStatusRequest {
Vid?: string;
FileIds?: string;
Languages?: string;
Formats?: string;
Status?: string;
}
/**
* 修改字幕发布状态响应
*/
export interface VodUpdateSubtitleStatusResult {
NotExistFileIds?: string[];
}
/**
* 修改字幕信息请求
*/
export interface VodUpdateSubtitleInfoRequest {
Vid?: string;
FileId?: string;
Language?: string;
Format?: string;
Title?: string;
Tag?: string;
}
interface Clip {
StartTime?: number;
EndTime?: number;
}
interface TranscodeAudioOverride {
TemplateId?: string[];
Clip?: Clip;
}
interface LogoOverride {
TemplateId?: string;
Vars?: string;
}
interface TranscodeVideoOverride {
TemplateId?: string[];
Clip?: Clip;
}
interface SnapshotOverride {
TemplateId?: string[];
OffsetTime?: number;
OffsetTimeList?: number[];
}
interface OverrideParams {
Logo?: LogoOverride[];
TranscodeVideo?: TranscodeVideoOverride[];
TranscodeAudio?: TranscodeAudioOverride[];
Snapshot?: SnapshotOverride[];
}
interface WorkflowParams {
OverrideParams?: OverrideParams;
Condition?: boolean;
}
/**
* 触发工作流请求
*/
export interface VodStartWorkflowRequest {
Vid?: string;
TemplateId?: string;
Input?: WorkflowParams;
Priority?: number;
CallbackArgs?: string;
}
/**
* 触发工作流响应
*/
export interface VodStartWorkflowResult {
RunId?: string;
Etc?: number;
}
/**
* 获取播放信息请求
*/
export interface VodGetPlayInfoRequest {
Vid?: string;
Format?: string;
Codec?: string;
Definition?: string;
FileType?: string;
LogoType?: string;
Base64?: string;
Ssl?: string;
NeedThumbs?: string;
NeedBarrageMask?: string;
CdnType?: string;
UnionInfo?: string;
HDRDefinition?: string;
}
interface VodAdaptiveInfo {
MainPlayUrl: string;
BackupPlayUrl: string;
AdaptiveType: string;
}
interface VodPlayInfo {
FileId: string;
Md5: string;
FileType: string;
Format: string;
Codec: string;
Definition: string;
MainPlayUrl: string;
BackupPlayUrl: string;
Bitrate: number;
Width: number;
Height: number;
Size: number;
CheckInfo: string;
IndexRange: string;
InitRange: string;
PlayAuth: string;
PlayAuthId: string;
LogoType: string;
Quality: string;
BarrageMaskOffset: string;
}
interface VodThumbInfo {
CaptureNum: number;
StoreUrls: Array;
CellWidth: number;
CellHeight: number;
ImgXLen: number;
ImgYLen: number;
Interval: number;
Format: string;
}
interface VodSubtitleInfo {
Format: string;
SubtitleId: string;
LanguageId: number;
Version: string;
}
/**
* 获取播放信息响应
*/
export interface VodGetPlayInfoResult {
Version: number;
Vid: string;
Status: number;
PosterUrl: string;
Duration: number;
FileType: string;
EnableAdaptive: boolean;
TotalCount: number;
AdaptiveInfo: VodAdaptiveInfo;
PlayInfoList: Array;
ThumbInfoList: Array;
SubtitleInfoList: Array;
BarrageMaskUrl: string;
}
/**
* 签发私有 DRM 加密 AuthToken请求
*/
export interface VodGetPrivateDrmPlayAuthRequest {
DrmType?: string;
Vid?: string;
PlayAuthIds?: string;
UnionInfo?: string;
}
/**
* 签发私有 DRM 加密 AuthToken 响应
*/
interface VodPrivateDrmPlayAuthInfo {
PlayAuthId?: string;
PlayAuthContent?: string;
}
export interface VodGetPrivateDrmPlayAuthResult {
PlayAuthInfoList?: VodPrivateDrmPlayAuthInfo[];
}
export {};