client.projects.syncLyrics(...) 可在任何项目上重新运行同步,以应用更新后的歌词、不同的模型或新的语言。
client.projects.syncLyrics(projectId, body, options?)
启动一次新的歌词同步操作。
歌词来源
在请求体中传入一个lyricsSource 对象:
- transcribe
- align
让模型从音频中转写歌词。
同步模型
对齐模型(在你有准确歌词时与align 一起使用):
audioshake-alignmentmusicai-alignmentmusicai-alignment-subwordwav2vec2
transcribe 一起使用):
audioshake-transcriptionelevenlabs-transcriptionmusicai-transcriptionwhisper
端到端示例
接下来做什么
发现支持的模型
client.capabilities.get() 会返回已配置的模型支持情况以及已认证账号的使用资格。每个模型都会描述其操作、inputAudio、支持的 workflows、语言策略、所需功能以及 suppliedTextHandling。可用性不代表提供方的在线时长保证。
转写支持可选的 lyrics 作为参考文本。能力响应会区分提供方关键术语与转写后纠错。参考文本不保证输出完全一致。若需要严格使用提供的文本,请选择符合资格的对齐模型。
编辑现有时间轴
使用client.projects.alignments.list(projectId) 和 .get(projectId, alignmentId) 读取带类型的时间轴资源。.update(projectId, alignmentId, body) 可在不启动同步任务、也不占用处理额度冻结的情况下替换时间轴。
更新请求体需要完整的 alignment 和 expectedRevision。添加 select: true 与 expectedSelectionRevision 可原子化地选中保存的对齐结果。.select(projectId, alignmentId, { expectedRevision, expectedSelectionRevision }) 用于选中现有时间轴。两个 revision 都用于防止并发编辑。revision 过期会返回 HTTP 409。
编辑时请保留条目 ID、文本、索引、歌手与翻译。时间以绝对秒为单位。每个结束时间必须大于开始时间。无效、为负或超出音频时长的时间会被拒绝。支持合法的重叠与对唱时间轴。
完整的时间轴编辑与冲突处理请参见 自动化歌词视频。