采用FFmpeg从视频中提取音频(声音)保存为mp3文件

采用FFmpeg从视频中提取音频(声音)保存为mp3文件


采用FFmpeg从视频中提取音频(声音)保存为mp3文件
作者:雨水,日期:2016年1月9日 CSDN博客:http://blog.csdn.net/gobitan

摘要:看到好的视频文件,如果想把其中的音频(声音)提取出来。网络上肯定有不少类似工具,但作为技术人员提到音视频处理,肯定会想到FFmpeg。本文介绍了如何基于FFmpeg从视频中提取音频,然后将音频保存为mp3格式的音频文件。

环境准备:Ubuntu desktop 12.04

第一步:下载mp3的编码库
因为FFmpeg默认只支持mp3的解码,不支持mp3编码。如果想把提取出来的音频保存为mp3格式肯定就需要mp3格式的编码库。因此,想输出mp3文件,需要借助第三方的mp3编码库。这里采用LAME编码库,即Lame Aint an MP3 Encoder(A high quality MP3 encoder). LAME库可以从http://lame.sourceforge.net/下载到。我这里下载的时候选择的版本是3.98,文件名为lame-398.tar.gz,大约1M多。具体版本的选择参考后面编译ffmpeg时候的提示。访下载,可以在这里找到 http://download.csdn.net/detail/gobitan/9397485。

第二步:解压/配置/编译/安装LAME mp3编码库
分别执行如下步骤完成安装:
dennis@ubuntu14:~$ tar zxf lame-398.tar.gz
dennis@ubuntu14:~$ cd lame-398/
dennis@ubuntu14:~/lame-398$ ./configure
dennis@ubuntu14:~/lame-398$ make
dennis@ubuntu14:~/lame-398$ sudo make install

第三步:下载FFmpeg安装包
FFmpeg的安装包可以从http://ffmpeg.org/下载,当前最新的版本为2.8.4,下载后的文件为ffmpeg-2.8.4.tar.bz2,大约8M左右。

第四步:解压/配置/编译/安装FFmpeg
将下载的安装包上传到ubuntu,然后做如下步骤:
(1) 解压
dennis@ubuntu:~$ tar xf ffmpeg-2.8.4.tar.bz2
dennis@ubuntu:~$ cd ffmpeg-2.8.4/
(2) 配置
由于需要加载第三方mp3支持库,因此在配置的时候需要添加一个配置选项--enable-libmp3lame,配置选项的查询可以通过help命令来查看,如下所示:
dennis@ubuntu:~/ffmpeg-2.8.4$ ./configure --help|grep mp3
--enable-libmp3lame enable MP3 encoding via libmp3lame [no]
执行如下命令进行配置:
dennis@ubuntu14:~/ffmpeg-2.8.4$ ./configure --enable-libmp3lame --disable-yasm
如果第一步的LAME mp3库没有安装好,就会出现类似如下的错误:
ERROR: libmp3lame >= 3.98.3 not found
注:上面可以提供与ffmpeg匹配的LAME库的版本。
(3) 编译
dennis@ubuntu:~/ffmpeg-2.8.4$ make
(4) 安装
dennis@ubuntu:~/ffmpeg-2.8.4$ sudo make install
(5) 配置共享库
dennis@ubuntu:~$ sudo vi /etc/ld.so.conf
dennis@ubuntu:~$ sudo ldconfig -v
如果缺失这一步后面提取的时候会报如下的错误:
ffmpeg: error while loading shared libraries: libmp3lame.so.0: cannot open shared object file: No such file or directory

第四步:寻找一个可以测试的视频文件
我这里在贝瓦儿歌网下载了小苹果的视频,网址:http://g.beva.com/kan-erge/xiao-ping-guo.html#1802,大约23M。将文件重命名为apple.mp4.

第五步:执行音频提取
dennis@ubuntu:~$ ffmpeg -i apple.mp4 -f mp3 -vn apple.mp3
参数解释:
-i 表示input,即输入文件
-f 表示format,即输出格式
-vn表示vedio not,即输出不包含视频
对比源视频文件和提取得到的音频文件大小,可以看到源视频文件为约23M,而提取出来的音频文件大小为3M。
dennis@ubuntu:~$ ls -lrt
-rw-rw-r-- 1 dennis dennis 24118025 Jan 9 02:52 apple.mp4
-rw-rw-r-- 1 dennis dennis 3379969 Jan 9 02:54 apple.mp3
dennis@ubuntu:~$

第六步:扩展信息
FFmpeg还提供了很多有用的工具可以查看和处理音视频文件,如:
查看视频文件的音视频编解码格式,视频时长,比特率等,如下:
dennis@ubuntu:~$ ffmpeg -i apple.mp4
ffmpeg version 2.8.4 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
configuration: --enable-libmp3lame --disable-yasm
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 40.101 / 5. 40.101
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'apple.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2mp41
encoder : Lavf54.6.100
Duration: 00:03:31.24, start: 0.000000, bitrate: 913 kb/s
Stream #0:0(und): Video: mpeg4 (Simple Profile) (mp4v / 0x7634706D), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 780 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 127 kb/s (default)
Metadata:
handler_name : SoundHandler
At least one output file must be specified
dennis@ubuntu:~$

参考资料:
1. http://ffmpeg.org/ FFmpeg官网
2. http://lame.sourceforge.net/ LAME mp3编解码官网
3. http://blog.csdn.net/jcwkyl/article/details/5313297 从flv文件中提取音频并存储为mp3格式
4. http://blog.chinaunix.net/uid-11344913-id-3930867.html 编译支持MP3与H264编码的ffmpeg
FFmpeg视频提取音频 参考博客流文件基本信息查看使用FFprobeffprobe 是一个多媒体流分析工具。它从多媒体流中收集信息,并且以人类和机器可读的形式打印出来。它可以用来检测多媒体流的容器类型,以及每一个多媒体流的格式和类型。它可以作为一个独立的应用来使用,也可以结合文本过滤器执行更复杂的处理。—— FFmpeg最全教程音频采样率、采样深度和比特率采样率/采样频率采样率是指每秒钟记录的音频样本数。模拟信号采样为数字信号,一个音频样本只是一个数字,代表在一个特定时间点的测量声波值。 阅读详情

相关推荐

FFmpeg代码实现抽取音频视频数据

今天开始撸代码,首先使用FFmpeg的API抽取一个MP4文件音频数据。

yinshipin007的博客 3308

FFmpeg视频提取音频保存mp3文件

如何把视频文件中的音频数据提取出来,网络上有不少音频提取工具,但作为技术人员提到音视频处理,肯定会想到FFmpeg。本文介绍了如何基于FFmpeg视频提取音频,然后将音频保存mp3格式的音频文件。 1.执行音频提取 root@jackfan: ~$ ffmpeg -i test.mp4 -f mp3 -vn test.mp3 参数解释: -i 表示input,即输入文件 -f 表示format,即输出格式 -vn表示vedio not,即输出不包含视频 对比源视频文件提取得到的音频文件

程序猿老樊的博客 3万+

如何使用Python提取视频中的音频

如何使用Python提取视频中的音频 在这篇文章中,我将解释如何使用Python提取视频中的音频提取结束之后,你将得到视频中的音频文件,之后,你便可以把音频文件用在其它项目中。整个过程可以拆分成以下几步: 安装ffmpeg和MoviePy 读取视频文件 输出音频文件 一个完整的例子 安装ffmpeg和MoviePy 为了操作视频文件,我们需要执行以下命令来安装Python的两个第三方库:ffmpeg和MoviePy,后者依赖前者。 pip install ffmpeg moviepy 读取视频

digolds的博客 7023

使用FFMPEG提取音频数据

使用FFMPEG提取图片数据。

Silver__Wolf的博客 2917

使用ffmpeg视频提取音频&纯视频

提取音频 使用ffmpeg可以很轻易从原视频中抽取出其中的音频视频,抽取音频的命令如下: ffmpeg -i input.mp4 -vn -c:a copy output.aac -vn表示no video,-c:a 是codec of audio的意思,copy是直接拷贝视频中的原始的音频,这里不会涉及音频的编解码,速度会很快。也可以指定-c:a mp3 导出mp3格式的音频。 对于音频提取,可以使用-b:a 128k 指定音频的码率是128kb/s,-ar 44k 指定音频的采样频率为44kHz,完

xindoo 4万+

Python使用ffmpeg合成视频音频

Python使用ffmpeg合成视频音频应用平台音视频合成总结 最近有在使用屏幕录制软件录制桌面,在用的过程中突发奇想,使用python能不能做屏幕录制工具,也锻炼下自己的动手能力。 接下准备写使用python如何做屏幕录制工具的系列文章: 录制屏幕制作视频 录制音频 合成视频音频 基于pyqt5制作可视化窗口 大概上述四个部分,希望自己能够尽快完善,前两篇文章分享了利用opencv制作了屏幕录制部分,利用PyAudio录制音频,本篇文章分享如何使用ffmpeg将同时录制的屏幕录像和音频合成为有声音

weixin_46281427的博客 1万+

视频MP3音频提取实用指南

音频提取工具是处理音视频文件不可或缺的软件。在本节中,我们将介绍一些常见的音频提取工具,并对它们的安装和配置方法进行详细介绍。音频提取工具种类繁多,它们各自具有不同的特点和优势。以下是一些广泛使用的音频提取工具::VLC不仅是一个功能强大的媒体播放器,还内置了音频提取功能,支持多种格式,并且完全免费。Audacity:作为开源音频编辑器,Audacity也提供了导入视频文件提取其中音频的功能。:一款多功能的转换工具,支持音频视频及图片的格式转换,用户界面友好,操作简单。

weixin_35414484的博客 1269

[FFMPEG开发]音频转换后杂音、音画不同步、声音变快变慢的原因分析以及解决方法

首先说句抱歉,距离上次说要写处理杂音问题,关于视频转换后视频明显变快变慢的内容在这里,有需求的可以看看帮忙点个赞ffmpeg的pts与音视频同步的关系   鸽了一个半月左右。本来想在整理好格式转换后就开始写帮助分析的,但是由于一直忙着实习跟自学一些东西一直没写。最近恰好遇到在做音频录制的事顺便也学了一些东西就一起总结下来把。   首先在ffmpeg音频编码中,中间数据都是pcm为主。在ffmpe...

qq_40212938的博客 1万+

MP3音频提取软件:从视频提取音频的实用工具

音频编码格式是数字音频处理的重要组成部分,它关系到音乐文件的存储、传输效率及音质表现。MP3MPEG-1 Audio Layer 3)编码格式凭借其高压缩比和相对优秀的音质表现,成为了数字音频领域广泛使用的标准之一。音频提取软件的主界面通常包括以下几个核心元素:菜单栏:提供文件操作、视图调整、设置选项等。工具栏:快捷访问常用功能,如添加文件提取保存等。预览窗口:展示选定视频的内容,使用户可以选择特定的音频轨道。信息栏:显示软件状态、操作提示和错误信息。

weixin_35364187的博客 1239

视频文件提取音频并存储为MP3格式文件

在linux世界里,进行视频格式转化的软件有很多,其中大名鼎鼎的ffmpegmplayer下的mencoder。本文主要介绍如何从视频文件中提起音频,同时保存mp3格式的文件。 格式转换其实就是经过解码和重新编码两个过程,如果系统不存在对应的解、编码器,就需要额外安装。ffmpeg自带了MP2格式的编码器,对于MP2格式的音频,普通电脑上的播放器似乎都能支持,但大部分手机的播放器不支持,

jinyeweiyang的专栏 1290

JavaCV音视频开发宝典:使用JavaCV采集windows系统声音并录制成mp3音频文件(FFmpeg采集windows系统声音)

《JavaCV音视频开发宝典》专栏目录导航 《JavaCV音视频开发宝典》专栏介绍和目录 前言 之前已经写过很多采集windows、macos和linux本机麦克风声音的文章,但是没讲过采集系统声音的。 很多小伙伴们弄推流器的时候跟博主反馈说不知道怎么采集系统的声音,本章咱们就单独讲讲windows平台下如何使用ffmpeg和JavaCV采集系统声音。 采集系统声音原理 首先要知道的是,原则上来说是没办法获取系统声音的,需要通过创建虚拟设备,将系统声音模拟成虚拟声卡设备,这样就可以通过ffmpeg和J.

eguid音视频方向博客,分享经过实践检验的硬核音视频技术。FFmpeg、openCV和JavaCV音视频和图像处理系列教程发布十周年,众多开发者的严格验证。欢迎关注,一起交流探索学习最新音视频和图像处理技术 2975

视频提取音频是什么原理?无损提取和转 MP3 有什么区别?

本文解析了视频提取音频的技术原理,指出常见误解:提取音频并非重新识别声音,而是从视频容器中分离已存在的音频流。视频文件实质是多数据流的容器(视频音频、字幕等),提取音频即"解复用"过程。文章对比了无损提取(直接复制原音频流)和转码为MP3的区别:前者保持原音质且高效,后者因有损重编码可能导致音质下降。通过FFmpeg命令示例,说明如何查看音频编码格式及不同提取方式,并建议根据需求选择方案——保存原始音质优先无损提取,追求兼容性可选MP3转码。

fengxinghua99的博客 843

ffmpeg实现视频音频分离,并且将声音切片

项目需求 我司有个需求我们需要将视频中的音频提取出来,并且需要把提取出来的声音按照需要的时间段切片。 命令分析 1. 将视频中的音频提取出来 ffmpeg -i {file_path} -f wav -ar 16000 {file_name} file_path: 视频文件路径 file_name: 文件名称 2. 将音频按照时间段切片 ffmpeg -i {file_path} -vn -acodec copy -ss {start_time} -to {end_time} -c copy {fi

wujiesunlirong的博客 7375

pythonmp3转wav---安装、声音截取、音频分布

一、pydub和ffmpeg安装(失败) 1、直接pip安装 pip install pydub pip install FFmpeg 运行下文程序时,报错:Couldn’t find ffmpeg or avconv - defaulting to ffmpeg, but may not work" 主要原因是没有找到 ffmpeg.exe。pip list查看安装版本为1.4。 二、单独下载...

小马日记 2796

视频中解放声音:TikTokDownload全方位音频提取指南

你是否曾遇到这样的困境:刷到一段配乐惊艳的短视频,想单独保存音频却找不到合适工具?或者需要批量提取创作者主页所有作品的背景音乐用于二次创作?TikTokDownload配合F2工具链提供的音频提取功能,彻底解决了这些痛点。本文将系统介绍如何利用该工具实现MP3、WAV等多格式音频的高效提取,从基础命令到高级批量处理,让你5分钟内从新手变专家。 ## 音频提取核心能力解析 TikTokDownl...

gitblog_01106的博客 1125

FFmpeg 使用命令整理 – 提取音频视频提取图片、格式转换等

提取声音的软件网上搜索有不少,不过最有名最专业的似乎是一个命令行工具:ffmpeg。这个工具功能十分丰富且强大,我所需要的从视频提取 mp3 的功能只是其中包含的一个。感觉使用起来很复杂因为是命令行的,但其实通过学习后发现很轻松很好用,一起学习下! FFmpeg 简介 FFmpeg 是一个自由软件,可以运行音频视频多种格式的录影、转换、流功能,包含了libavcodec—这是一个用于多个项目中音频视频的解码器库,以及libavformat—个音频视频格式转换库。 “FFmpeg”这个单词中的“FF”

oschina_41559824的博客 4192
上一篇: WebRTC学习的方方面面
下一篇: Centos 6.5 Install VirtualBox 5.1.4
iteye_10303
博客等级 码龄8年 10粉丝 129原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值