Volcengine AI MediaKit
前置条件
- - Python:确认
python --version ≥ 3.6 - 环境变量(必需,也可通过工作目录下的
.env 文件配置,脚本会自动加载):
-
VOLCENGINE_ACCESS_KEY — 火山引擎 Access Key
-
VOLCENGINE_SECRET_KEY — 火山引擎 Secret Key
-
VOD_SPACE_NAME — VOD 空间名称
- - 依赖:脚本依赖
python-dotenv requests INLINECODE7
参数传入方式
所有脚本支持两种 JSON 参数传入方式:
- 1. 内联 JSON(适合简单参数): INLINECODE8
- 文件引用(推荐,避免 shell 转义问题): INLINECODE9
INLINECODE10 前缀表示从文件读取 JSON 内容,文件路径相对于当前工作目录。
结果交付规则
- - 提交异步任务成功后会返回异步任务id,字段为
VCCreativeId 或 TaskId,在给用户交付最终产物时,必须包含异步任务id - 在展示最终产物链接时,禁止随意修改链接内容
- 优先将产物链接提供给用户
注意
当用户询问当前 Skill 有什么能力时,直接返回
references/00-detail.md 的内容,并停止后续流程,等待用户输入。
工作流程
1) 识别输入视频类型(必要时先上传拿 vid://...)
后续所有处理脚本优先使用 VOD 侧资源引用:
- - Vid:
vid://vxxxx(或部分脚本接受裸 vxxxx 并自动补 vid://) - DirectUrl / FileName:
directurl://<vod_file_name>(媒体类任务用 DirectUrl 时会要求 FileName + SpaceName)
当用户提供的是以下输入之一,需要先执行上传逻辑,拿到 Vid 后再继续:
- - 本地文件路径:如 INLINECODE22
- INLINECODE23 链接:如
https://example.com/a.mp4(会走 URL 拉取上传,并轮询上传结果)
统一用 scripts/upload_media.py:
CODEBLOCK0
脚本输出中 Source 字段即 vid://...,可直接作为后续处理输入。
安全限制:本地文件上传仅允许 workspace/、userdata/ 和 /tmp 目录下的文件。
2) 识别用户意图 → 选择对应处理脚本
根据用户需求,按以下决策树选择脚本:
| 用户意图 | 脚本 |
|---|
| 多个视频/音频合成一个(顺序拼接) | INLINECODE28 |
| 截取视频/音频的某个时间片段 |
clipping |
| 加速/慢放/变速 |
speedup |
| 镜像/上下翻转/左右翻转 |
flip |
| 多张图片串联生成视频 |
image_to_video |
| 替换/叠加视频的背景音乐 |
compile |
| 只要视频里的音频轨 |
extract_audio |
| 多条音频同时叠加播放(混音) |
mix_audios |
| 分离人声和伴奏/背景音 |
voice_separation |
| 去除环境噪音/电流杂音/风噪 |
noise_reduction |
| 模糊/低画质视频修复(压缩伪影/噪点/划痕) |
quality_enhance |
| 低分辨率视频提升(如 720P→1080P) |
super_resolution |
| 低帧率视频插帧提升流畅度(如 30fps→60fps) |
interlacing |
| 语音识别/ASR/提取视频中的文字对白 |
asr_speech_to_text |
| OCR 文字提取/识别视频中的屏幕文字 |
ocr_text_extract |
| 擦除视频硬字幕 |
subtitle_removal |
| 给视频添加/嵌入字幕(烧录字幕) |
add_subtitle |
| 视频场景分割/智能切片 |
intelligent_slicing |
| 人像抠图/人像分割 |
portrait_matting |
| 绿幕抠像/绿屏抠像 |
green_screen |
| AI 漫剧转绘(漫画风/3D卡通风格) |
comic_style |
| 短剧高光剪辑/精彩片段提取 |
highlight |
| AI 视频翻译(字幕/语音/面容翻译) |
video_translation |
| 查询翻译项目状态/重启翻译轮询 |
poll_translation |
| 查询翻译项目列表 |
list_translation |
| AI 解说视频生成(短剧解说/二创) |
drama_recap |
| AI 剧本还原(视频转结构化剧本) |
drama_script |
| 查询媒资信息(Vid 详情+播放地址) |
get_media_info |
3) 构造参数并执行
视频编辑类
视频/音频裁剪 |
references/02-clipping.md |
|
flip.py '<json>' | 视频翻转 |
references/03-flip.md |
|
speedup.py video '<json>' | 视频变速 |
references/04-speedup.md |
|
speedup.py audio '<json>' | 音频变速 |
references/04-speedup.md |
|
image_to_video.py '<json>' | 图片转视频 |
references/05-image-to-video.md |
|
compile.py '<json>' | 音视频合成 |
references/06-compile.md |
|
extract_audio.py '<json>' | 提取音轨 |
references/07-extract-audio.md |
|
mix_audios.py '<json>' | 混音 |
references/08-mix-audios.md |
媒体处理类
音频降噪 |
references/11-noise-reduction.md |
|
quality_enhance.py '<json>' | 综合画质修复 |
references/12-quality-enhance.md |
|
super_resolution.py '<json>' | AI 超分辨率 |
references/13-super-resolution.md |
|
interlacing.py '<json>' | 智能补帧 |
references/14-interlacing.md |
AI 内容分析类
OCR 文字提取 |
references/16-ocr-text-extract.md |
|
subtitle_removal.py '<json>' | 硬字幕擦除 |
references/17-subtitle-removal.md |
|
add_subtitle.py '<json>' | 添加嵌入字幕 |
references/18-add-subtitle.md |
|
intelligent_slicing.py '<json>' | 智能场景分割 |
references/19-intelligent-slicing.md |
|
portrait_matting.py '<json>' | 人像抠图 |
references/20-portrait-matting.md |
|
green_screen.py '<json>' | 绿幕抠像 |
references/21-green-screen.md |
|
highlight.py '<json>' | 短剧高光剪辑 |
references/23-highlight.md |
|
get_media_info.py '<json>' | 媒资信息查询 |
references/27-get-media-info.md |
AI 内容生成类
AI 视频翻译 |
references/24-video-translation.md |
|
drama_recap.py '<json>' | AI 解说视频生成 |
references/25-drama-recap.md |
|
drama_script.py '<json>' | AI 剧本还原 |
references/26-drama-script.md |
重启轮询
| 脚本 | 用途 |
|---|
| INLINECODE83 | 重启编辑类任务轮询 |
| INLINECODE84 |
重启媒体处理类任务轮询 |
|
poll_translation.py <ProjectId> | 重启翻译任务轮询 |
超时响应中的 resume_hint.command 字段包含可直接复制执行的重启命令。
示例
CODEBLOCK1
错误输出
所有错误统一格式: INLINECODE87
超时输出(含重启指令):
CODEBLOCK2
约束
计费说明
仅当用户主动咨询费用或计费规则时,再参考 references/00-billing-instructions.md 中的计费说明,向用户简要说明 volcengine-ai-mediakit 所依赖的 VOD 资源的计费构成,避免在普通剪辑/处理对话中主动展开计费细节。
Volcengine AI MediaKit
前置条件
- - Python:确认 python --version ≥ 3.6
- 环境变量(必需,也可通过工作目录下的 .env 文件配置,脚本会自动加载):
- VOLCENGINE
ACCESSKEY — 火山引擎 Access Key
- VOLCENGINE
SECRETKEY — 火山引擎 Secret Key
- VOD
SPACENAME — VOD 空间名称
- - 依赖:脚本依赖 python-dotenv requests urllib
参数传入方式
所有脚本支持两种 JSON 参数传入方式:
- 1. 内联 JSON(适合简单参数):python script.py {key:value}
- 文件引用(推荐,避免 shell 转义问题):python script.py @params.json
@ 前缀表示从文件读取 JSON 内容,文件路径相对于当前工作目录。
结果交付规则
- - 提交异步任务成功后会返回异步任务id,字段为 VCCreativeId 或 TaskId,在给用户交付最终产物时,必须包含异步任务id
- 在展示最终产物链接时,禁止随意修改链接内容
- 优先将产物链接提供给用户
注意
当用户询问当前 Skill 有什么能力时,直接返回 references/00-detail.md 的内容,并停止后续流程,等待用户输入。
工作流程
1) 识别输入视频类型(必要时先上传拿 vid://...)
后续所有处理脚本优先使用 VOD 侧资源引用:
- - Vid:vid://vxxxx(或部分脚本接受裸 vxxxx 并自动补 vid://)
- DirectUrl / FileName:directurl://filename>(媒体类任务用 DirectUrl 时会要求 FileName + SpaceName)
当用户提供的是以下输入之一,需要先执行上传逻辑,拿到 Vid 后再继续:
- - 本地文件路径:如 /path/to/a.mp4
- http/https 链接:如 https://example.com/a.mp4(会走 URL 拉取上传,并轮询上传结果)
统一用 scripts/upload_media.py:
bash
python DIR>/scripts/uploadmedia.py filepathorhttpurl> [spacename]
脚本输出中 Source 字段即 vid://...,可直接作为后续处理输入。
安全限制:本地文件上传仅允许 workspace/、userdata/ 和 /tmp 目录下的文件。
2) 识别用户意图 → 选择对应处理脚本
根据用户需求,按以下决策树选择脚本:
| 用户意图 | 脚本 |
|---|
| 多个视频/音频合成一个(顺序拼接) | stitching |
| 截取视频/音频的某个时间片段 |
clipping |
| 加速/慢放/变速 | speedup |
| 镜像/上下翻转/左右翻转 | flip |
| 多张图片串联生成视频 | image
tovideo |
| 替换/叠加视频的背景音乐 | compile |
| 只要视频里的音频轨 | extract_audio |
| 多条音频同时叠加播放(混音) | mix_audios |
| 分离人声和伴奏/背景音 | voice_separation |
| 去除环境噪音/电流杂音/风噪 | noise_reduction |
| 模糊/低画质视频修复(压缩伪影/噪点/划痕) | quality_enhance |
| 低分辨率视频提升(如 720P→1080P) | super_resolution |
| 低帧率视频插帧提升流畅度(如 30fps→60fps) | interlacing |
| 语音识别/ASR/提取视频中的文字对白 | asr
speechto_text |
| OCR 文字提取/识别视频中的屏幕文字 | ocr
textextract |
| 擦除视频硬字幕 | subtitle_removal |
| 给视频添加/嵌入字幕(烧录字幕) | add_subtitle |
| 视频场景分割/智能切片 | intelligent_slicing |
| 人像抠图/人像分割 | portrait_matting |
| 绿幕抠像/绿屏抠像 | green_screen |
| AI 漫剧转绘(漫画风/3D卡通风格) | comic_style |
| 短剧高光剪辑/精彩片段提取 | highlight |
| AI 视频翻译(字幕/语音/面容翻译) | video_translation |
| 查询翻译项目状态/重启翻译轮询 | poll_translation |
| 查询翻译项目列表 | list_translation |
| AI 解说视频生成(短剧解说/二创) | drama_recap |
| AI 剧本还原(视频转结构化剧本) | drama_script |
| 查询媒资信息(Vid 详情+播放地址) | get
mediainfo |
3) 构造参数并执行
视频编辑类
视频/音频裁剪 |
references/02-clipping.md |
| flip.py
| 视频翻转 | references/03-flip.md |
| speedup.py video | 视频变速 | references/04-speedup.md |
| speedup.py audio | 音频变速 | references/04-speedup.md |
| imagetovideo.py | 图片转视频 | references/05-image-to-video.md |
| compile.py | 音视频合成 | references/06-compile.md |
| extractaudio.py | 提取音轨 | references/07-extract-audio.md |
| mixaudios.py | 混音 | references/08-mix-audios.md |
媒体处理类
音频降噪 | references/11-noise-reduction.md |
| qualityenhance.py | 综合画质修复 | references/12-quality-enhance.md |
| superresolution.py | AI 超分辨率 | references/13-super-resolution.md |
| interlacing.py | 智能补帧 | references/14-interlacing.md |
AI 内容分析类
OCR 文字提取 | references/16-ocr-text-extract.md |
| subtitleremoval.py | 硬字幕擦除 | references/17-subtitle-removal.md |
| addsubtitle.py | 添加嵌入字幕 | references/18-add-subtitle.md |
| intelligentslicing.py | 智能场景分割 | references/19-intelligent-slicing.md |
| portraitmatting.py | 人像抠图 | references/20-portrait-matting.md |
| greenscreen.py | 绿幕抠像 | references/21-green-screen.md |
| highlight.py | 短剧高光剪辑