ffmpeg常用转换命令,支持WAV转AMR

音频转换:

1.转换amr到mp3:

ffmpeg -i shenhuxi.amr amr2mp3.mp3

2.转换amr到wav:

ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav

3.转换mp3到wav:

ffmpeg -i DING.mp3 -f wav test.wav

4.转换wav到amr:

ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr.amr

ffmpeg.exe -i PA003.wav -ar 8000 -ab 12.2k -ac 1 target.amr  此方法验证通过 文章来自http://blog.csdn.net/tylz04/article/details/9041739测试程序下载:http://files.cnblogs.com/xiaofengfeng/WavConvertAmr.zip 已测试过将WAV转AMR格式。下载地址http://ftp.pconline.com.cn/d56bb83a0a66440d54ef5473f548e4b9/pub/download/201010/ffmpeg-20131021.zip

5.转换wav到mp3:

ffmpeg -i test.wav -f mp3 -acodec libmp3lame -y wav2mp3.mp3

视频转换:

1.转换wmv到mp4:

ffmpeg -i sample.wmv -vcodec libx264 -acodec aac out.mp4

2.抓取H264视频流:

ffmpeg -i sample.flv -vcodec copy -vbsf h264_mp4toannexb -an out.h264

2.1 vbsf为过滤方法,即将flv规定的H264组织方式转换回H264协议书规定的字节流格式  2.2 -an 禁掉源文件中的音频,因为出来的码流不需要音频  2.3 vcodec copy这个是必然的

3.将H264视频流转为mp4:

ffmpeg -i sample.h264 -f mp4 haha.mp4

4.接收rtsp并存为视频文件:

ffmpeg -rtsp_transport tcp -i rtsp://streaming1.osu.edu/media2/ufsap/ufsap.mov -vcodec copy -acodec copy -t 30 -f mp4 rtsp-out.mp4

4.1 -rtsp_transport tcp:指明传输方式是tcp方式(也可以是udp)

4.2 -t 30:指明我录制30秒

ffmpeg将音频或视频编码为AMR格式音频

Android编码的MP4音频格式可能为AMR,这时候用以下命令可以从MP4中直接提取AMR音频:

ffmpeg -i test.mp4 -c:a copy test.amr

将其他格式的音频或视频转成AMR的命令:

新写法:

ffmpeg -i test.mp4 -c:a libopencore_amrnb -ac 1 -ar 8000 -b:a 12.20k -y test.amr

旧写法:

ffmpeg -i test.mp4 -acodec libopencore_amrnb -ac 1 -ar 8000 -ab 12.20k -y test.amr

系统环境:Suse 64bit OS 前期准备: 1、  下载ffmpeg源代码:http://ffmpeg.org/download.html,这里选择版本为0.11.1 2、  下载OpenCORE AMR:http://sourceforge.net/projects/opencore-amr/,这里选择的版本为0.1.3。

并将下载的文件存放与/home/ffmpeg目录下,以root用户登录系统。

具体步骤:

1、  编译安装opencore-amr,这里需要注意的是在执行configure命令的时候要添加--enable-shared=no --enable-static=yes参数,其主要作用是禁止生产动态链接库、允许生产静态库。


chmod 755 opencore-amr-0.1.3.tar.gz

tar -xzvf opencore-amr-0.1.3.tar.gz

cd opencore-amr-0.1.3

./configure --enable-shared=no --enable-static=yes

make

make install

2、  编译安装ffmpeg,注意configure命令后面所要添加的参数,可以通过执行configure --help命令查看后面所允许带的参数


chomd 755 ffmpeg-0.11.1.tar.gz

tar -xzvf ffmepg-0.11.1.tar.gz

cd ffempg

./configure --enable-gpl --enable-version3 --enable-nonfree --disable-ffplay --disable-ffprobe --disable-ffserver --enable-libopencore-amrnb --enable-libopencore-amrwb --prefix=/home/ffmpeg/target

make

make install

以上命令成功执行后将会在/home/ffmpeg/target目录下的bin目录得到ffmpeg文件,该文件已经包含amr解码器

3、  测试:


chmod 755 ffmpeg

./ffmpeg -I PA003.wav -ar 8000 -ab 12.2k -ac 1 target.amr

4、  注意事项:

a)         以上方式都是通过静态库的形式编译,采用静态库的形式编译的好处在于:编译后的可执行文件ffmpeg可以不依赖于amr解码器,简单地说,可执行文件已经将amr解码器包含在内了。

b)         ffmpeg在编译时候会优先查找amr解码器的动态链接库,如果没有找到,则查找amr解码器的静态库。在第一步中如果没有禁止amr生成动态链接库, 则ffmpeg将采用amr的动态链接库进行编译,其缺点是,编译后的可执行文件ffmpeg将依赖于amr的动态链接库,如果系统的动态链接库搜索路径 LD_LIBRARY_PATH不包含amr动态链接库所在路径,则ffmpeg将会报错,无法正常工作。

c)         amr编译安装时不建议添加prefix=XXX参数(./configure)修改amr安装路径,这样ffmpeg在编译安装时将出现找不到amr解码器的情况。

时间: 2024-11-10 07:31:29

ffmpeg常用转换命令,支持WAV转AMR的相关文章

FFmpeg 常用转换命令

刚学习 FFmpeg,用于测试需要各种视频格式文件,例如 RGB.YUV 和 H264 文件等等,所以去网上找这些资源下载,要么难以找到,要么就需要积分.后来才想到可以使用 FFmpeg 命令来转换获得这些文件,成功转换获得了这些文件(也可以编写程序实现).顺便参考网上资料总结出了这篇博文,后续也会持续更新,以方便自己以及后来者. 视频转换 1.转换 wmv 到 mp4: ffmpeg -i test.wmv -vcodec libx264 -acodec aac out.mp4 2.mp4 转

ffmpeg常用转换命令

音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav 3.转换mp3到wav: ffmpeg -i DING.mp3 -f wav test.wav 4.转换wav到amr: ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr

FFMPEG 音频转换命令

音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav 3.转换mp3到wav: ffmpeg -i DING.mp3 -f wav test.wav 4.转换wav到amr: ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr

Linux下ffmpeg的wav与amr相互转换

转载:http://blog.csdn.net/sanshipianyezi/article/details/78742621 转载:http://blog.csdn.net/szfhy/article/details/50441162 在linux下进行wav和amr的相互转换,如果是amr转为wav只需要ffmpeg即可 但是若wav转为amr则需要依赖ffmpeg和opencore_amrnb库. 完整下载地址:http://download.csdn.net/download/sansh

ffmpeg sox 音频转换 MP3 转 wav

转自:https://blog.csdn.net/xiaoshulf/article/details/78657172 1 windows 下 mp3 文件和 wav 文件的 转换 实现代码: 1 ffmpeg -i 20171016test.mp3 -f wav "201710160test.wav" 2 windows 下 wav/mp3 文件的切分 实现代码: 1 ffmpeg -i forsegment.wav -f segment -segment_time 30 -c co

c# ffmpeg常用参数

c#  ffmpeg常用参数 转换文件格式的同时抓缩微图: ffmpeg -i "test.avi" -y -f image2 -ss 8 -t 0.001 -s 350x240 'test.jpg' 对已有flv抓图: ffmpeg -i "test.flv" -y -f image2 -ss 8 -t 0.001 -s 350x240 'test.jpg' -ss后跟的时间单位为秒 Ffmpeg转换命令 ffmpeg -y -i test.mpeg -bitex

常用 ADB 命令[ZZ]

https://blog.csdn.net/yang_zhang_1992/article/details/71404186 1. 显示当前运行的全部模拟器: adb devices 2. 对某一模拟器执行命令: adb-s 模拟器编号命令 3. 安装应用程序: adb install -r 应用程序.apk 4. 获取模拟器中的文件: adb pull <remote> <local> 5. 向模拟器中写文件: adb push <local><remote&g

Linux服务器开发常用的命令以及遇到的问题

1. 什么是linux服务器load average? Load是用来度量服务器工作量的大小,即计算机cpu任务执行队列的长度,值越大,表明包括正在运行和待运行的进程数越多.参考资料:http://en.wikipedia.org/wiki/Load_average 2. 如何查看linux服务器负载 可以通过w,top,uptime,procinfo命令,也可以通过/proc/loadavg文件查看. 3. 服务器负载高怎么办? 服务器负载(load/load average)是根据进程队列的

Oracle SQL*plus常用的命令和函数

Oracle中常用的命令和函数,做个整理,以备以后用到,方便查阅. 常用命令: 连接sqlplus命令行下运行cmd进入,如以sys模式登陆,命令如下:(1).sqlplus "sys/zhb126 as sysdba" (2).sqlplus/nolog  connect sys/zhb126 as sysdba (3).sqlplus scott/tiger 启动数据库实例 startup --启动数据库的同时启动控制文件.数据文件 startup mount --启动数据库的同时