news 2026/8/17 22:37:16

Python + FFmpeg 批量提取视频音频(支持 Windows / macOS / Linux)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python + FFmpeg 批量提取视频音频(支持 Windows / macOS / Linux)

在日常开发或音频处理场景中,我们经常需要从大量视频文件中批量提取音频,例如:

  • 从课程视频中提取音频
  • 将短视频转为 MP3
  • 做语音识别 / 音频分析前处理

本文介绍一种使用 Python 调用 FFmpeg的通用方案,同时支持 Windows、macOS 和 Linux


一、环境准备

1️⃣ 安装 Python

确保已安装Python 3.7+

python --version

2️⃣ 安装 FFmpeg(关键)

FFmpeg 是跨平台音视频处理神器,本脚本依赖它。


✅ Windows
  1. 下载 FFmpeg
    👉 https://ffmpeg.org/download.html
  2. 解压后,将bin目录加入系统环境变量 PATH
  3. 验证:
ffmpeg -version

✅ macOS(推荐 Homebrew)
brewinstallffmpeg

验证:

ffmpeg -version

✅ Linux(Ubuntu / Debian)
sudoaptupdatesudoaptinstallffmpeg

CentOS / Rocky:

sudoyuminstallffmpeg

二、项目目录结构

project/ ├── v/ # 存放视频文件 │ ├── a.mp4 │ ├── b.mkv │ └── c.mov ├── mp3/ # 输出 MP3 音频 └── extract_audio.py

📌 支持格式:mp4 / mov / avi / mkv(可自行扩展)


三、完整 Python 脚本

importosimportsubprocessdefextract_audio(video_file,output_dir):# 构建输出文件路径output_file=os.path.join(output_dir,os.path.splitext(os.path.basename(video_file))[0]+'.mp3')# ffmpeg 命令command=['ffmpeg','-i',video_file,'-vn',# 不处理视频流'-acodec','libmp3lame',# MP3 编码器'-ab','192k',# 音频码率output_file]try:subprocess.run(command,check=True)print(f"✅ 音频已提取:{output_file}")exceptsubprocess.CalledProcessError:print(f"❌ 处理失败:{video_file}")defprocess_videos(input_dir,output_dir):os.makedirs(output_dir,exist_ok=True)forfile_nameinos.listdir(input_dir):iffile_name.lower().endswith(('.mp4','.mov','.avi','.mkv')):video_path=os.path.join(input_dir,file_name)extract_audio(video_path,output_dir)if__name__=="__main__":input_dir='./v'output_dir='./mp3'process_videos(input_dir,output_dir)

四、运行方式(全平台通用)

在项目根目录执行:

python extract_audio.py

运行后效果:

mp3/ ├── a.mp3 ├── b.mp3 └── c.mp3
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/15 18:33:59

【系统级编程必修课】:深入理解内存布局的7个关键维度

第一章:内存布局精确控制在系统级编程中,内存布局的精确控制是优化性能与确保硬件兼容性的关键。尤其是在操作系统开发、嵌入式系统或高性能计算场景中,开发者需要直接干预数据在内存中的排列方式,以满足对齐要求、减少缓存行冲突…

作者头像 李华
网站建设 2026/8/1 21:59:14

网工私活 2 万碾压月薪 1.5 万!同事劝我辞职单干

网工接私活竟比工资还高?工资1.5万,私活2万!同事:辞职干票大的! 小编作为一名在职的网络安全工程师行业的小小一员,在平时的工作中洞察到一线技术工程师其实还是有很多机会和时间去做一下私活。加上最近就…

作者头像 李华
网站建设 2026/8/1 11:00:44

4000余份数字化资料合集:AI大模型及行业应用方案、企业数字化、数据中台、数据要素、数据资产、数据治理、数字化转型、IT信息化

(AI大模型及行业应用方案、企业数字化、数据中台、数据要素、数据资产、数据治理、数字化转型、IT信息化、行业数字化方案及报告等)层次一:底层基石与生产要素这是数字世界的“石油”和“土地”。数据要素: 最根本的认知革命。这是…

作者头像 李华
网站建设 2026/8/4 14:59:12

【std::future链式组合进阶指南】:掌握高效异步编程的5大核心技巧

第一章:std::future链式组合进阶指南在现代C并发编程中,std::future 提供了一种异步获取计算结果的机制。然而,当多个异步任务需要按特定顺序执行或依赖前一个任务的结果时,简单的等待机制将难以满足需求。此时,链式组…

作者头像 李华
网站建设 2026/8/10 4:30:06

这个老牌知名编程论坛,彻底倒下了!

提到 Stack Overflow 论坛,提到那个橙色的栈溢出图标,相信程序员和开发者们都再熟悉不过了。 还记得半年前,我曾经写过一篇文章,分享了一个有关 Stack Overflow 论坛的变化趋势图,从曲线走势来看,当时那会就…

作者头像 李华
网站建设 2026/8/17 14:37:11

全网最全8个AI论文网站,助本科生轻松搞定毕业论文!

全网最全8个AI论文网站,助本科生轻松搞定毕业论文! AI 工具助力论文写作,轻松应对学术挑战 随着人工智能技术的不断进步,越来越多的本科生开始借助 AI 工具来辅助完成毕业论文。尤其是在当前 AIGC(人工智能生成内容&am…

作者头像 李华