关于 video-audio-extractor
用于从本地视频文件和直接视频 URL 提取音频的命令行技能,也可借助 yt-dlp 处理 YouTube。支持多种输出格式,并可设置比特率、采样率和输出路径。
主要功能
- 01从本地视频提取音频
- 02处理直接视频 URL
- 03通过 yt-dlp 提取 YouTube 音频
- 04选择格式和音频质量
- 05设置输出路径并保留视频
适用场景
- 01从视频文件制作 MP3
- 02将 YouTube 音频保存为 M4A
- 03导出 FLAC 无损音频
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ kantylee/ video-audio-extractor --skill video-audio-extractor安装后在 Claude Code 中输入/video-audio-extractor确认已加载。
附带文件README.mdscripts/extract-audio.py
详细介绍
视频音频提取器
从视频文件或 URL 中提取音频。支持多种输出格式,包括 MP3、WAV、M4A、FLAC、OGG 和 OPUS。
功能
- ✅ 从本地视频文件提取音频
- ✅ 从直接视频 URL 下载并提取音频
- ✅ 支持 YouTube——直接提取音频(需要 yt-dlp)
- ✅ 支持多种输出格式并可控制质量
- ✅ 自动清理临时文件
前置条件
# Required
brew install ffmpeg
# Optional - for YouTube support
pip3 install yt-dlp
快速开始
从本地文件提取
{baseDir}/scripts/extract-audio.py video.mp4
# Creates: video.mp3
从 YouTube 提取
{baseDir}/scripts/extract-audio.py "https://youtube.com/watch?v=..."
使用不同格式
{baseDir}/scripts/extract-audio.py video.mp4 -f wav # WAV format
{baseDir}/scripts/extract-audio.py video.mp4 -f m4a # Apple format
{baseDir}/scripts/extract-audio.py video.mp4 -f flac # Lossless
用法
extract-audio.py [-h] [-o OUTPUT] [-f {mp3,wav,m4a,aac,flac,ogg,opus}]
[-b BITRATE] [-r SAMPLE_RATE] [--keep-video] [--video-only]
input
选项
| 选项 | 说明 | 默认值 |
|---|---|---|
input | 视频文件路径或 URL | (必填) |
-o, --output | 输出音频文件路径 | 自动生成 |
-f, --format | 输出格式 | mp3 |
-b, --bitrate | 音频比特率 | 192k |
-r, --sample-rate | 采样率(Hz) | 原始值 |
--keep-video | 保留下载的视频 | 下载后删除 |
--video-only | 仅下载视频,不提取音频 | 禁用 |
支持的格式
| 格式 | 编码器 | 备注 |
|---|---|---|
| MP3 | libmp3lame | 兼容性最佳 |
| WAV | pcm_s16le | 未压缩,文件较大 |
| M4A | AAC | 适用于 Apple 生态系统 |
| FLAC | FLAC | 无损压缩 |
| OGG | Vorbis | 开放格式 |
| OPUS | Opus | 针对流媒体优化 |
示例
高音质 MP3
{baseDir}/scripts/extract-audio.py video.mp4 -b 320k -r 48000
将 YouTube 转为 M4A
{baseDir}/scripts/extract-audio.py "https://youtu.be/xxxxx" -f m4a
自定义输出位置
{baseDir}/scripts/extract-audio.py video.mp4 -o ~/Music/my-song.mp3
下载 YouTube 视频(保留视频)
{baseDir}/scripts/extract-audio.py "https://youtube.com/watch?v=..." --video-only --keep-video
YouTube 支持
对于 YouTube 视频,此工具会尽可能使用 yt-dlp 直接提取音频。与下载完整视频相比,这种方式更快、更高效。
YouTube 的限制
YouTube 会主动拦截自动下载。如果遇到错误:
- 更新 yt-dlp:
pip3 install -U yt-dlp - 尝试不同的 URL——部分视频的限制更严格
- 使用
--video-only先下载视频,再进行提取 - 浏览器扩展——使用 YouTube 下载器扩展,然后处理下载的文件
常见的 YouTube 错误
- 403 Forbidden:YouTube 拦截了请求。尝试更新 yt-dlp,或换一个视频。
- 需要登录:视频需要身份验证。请改用浏览器下载。
- 超时:视频过大或连接速度过慢。请先尝试
--video-only。
技术细节
- 使用 ffmpeg 提取音频
- 使用 yt-dlp 下载 YouTube 视频
- 文件下载至临时目录,默认会自动清理
- 尽可能保留原始音频编码器
- 长时间操作会显示进度
评论
支持 Markdown