Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计通过

srt-to-videoSRT 转视频

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

3,432

周安装

143

GitHub Stars

公开资料未说明

下载量

1,144
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:srt-to-video(SRT 转视频)
来源仓库:https://github.com/0x00000003/srt-to-video
安装命令:
openclaw skills install srt-to-video
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install srt-to-video

简介

将 SRT 字幕转为带逐字显示的 Remotion 打字动画视频。

  • 适合视频生成、动画合成或脚本化剪辑项目开发。
  • 支持自定义分辨率、时长和导出格式设置。srt-to-video 属于效率类 Skill,可作为该场景下的辅助能力补充。
  • 安装命令:openclaw skills install srt-to-video。
  • 使用外部素材时需核对版权授权与内容合规要求。

SKILL.md

name
srt-to-video
description
Convert SRT subtitle files into Remotion typing-animation videos with character-by-character text reveal and cinematic animated backgrounds. Use when the user wants a typewriter subtitle effect, SRT-to-video conversion, animated captions, or a Remotion project generated from subtitle files.

SRT → 打字动画视频 Skill

.srt 字幕文件一键转化为 Remotion (React) 视频项目,生成带有"逐字打字机"特效 + 科幻星空背景的精美视频。


输入

用户提供:

  1. 一个 .srt 字幕文件(标准 SRT 格式)
  2. 可选参数

- 画幅:1920x1080(横版,默认) 或 1080x1920(竖版/短视频) - 背景风格:starfield(默认星空) / gradient(纯渐变) / custom(用户自定义) - 打字速度:slow(8帧/字) / normal(5帧/字,默认) / fast(3帧/字) - 字体颜色方案:默认自动分配(白色/金色/蓝色/紫色交替)


工作流程

Step 1: 解析 SRT 文件

将 SRT 文件解析为时间轴数据结构:

interface SubtitleSegment {
  index: number;
  startTime: number;  // in seconds
  endTime: number;    // in seconds
  text: string;
}

SRT 格式示例:

1
00:00:01,000 --> 00:00:04,000
人是怎样变强的?

2
00:00:04,500 --> 00:00:06,500
答:表演

解析规则:

  • 每个字幕块由空行分隔
  • 第一行是序号
  • 第二行是时间码:HH:MM:SS,mmm --> HH:MM:SS,mmm
  • 第三行起是字幕文本(可多行)
  • 时间码用于确定每段字幕的开始帧和结束帧

Step 2: 生成时间轴

根据解析结果生成帧级时间轴:

// 将 SRT 时间转化为帧号
function timeToFrame(timeStr: string, fps: number): number {
  const [hours, minutes, rest] = timeStr.split(':');
  const [seconds, ms] = rest.split(',');
  const totalSeconds = parseInt(hours) * 3600 + parseInt(minutes) * 60 +
    parseInt(seconds) + parseInt(ms) / 1000;
  return Math.round(totalSeconds * fps);
}

为每段字幕计算:

  • startFrame:字幕开始帧(从 SRT 时间码)
  • endFrame:字幕结束帧(从 SRT 时间码)
  • typingSpeed:按文本长度和持续时间自动计算(确保在持续时间的 60-70% 内打完字,剩余时间保持显示)
  • fontSize:根据文本长度自动调节(短文本大号,长文本小号)
  • color:自动分配颜色方案

自动 fontSize 计算规则:

  • ≤ 5 字: 88px
  • 6-10 字: 72px
  • 11-15 字: 56px
  • 16-20 字: 48px
  • > 20 字: 42px

自动颜色循环:

const COLOR_PALETTE = [
  '#FFFFFF',   // 白色 — 叙述
  '#FFD866',   // 金色 — 强调/结论
  '#87CEEB',   // 天蓝 — 解释/分析
  '#DDA0DD',   // 紫色 — 情感/转折
  '#C8C8D0',   // 灰白 — 过渡/补充
];

Step 3: 创建 Remotion 项目

在用户指定目录(或默认 scratch 目录)下创建完整的 Remotion 项目:

<project-name>/
├── src/
│   ├── components/
│   │   ├── TypingText.tsx      ← 逐字打字组件
│   │   └── Background.tsx      ← 动态星空背景
│   ├── Composition.tsx          ← 主合成:时间轴 + 字幕渲染
│   └── index.tsx                ← Root 注册
├── package.json
└── tsconfig.json

Step 4: 渲染

项目创建后,按以下流程操作:

# 1. 安装依赖
cd <project-name> && npm install

# 2. 预览(Remotion Studio)
npm start
# 浏览器打开 http://localhost:3000 预览效果

# 3. 渲染最终视频
npm run build
# 输出到 out/video.mp4

核心组件规范

TypingText 组件

逐字符显示文本,每个字符出现时带轻微缩放弹入效果:

  • 打字效果localFrame / typingSpeed 决定已显示字符数
  • 字符动画:每个新出现的字符从 scale(1.15)scale(1), opacity: 0.51
  • 光标:打字时常亮,完成后闪烁(Math.sin(frame * 0.15) > 0
  • 文字阴影0 0 30px rgba(100, 200, 255, 0.3) 营造发光感
  • 字间距letterSpacing: '0.05em'

Background 组件

动态科幻星空背景,纯 useCurrentFrame() 驱动:

  • 渐变底色:三色渐变(深蓝→深紫→暗灰),色相随帧缓慢偏移
  • 星星:40 个随机分布的点,亮度按帧做正弦闪烁
  • 流星:5 条周期性流星,带角度和拖尾
  • 星云光晕:2 个模糊的椭圆径向渐变,缓慢漫游
  • 极光丝带:模糊的椭圆形色带,带 skewX 变形
  • 暗角radial-gradient 压暗四角

Composition 主合成

  • 每次屏幕上只显示 一行字幕
  • 每段字幕有 fadeIn(8 帧渐入)和 fadeOut(15 帧渐出)
  • 只在当前帧 ± 范围内渲染对应字幕,避免性能浪费
  • 总时长根据 SRT 最后一条字幕的 endTime 自动计算

硬规则

  1. 禁止 CSS transition/animation,所有动画必须用 useCurrentFrame() + interpolate() / spring() 驱动(Remotion 核心规则)
  2. SRT 时间码优先,严格按照 SRT 文件的时间码定位每段字幕,不自行重算除非用户明确要求
  3. 一屏一句,屏幕上同时只显示一条字幕
  4. 自动适配,fontSize、color、typingSpeed 全部自动计算,用户无需手动指定
  5. 项目可独立运行,生成的项目 npm install && npm start 即可预览

示例

输入 SRT:

1
00:00:01,000 --> 00:00:04,000
人是怎样变强的?

2
00:00:04,500 --> 00:00:07,000
答:表演

3
00:00:08,000 --> 00:00:12,000
心理学上叫神经可塑性

输出:一个完整的 Remotion 项目,3 段字幕按时间轴依次以打字效果展示,配合星空背景动画。

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

80.87%
按下载量换算925

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills