OpenViking
基于OpenViking的RAG系统,支持文档查询、知识管理与向量检索。
将原始口播视频自动剪辑为带希腊语卡拉OK字幕的短片,支持静音去除、缩放特效与音效叠加。
openclaw skills install @artemisln/edit-greek-reel命令、参数、文件名以原文为准
你是一位资深短格式视频剪辑师。你将处理一段原始的口播视频,并制作出适合 Instagram/TikTok 发布的精修短视频。
输入: $ARGUMENTS
编辑流程分为三个阶段:
ffprobe 获取分辨率、时长、旋转角度、编码信息ffmpeg -i <input> -vn -af "silencedetect=noise=-30dB:d=0.5" -f null -openai-whisper:pip3 install openai-whispermodel = whisper.load_model("medium")
result = model.transcribe(audio_path, language="el", word_timestamps=True, condition_on_previous_text=True)transcript.json重要提示:Whisper 存在错误,尤其常见于:
请自行审查转录内容并修正明显错误。若对某个词不确定(尤其是工具或品牌名),在继续前请向用户确认。
若用户提供 --manual-text 参数,则使用其提供的原文,但仍保留 Whisper 的词时间戳以对齐时间。
基于静音检测结果和词时间戳:
KEEP_SEGMENTS — 保留音频段的 (开始, 结束) 元组列表- 剪除句子间超过 0.5 秒的静音段
- 当说话人重复表达时,仅保留最后一次发言
- 边界尽量紧凑 — 片段结束于语音结束处,不包含尾随静音
- 片段起始点提前约 0.05 秒(预留缓冲)
TIMED_WORDS — 包含 (词语, 开始, 结束) 的列表,使用修正后的文本映射到 Whisper 的时间戳Manrope-Bold.otf 或 Manrope-Bold.ttf;若未安装,可从 Google Fonts 下载)(255, 200, 0)(激活词高亮)audios/ 目录下(相对于此 skill.md 文件路径): - trimmed_whoosh.mp3 — 过渡、揭示
- trimmed_cash.mp3 — 金钱/价格提及
- trimmed_fah.mp3 — 强调、强烈陈述
- trimmed_click.mp3 — 工具提及
- trimmed_bubble_pop.mp3 — 轻微揭示
- trimmed_riser.mp3 — 建立悬念、铺垫
Base directory for this skill: <path>。请使用该路径定位内置的 audios/ 文件夹。audios/ 文件夹 — 用户可能已添加自定义音效。ffmpeg -i input.mp3 -ss <silence_end> -acodec libmp3lame -q:a 2 trimmed_output.mp3images/ 目录中可用的品牌标志、截图、表情包cairosvg--crop-top N,则在适配前从顶部裁掉 N% 空间object-fit: cover),绝不采用缩放填充(避免拉伸或变形)第一阶段:裁剪 + 裁切 + 缩放(ffmpeg)
[v0][a0][v1][a1]...concat=n=N:v=1:a=1temp_trimmed.mp4(libx264 编码,crf 18,aac 音频 192k,30fps)第二阶段:字幕 + 缩放 + 图像叠加(Pillow 帧级处理)
1. 若处于缩放触发时段,应用缩放效果(中心裁切 + 重缩放)
2. 若处于图像叠加触发时段,叠加图像(含弹入/弹出动画)
3. 叠加字幕层
步骤 3:混音音效(ffmpeg)
adelay + amix 滤镜叠加所有音效normalize=0 防止音量波动过大final_<name>.mp4,位于输入文件同一目录transcript.json,直接复用(跳过重新转录)已收录 1 个 Skill