Individual skill
video-scrub
把一条视频重建成「只有画面和声音」的干净文件——**源片的元数据一概不搬**: GPS、设备型号、账号 ID、创建时间、章节、GoPro 的遥测轨,全部留在原地。 走的是白名单而不是黑名单:不列要删什么,只说带什么过去(画面一条流、声音一条流), 隐私保证来自结构,不来自枚举。 难点不在容器 tag,在**看不见的那几层**:x264 把完整编码参数写成 SEI 塞在码流里、 AAC 把版本号写进 DSE、avc1 的 compressorname 里还有一份——`ffprobe` 一个都看不见。 五个藏身处逐一堵死,每一处都有实测。 默认 `--mode copy`:**画面逐字节照搬**(cmp 验证过),只重编音频,53 秒的片子 1.3 秒跑完; `--mode encode` 完整重编码,多杀掉码流域的东西。 验收不靠声称:把源片所有元数据字符串当「针」,在输出文件里做**字节级扫描**, 扎到一根就红。12 道门全部由脚本确定性检查。 零依赖、零 API key,只要 node 和 ffmpeg。 Use when asked to 清元数据、去元数据、抹掉视频信息、视频隐私、去水印信息、 strip video metadata、remove exif from video、scrub video。
skills/video-scrub/SKILL.md
Source commit df39d5df9d7adc2f82acba5594579d60361a42c7
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- No
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Not checked yet
- Last checked
- Nov 3, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 1,208
- Repository last updated
- Oct 24, 2026
- License
- Apache-2.0
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- ai-video Repository topic
- claude-skills Repository topic
- ffmpeg Repository topic
- shot-analysis Repository topic
- video-analysis Repository topic
- engineering Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
README.en.mddoc · 6,683 bytesREADME.mddoc · 6,090 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesSKILL.mdcore · 9,323 bytesreferences/profiles.mddoc · 3,195 bytesreferences/residue-map.mddoc · 7,293 bytesscripts/selftest.mjsruns · 17,687 bytesscripts/video-scrub.mjsruns · 31,325 bytes
Read excerpt
## video-scrub
把一条视频重建成干净文件:**画面和声音带过去,元数据一个字节都不带。**
`{baseDir}` = 本文件所在目录。脚本 `{baseDir}/scripts/video-scrub.mjs`,零依赖,`node` 直接跑。
### 原理:白名单,不是黑名单
清元数据有两种思路,差别是死活:
| | 怎么做 | 问题 |
| --- | --- | --- |
| 黑名单 | 列出要删的字段逐个删(exiftool 那种) | **删不完你不知道的东西**——厂商私有的 udta、GoPro 的遥测轨、码流里的 SEI,漏一个就漏了 |
| **白名单** | 不说删什么,只说**带什么过去**:画面一条流、声音一条流,别的一律不要 | —— |