# Fastwavget

> 音视频时间段截取工具(fastwavget.exe)。何时调用——★首要触发:需要从 mp4/wav 等媒体文件截取指定时间段、输出为 wav 时。①从测试录音/录像里抠某一秒段的音频;②把媒体某片段单独存成 wav 供分析或做素材;③给 whisper/faststt 等喂指定片段转写;④按毫秒切音频与日志/字幕对齐。命令 fastwavget.exe <input> <output.wav> <startMs> <endMs>,单位毫秒,endMs>startMs,endMs 自动截断到媒体实际时长,输出恒为 wav,依赖 Windows 媒体框架可解码格式(mp4/wav 等)。载体为 exe,位于 ~/.claude/skills/fastwavget/。

- Skill: `elabalice-code/fastwavget` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add elabalice-code/fastwavget`
- Raw SKILL.md: https://api.skillmd.com/api/skills/elabalice-code/fastwavget/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: elabalice-code (https://skillmd.com/u/elabalice-code)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/elabalice-code/fastwavget

---


# fastwavget — 音视频截取为 wav

> 从音视频文件截取指定时间段、输出 wav 的 CLI 工具。跨项目通用(测试取证、素材制作、STT 喂料)。

## 何时用

- **★ 截取媒体时间段为 wav(首要触发)**:mp4/wav 里要某一段单独存成 wav。
- **抠测试录音/录像某秒段**:从设备录像/AIAssistant 回放里取关键片段(如某句提问、某次唤醒)。
- **给 STT 喂指定片段**:把切出来的 wav 丢给 whisper/faststt 转写,而不是整段。
- **按毫秒切音频对齐日志**:日志有时间戳,用 fastwavget 按同时间戳切音频,音-日志对齐分析。

> 不适用:整段媒体直接转 wav / 格式转换 → 用 ffmpeg;只需读 wav 元数据(采样率/时长) → python `wave`。

## 调用约定

入口是 exe,固定位置:

```bash
WG="$HOME/.claude/skills/fastwavget/fastwavget.exe"
ls "$WG" 2>/dev/null   # 确认存在

# bash 调用(路径含空格/中文必须加引号)
"$WG" "input.mp4" "out.wav" 1000 3000
```

cmd / powershell 直接调 exe 亦可(`fastwavget.exe input.mp4 out.wav 1000 3000`)。

## 命令格式

```
fastwavget.exe <input> <output.wav> <startMs> <endMs>
```

| 参数 | 说明 |
|---|---|
| `input` | 输入文件,支持 Windows 媒体框架可解码格式(mp4、wav 等常见) |
| `output.wav` | 输出 wav 路径(输出恒为 wav) |
| `startMs` | 起始时间,毫秒 |
| `endMs` | 结束时间,毫秒,**必须 > startMs**;自动截断到媒体实际时长 |

## 示例

```bash
# 取 input.mp4 的 1s-3s
"$WG" input.mp4 out.wav 1000 3000

# 从 "好的请稍等.mp4" 取 11s-14s
"$WG" "好的请稍等.mp4" "sample_11_14s.wav" 11000 14000

# 整段 wav 截前 5s(startMs=0)
"$WG" input.wav head_5s.wav 0 5000
```

## 注意

- **路径含空格/中文必须加引号**(尤其 bash 下)。
- 依赖 **Windows 媒体框架**(系统自带解码器,mp4/wav 等常见格式开箱即用;冷门格式可能缺解码器)。
- `endMs` 超过实际时长会被自动截断,不会报错——要确认实际时长先用 python `wave`(wav)或 ffprobe(视频)。
- 输出恒为 wav(不支持指定其他格式;要 mp4/其他格式用 ffmpeg)。

