创建项目
大多数情况下,使用client.projects.create() ——它会为你处理上传。
Source 类型
- path
- bytes
- url
从磁盘读取文件。
其他字段
string
项目标题。默认为源文件名。
karaoke | lyric-video
工作流。默认为
karaoke。lyric-video 使用原始音频,不进行音轨分离。SplitModel
用于 karaoke 的音轨分离模型。默认为
mdx23c。在 lyric-video 中会被拒绝。参见 Split model
reference。string
在创建时应用一个可复用的预设。
LyricsSource
配置歌词同步。见下文。
Lyrics sources
client.projects.create(input, options?)
当你已经有上传后的 inputFileId 时,client.projects.create() 也接受更底层的 inputFile source。
client.projects.quote(input, options?)
在不创建项目的情况下,预估创建项目所需的 credits。
client.projects.quote(...) 接受与 client.projects.create(...) 相同的 source 形式,包括 URL 的 maxVideoQuality。如果你已经知道媒体时长,并且不想为了 quote 而上传文件,请传入更底层的 REST 形状:
client.uploads.create(body, options?)
分配一个上传槽位并获取签名 URL。
client.uploads.upload(uploadUrl, body, options?)
使用 PUT 将文件字节上传到签名 URL。
FetchBody
required
任何与
fetch 兼容的 body:Blob、File、ArrayBuffer、Uint8Array、ReadableStream 或 string。UPLOAD_FAILED 的 YoukaRequestError。
client.projects.get(projectId, options?)
获取完整的项目状态,包括 stems、歌词和导出内容。
client.projects.update(projectId, body, options?)
更新项目元数据(patch)。
title 或 artists 之一。
client.projects.list(options?)
列出已认证账号所拥有的所有项目。
getProject 更精简)。
client.projects.delete(projectId, options?)
删除项目及其关联的所有 stems、歌词和导出内容。
下一步
- Stems — 重新运行音轨分离
- Lyrics sync — 重新同步歌词
- Exports — 渲染成品视频
- Tasks — 使用
client.projects.wait等待项目操作完成
创建 Lyric-video 与模型发现
kind 与歌词处理选项也适用于 projects.quote。Lyric-video 的 quote 不收取分离 credits。Quote 与 create 会验证相同的模型、语言、账号与 source 要求。Quote 不会预留 credits 或容量。
使用 lyricsSource: null 跳过歌词处理。转录中的参考文本仅用于引导,可能与结果不同。需要人声分离的模型无法处理不分离的 lyric video。
关于 capabilities、精确时间轴更新与目录检查点,请参阅 Automate lyric videos。