搜索视频对话并制作带字幕的表情包GIF,非常适合剪辑影视剧趣图。
GifHorse - 对话框搜索和GIF创建器是一项面向实际任务的技能,主要用于通过搜索对话框和添加定时字幕从您的视频库创建 GIF 响应;What GifHorse Does.;
该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
通过搜索视频中的对话并添加带时间戳的字幕,从您的视频库中快速生成反应类 GIF。
cd ~/gifhorse && source venv/bin/activate gifhorse transcribe ~/Movies
所有 gifhorse 命令必须在虚拟环境中运行。您可通过以下命令激活环境:
cd ~/gifhorse && source venv/bin/activate
或使用快捷激活脚本:
source ~/gifhorse/activate.sh
从视频中提取对话文本(每段视频仅需执行一次):
# 默认模式:从在线服务自动下载字幕(速度快,推荐) gifhorse transcribe /path/to/videos # 仅使用本地 .srt 文件(不下载、不调用 Whisper) gifhorse transcribe /path/to/videos --use-subtitles # 使用 Whisper AI(速度较慢,但适用于任意视频) gifhorse transcribe /path/to/video.mp4 --use-whisper # 强制重新转录数据库中已存在的视频 gifhorse transcribe /path/to/videos --force
下载 .srt 字幕文件,但不存入数据库:
gifhorse fetch-subtitles /path/to/videos gifhorse fetch-subtitles /path/to/videos --skip-existing
在全部视频库中查找台词:
# 基础搜索 gifhorse search "令人难忘的台词" # 搜索时包含上下文(前后各 N 行对话) gifhorse search "令人难忘的台词" --context 2 # 显示全部匹配结果(不限数量) gifhorse search "令人难忘的台词" --all # 自定义结果数量(默认为 100 条) gifhorse search "令人难忘的台词" --limit 50
精确查看将被截取的内容:
gifhorse preview "令人难忘的台词" 1 gifhorse preview "台词" 1 --include-before 1 --include-after 1
生成带字幕的 GIF:
# 基础模式(文件名自动基于台词生成,保存至 exports/ 目录) gifhorse create "令人难忘的台词" 1 # 指定输出路径 gifhorse create "令人难忘的台词" 1 -o reaction.gif # 高质量输出(适用于社交媒体) gifhorse create "台词" 1 --width 720 --fps 24 --quality high # 包含完整对话上下文 gifhorse create "台词" 1 --include-before 2 --include-after 1 # 替换字幕中的特定词语(可重复使用;段落编号来自 preview 输出) gifhorse create "人类的时代" 1 --include-after 1 -s 1 "men" "standardized software" -s 2 "orc" "custom applications" # 干净替换(无删除线效果) gifhorse create "台词" 1 -r 1 "旧词" "新词" # 生成后通过 iMessage 发送 gifhorse create "台词" 1 --send gifhorse create "台词" 1 --send-to "+15551234567"
# 按路径通配符移除视频(支持 SQL LIKE 语法) gifhorse remove "%Adventure Time%" gifhorse remove "%S01%" --yes # 检查目录下字幕状态 gifhorse subtitle-status ~/Videos gifhorse subtitle-status ~/Videos --missing-only
# 查看转录统计信息 gifhorse stats # 列出所有已完成转录的视频 gifhorse list
# 设置 iMessage 发送手机号 gifhorse config --set-phone "+15551234567" # 查看当前配置 gifhorse config --show
精细控制截取范围:
--include-before N —— 包含匹配台词前 N 段对话--include-after N —— 包含匹配台词后 N 段对话--padding-before SECS —— 在对话开始前增加缓冲秒数(默认:1.0)--padding-after SECS —— 在对话结束后增加缓冲秒数(默认:1.0)--start-offset SECS —— 手动调整起始时间(可为负值)--end-offset SECS —— 手动调整结束时间(可为负值)重要提示: 若需截取对话之后的反应镜头,请使用 --padding-after 而非 --include-after。--include-after 将捕获至下一段对话开始前的所有画面(可能长达 30 秒以上!)。
--quality low|medium|high —— 调整调色板质量(影响文件大小)--fps N —— 帧率(默认:15,推荐 24 实现更流畅动画)--width N —— 输出宽度(像素,默认:480,推荐 720 实现高清效果)-s, --sub NUM OLD NEW —— 替换指定段落中的词语(可重复使用)。被替换词以红色删除线显示,新词以红色显示。段落编号由 preview 命令展示。-r, --replace NUM OLD NEW —— 干净替换词语(无删除线效果)。可重复使用。--no-subtitles —— 生成不含字幕叠加层的 GIFi_dont_think_so.gif),保存至 exports/ 目录-o PATH 可覆盖默认路径;若文件名冲突,则自动追加 _2、_3 等后缀--send —— 将生成的 GIF 通过 iMessage 发送给配置的手机号(仅 macOS 支持)--send-to NUMBER —— 发送给指定手机号(覆盖配置中设置的号码)注意: 所有生成的 GIF 均自动在右下角嵌入细微的 “gifhorse” 水印。
gifhorse search "完美" gifhorse create "完美" 1 --padding-after 2.0
gifhorse search "关键词组" gifhorse preview "关键词组" 1 --include-before 2 --include-after 1 gifhorse create "关键词组" 1 --include-before 2 --include-after 1
gifhorse preview "人类的时代" 1 --include-after 1 gifhorse create "人类的时代" 1 --include-after 1 -s 1 "men" "standardized software" -s 2 "orc" "custom applications"
gifhorse create "台词" 1 --width 720 --fps 24 --quality high -o tweet.gif
gifhorse create "令人难忘的台词" 1 --padding-after 3.0
gifhorse config --set-phone "+15551234567" gifhorse create "台词" 1 --send
preview 命令确认时间点无误后再生成 GIFgifhorse transcribe 即可自动获取字幕--padding-after 而非 --include-after--context 2 可同时查看匹配台词前后的对话内容--force 更新已有转录结果subtitle-status 快速识别哪些视频尚未拥有字幕请先激活虚拟环境:
cd ~/gifhorse && source venv/bin/activate
请确保已安装 FFmpeg-full:
brew install ffmpeg-full
数据库中存储的是绝对路径。若您在完成转录后移动了视频文件,请在新位置重新执行转录。
GifHorse 支持挂载在网络上的视频文件:
# 挂载网络共享(macOS) open "smb://server-ip/share-name" # 对网络共享中的视频执行转录 gifhorse transcribe "/Volumes/server-ip/Movies"
当用户希望执行以下操作时,请调用 gifhorse:
MIT
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.1万人学习
共49课时 | 82.6万人学习
最新文章