SuperAPI AI 工具集

audio-extract

办公与效率

查看项目

更新于 10-16 10:17

技能介绍

Audio Extractor 是一个从视频文件中提取音频的技能,底层使用 ffmpeg 完成提取,支持多种输出格式。

用途 该技能面向需要从视频中分离音频的场景,例如把视频的声音提取出来、视频转音频、导出音频等。触发方式包括「提取音频」「抽取音频」「视频转音频」「导出音频」「extract audio」「video to audio」「get audio from video」等表述。

主要能力

  • 支持多种输出格式:MP3、AAC(M4A)、WAV、FLAC、OGG。
  • 支持音频质量控制:高质量 320kbps、标准质量 192kbps、较低质量 128kbps,或保持原始比特率。
  • 支持声道处理:保持原始声道、转换为立体声、转换为单声道。
  • 支持时间范围提取:提取完整音频,或指定起始/结束时间(-ss、-to)或持续时长(-t)。
  • 支持输出路径设置,默认建议与输入文件同目录,文件名为原文件名加对应格式后缀。
  • 提取前后使用 ffprobe 检查输入与输出信息,包括时长、编码、采样率、声道数、比特率和文件大小。

使用方式

  1. 获取输入文件:若用户未提供输入文件路径则询问;验证文件存在并获取信息,命令为: ffprobe -v error -show_entries format=duration,size -show_entries stream=codec_name,codec_type,sample_rate,channels,bit_rate -of json "$INPUT_FILE" 并向用户展示文件时长、音频编码、采样率、声道数、音频比特率。
  2. 询问用户配置:必须使用 AskUserQuestion 工具收集偏好后再执行任何 ffmpeg 命令,不要跳过。需要收集输出格式、音频质量(仅 MP3/AAC/OGG)、声道处理、时间范围、输出路径。
  3. 构建 FFmpeg 命令:根据选择组合格式与编码选项、比特率选项、声道选项、时间范围选项。
  4. 执行命令:执行前向用户展示完整 ffmpeg 命令,执行并显示进度,报告成功或失败。
  5. 验证输出:使用 ffprobe 检查输出文件,报告输出时长是否符合预期、文件大小、音频格式和比特率,以及任何警告或问题。

常用命令模板

  • 基础提取(MP3 320kbps):ffmpeg -i "INPUT" -vn -acodec libmp3lame -b:a 320k "OUTPUT.mp3"
  • 无损提取(WAV):ffmpeg -i "INPUT" -vn -acodec pcm_s16le "OUTPUT.wav"
  • 提取指定时间段:ffmpeg -ss START -to END -i "INPUT" -vn -acodec libmp3lame -b:a 320k "OUTPUT.mp3"
  • 转换为单声道 MP3:ffmpeg -i "INPUT" -vn -acodec libmp3lame -b:a 192k -ac 1 "OUTPUT.mp3"

格式与编码选项

  • MP3:-vn -acodec libmp3lame -b:a 320k
  • AAC(M4A):-vn -acodec aac -b:a 256k
  • WAV(无损):-vn -acodec pcm_s16le
  • FLAC(无损压缩):-vn -acodec flac
  • OGG:-vn -acodec libvorbis -b:a 320k

适用场景 适合需要把视频中的音轨单独保存为音频文件的用户,例如为视频内容制作音频版本、提取背景音乐或人声、按时间段截取音频、压缩音频体积或转换为特定格式以便在其它设备或软件中使用。

限制 该技能依赖 ffmpeg 与 ffprobe 环境;执行前必须通过 AskUserQuestion 收集用户偏好,不能跳过该步骤;保持原始比特率(-acodec copy)仅限兼容格式。关于收费、价格、平台支持范围等信息,资料中暂未提供。