音频转换:

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 .2k -ar  -ac  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解码器的情况。

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

  1. ffplay的快捷键以及选项 FFmpeg 基本用法 FFmpeg常用基本命令 ffmpeg常用转换命令,支持WAV转AMR

    ffmpeg -i 32_mkv_h264_718x480_ac3.mkv  -codec copy -bsf:v h264_mp4toannexb  -f mpegts xx.ts ./ffmpeg ...

  2. ffmpeg常用转换命令

    音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenh ...

  3. FFMPEG 音频转换命令

    音频转换: .转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 .转换amr到wav: ffmpeg -acodec libamr_nb -i shenhux ...

  4. FFMpeg 常用命令格式转换,视频合成

    FFmpeg都是命令行的,用起来肯定不方便.但是,这对技术宅应该不成问题.下面,我就罗列一些比较实用的使用方法吧. FFmpeg的下载与安装 FFmpeg是开源的.但我们不必去下载它的源代码.下载已经 ...

  5. Linux下ffmpeg的wav与amr相互转换

    转载:http://blog.csdn.net/sanshipianyezi/article/details/78742621 转载:http://blog.csdn.net/szfhy/articl ...

  6. ffmpeg 常用命令汇总

    最近工作常用到ffmpeg 做一些视频数据的处理转换等,用来做测试,今天总结了一下,并参考了网上一些部分朋友的经验,一起在这里汇总了一下,有需要的朋友可以收藏测试一下,有问题可以回帖交流. 1.ffm ...

  7. FFmpeg 常用命令收集

    FFmpeg 常用命令 合并视频 ffmpeg -i "KTDS-820A_FHD.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts i ...

  8. 第二章 FFmpeg常用命令

    2.1 FFmpeg常见的命令大概分为6个部分 ffmpeg信息查询部分 公共操作参数部分 文件主要操作参数部分 视频操作参数部分 字幕操作参数部分 2.1.1 FFmpeg的封装转换 FFmpeg ...

  9. FFmpeg常用命令学习笔记(二)录制命令

    录制命令 1.FFmpeg录屏命令 ffmpeg -f avfoundation -i 1 -r 30 out.yuv -f:指定使用avfoundation采集数据 -i:指定从哪采集数据,它是一个 ...

随机推荐

  1. [原创]首次制作JQueryUI插件-Timeline时间轴

    特点: 1. 支持多左右滚动,左右拖动. 2. 时间轴可上下两种显示方式. 3. 支持两种模式的平滑滚动/拖动. 4. 行压缩(后续版本此处可设置是否开启,上传的代码不带这个功能). 5. 支持hov ...

  2. 虚基类&虚继承

    发现这个月准备竞赛完全没有更新哎... 改了下某华大一c++测试题...网上对虚继承讲的要么太繁琐要么不到位,自力更生 #include<iostream> #include<fst ...

  3. ClearContainer 网络部分源码分析

    // cc-oci-runtime/src/oci.c /*! * Create the state file, apply mounts and run hooks, but do not star ...

  4. Caffe 单独测试添加的layer

    转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/ 一般我们在使用Caffe的时候,可能需要根据自己的任务需求添加 ...

  5. 洛谷P1134 阶乘问题[数论]

    题目描述 也许你早就知道阶乘的含义,N阶乘是由1到N相乘而产生,如: 12! = 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 = 479,001, ...

  6. UVA数学入门训练Round1[6]

    UVA - 11388 GCD LCM 题意:输入g和l,找到a和b,gcd(a,b)=g,lacm(a,b)=l,a<b且a最小 g不能整除l时无解,否则一定g,l最小 #include &l ...

  7. Grumpy: Go 上运行 Python!

    Google 运行数百万行Python代码用于驱动youtube.com和YouTube API的前端服务器,每秒可以提供数百万的请求! YouTube的前端运行在CPython 2.7上,所以我们投 ...

  8. bash/shell编程学习(1)

    1)定义变量 myvar=abc #注:等号前后不能加空格 #或 myvar="abc" #或 myvar='abc' #注:如果变量后面的值中间本身没有空格,加不加引号都无所谓, ...

  9. python 列表 总结

    在python里创建列表和字典非常简单,这里总结一下它们的常用方法 1.创建列表 myArry = ["one", "two", "three&quo ...

  10. ECMAScript 5(ES5)中bind方法简介备忘

    一直以来对和this有关的东西模糊不清,譬如call.apply等等.这次看到一个和bind有关的笔试题,故记此文以备忘. bind和call以及apply一样,都是可以改变上下文的this指向的.不 ...