使用 FFmpeg 命令拼接mp3音频文件异常问题及解决方法

来源:脚本之家  责任编辑:小易  

ffmpeg.exe -i "源音频文件.ape" -b:a 192k -aco

使用FFmpeg命令拼接多个mp3格式的音频文件时报错抛出异常,使用命令格式如下:

可以的。用千千静听、GOLDWAVE、全能音频转换通都可以。 用千千静听转换的步骤: 把要转

ffmpeg -i 1.mp3 -i 2.mp3 -filter_complex '[0:0] [1:0] concat=n=2:v=0:a=1 [a]' -map [a] out3.mp3

把音频文件转换成MP3的格式的软件我知道一款比较简单好操作的软件 可以推荐你用 “狸蜗视频转换器

异常错误提示信息:

ffmpeg.exe -i "源音频文件.ape" -b:a 192k -aco

Automatic encoder selection failed for output stream #0:0. Default encoder for format mp3 (codec mp3) is probably disabled. Please choose an encoder manually.

您好,很高兴为您解答。可参考:http://www.360doc.com/content/1

使用Google搜索后发现问题原因在于只有mp3的解码库,没有mp3编码库导致的,需要添加libmp3lame第三方库。

午后阳光透过落地窗洒在原木色的桌子上,桌上摆着用陶瓷小盆盛装的绿色多肉,咕嘟咕嘟的咖啡机香味飘满整个小店,猫咪慵懒的趴在地上睡午觉……这也许是很多人梦想中的咖啡馆。本质上大家的想开咖啡店的想法是一种心理现象——“咖啡幻觉”,很多人并不仅是因为赚钱盈利而开咖啡馆,他们可能喜欢的是一种感觉,就像书吧、咖啡店这样的元素,咖啡幻觉就像是恋爱中的“占有欲”。有一撮人辞掉工作选择开一家咖啡馆或者是其他的小店(像位于宇宙中心五道口的西少爷肉夹馍店),或者疲于朝九晚五的工作应酬有一点积蓄想要过上轻松的生活,或者在五光十色鱼龙混杂的社交中累觉不爱,曾经听过《一样的月光》节目请到一个西安城墙根咖啡馆店主,他就喜欢

libmp3lame第三方库安装方法: 下载 libmp3lame源码压缩包并解压 打开命令行窗口并cd进入libmp3lame根目录,执行以下命令:

说实话,我对金星感觉一般。不喜欢,不讨厌。不因为她是变性人而去贬低她,鄙夷她,辱骂她。也不会因为她的犀利言论亦或是其他什么大家公认的优点而去捧她。金星的走红并不是因为她的舞蹈,虽然她是个知名舞蹈家。金星的走红,是因为她的言行。犀利,直戳要害,敢说我们不敢说的话。但是,金星在心理上仍然有封建思想,她强调女人要及早结婚生子,相夫教子,克制隐忍。多么像佟丽娅的父亲。她太想自己成为真正的“女人”了。尽管做了变性手术,生理上变成了女人,但是她仍然要向世人证明,我守妇道,我有女德。我现在所有的一切一切,都是女人该有的样子。你说她言辞犀利,但是当她站在奇葩说的舞台上时,她说不出比专业辩手更具反转性的话。她的

./configure make sudo make install

各种动物刚出生时的样子,你肯定没见过的~~!!!刚在网上看到的,感觉太可爱鸟!~老虎宝宝,像一只大花猫!这么萌的长颈鹿你见过吗?羊驼(草泥马),小时候竟然这么萌!!!猪宝宝,好想捏捏它的鼻子熊猫宝宝,想抱抱有木有…金鱼宝宝,太可爱啦狐狸宝宝猩猩宝宝,小姑娘你好漂酿。法斗宝宝,肉肉的金毛宝宝哈士奇,哈哈哈哈小贵宾,还没有可乐罐大呢!小猫咪,看得我心都化了还记得少年派的奇幻漂流里的狐獴吗?小时候是这样的小黄鸡也萌萌哒。

PS:在执行make命令时Mac系统可能会抛出异常:"ld: symbol(s) not found for architecture x86_64"

要说到海马,在目前的国内市场中的表现相当的不好。尤其是在自主品牌竞争越来越激烈的时候,海马汽车像是没有了精气。旗下的车型,落伍的落伍,就算不落伍的,推出的车型也是十分的杀马特。咱们想想,如果说买轿车的话,谁还会想起海马车型,其实海马现在旗下有一款产品力相对较好的车型,福美来。只是,海马在营销方面以及产品的造型设计方面并没有跟随主流,导致福美来销量相当的不给力。此外,就是海马的SUV车型了,在过去的时候,海马S5市场中的表现还说得过去。但现在,S5的销量也是越来越挫。一方面的原因是紧凑型SUV市场本来越来越激烈。另一方面就是,海马S5在产品力上真的是不行了。当然了,除了上面的。海马在国产车中的地

论坛上提供的解决办法是:将libmp3lame目录下的libmp3lame.sym文件中的lame_init_old这项删去即可。

3.libmp3lame库编译安装成功后开始编译安装FFmpeg。

4.在安装FFmpeg之前需要先将本机上已安装的FFmpeg卸载干净,下载FFmpeg源码后进入根目录,首先需要配置第三方库:

./configure --enable-shared --enable-libmp3lame --disable-yasm --prefix=/usr/local/ffmpeg

5.配置完成后,执行编译安装命令与libmp3lame库命令一样:

make sudo make install

6.安装完成后,将FFmpeg的bin目录添加到.bash_profile(FFmpeg安装后的目录是在配置configure时设置的"/usr/local/ffmpeg")

执行完以上命令后,基本上就可以解决上述问题了。

总结

到此这篇关于使用 FFmpeg 命令拼接mp3音频文件异常问题及解决方法的文章就介绍到这了,更多相关FFmpeg 拼接mp3音频文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

ffmpeg合并音频 命令行

windows自带的命令行合并音频只能合MP3的吧

上图,两种形式,一种是合并在源文件夹,第二行是合并新文件到另外一个夹。

更多追问追答追问不能用FFmpeg吗?追答先写个文本的列表文件list.txt,内容为

file '1.mp3'

file '2.mp3'

file '3.mp3'

然后用命令,如果音频参数一致可以

ffmpeg -f concat -i list.txt -c copy a.mp3

这时a.mp3就是合并生成的

如果音频参数不一致可以重新编码成aac/MP4

ffmpeg -f concat -i list.txt -vn -acodec libvo_aacenc -ab 128k a.m4a

-----------------------

dos命令不是一样可以么追问文件上了几千个,会不会出错之类的我试过了,合并20没问题但是合并全部(4000)个的时候一直有提示,没问题吗

虽然这提示多的恐怖,但是测试了一下貌似没有问题,谢了!追答应该没问题吧

怎样使用ffmpeg 进行音频解码

安装完成ffmpeg后,就可以使用ffmpeg进行音频文件格式转换。比如 ./ffmpeg -i /media/1.mp3 /media/1.wav, 通过该命令行可以将/media文件夹下1.mp3文件转换成WAV格式的。

但是反过来 ./ffmpeg -i /media/1.WAV /media/1.MP3 却不能转换成Mp3格式,提示如下错误(找不到编码器):

Stream mapping:

Stream #0:0 -> #0:0 (wav -> ?)

Encoder (codec none) not found for output stream #0:0

如果强行指定编码器 ./ffmpeg -i /media/1.wav -acodec mp3 /media/1.mp3, 仍提示找不到编码器错误:

Unknown encoder 'mp3'

这是因为,ffmpeg虽然是个开源软件,但因为具体格式的版权原因,它并没有包含所有的编解码格式,或者有个格式只有对应的解码器,但没有编码器,比如 Mp3就只有解码器,能播放Mp3文件,但却没有Mp3的编码器,无法将其它格式转换成Mp3。可以通过命令行 ./ffmpeg -codecs 查询编解码配置,第一个D表示Decoder,该格式能够解码;E表示Encoder,该格式可以编码。从中可以看出Mp3不能编码,Mp2倒是即可解码 也可编码。如何解决这个问题呢?

D A D mp1 MP1 (MPEG audio layer 1)

D A D mp1float MP1 (MPEG audio layer 1)

DEA D mp2 MP2 (MPEG audio layer 2)

D A D mp2float MP2 (MPEG audio layer 2)

D A D mp3 MP3 (MPEG audio layer 3)

D A D mp3adu ADU (Application Data Unit) MP3 (MPEG audio layer 3)

D A D mp3adufloat ADU (Application Data Unit) MP3 (MPEG audio layer 3)

我的第一个方法是自己写代码来完成。源码文件中,Allcodecs.c中对各个格式进行注册,先修改Mp3的注册行,改为同时注册解码器和编码器:

REGISTER_ENCDEC (MP2, mp2);

REGISTER_DECODER (MP2FLOAT, mp2float);

REGISTER_DECODER (MP3, mp3) // 此行修改为 REGISTER_ENCDEC (MP3, mp3)

然后新增Mp3编码器的实现Struct,里面Init函数、encode函数、close函数使用Mp2的函数,因为我也不知道如何去实现Mp3的函数,或者说到代码实现级我也不知道Mp3和Mp2的区别在哪。

AVCodec ff_mp3_encoder = {

.name = "mp3",

.type = AVMEDIA_TYPE_AUDIO,

.id = CODEC_ID_MP3,

.priv_data_size = sizeof(MpegAudioContext),

.init = MPA_encode_init,

.encode = MPA_encode_frame,

.close = MPA_encode_close,

.sample_fmts = (const enum AVSampleFormat[]){AV_SAMPLE_FMT_S16,AV_SAMPLE_FMT_NONE},

.supported_samplerates= (const int[]){44100, 48000, 32000, 22050, 24000, 16000, 0},

.long_name = NULL_IF_CONFIG_SMALL("MP3 (MPEG audio layer 3)"),

.defaults = mp3_defaults,

};

重新编译上线。 用命令行./ffmpeg -i /media/1.WAV /media/1.MP3 试了一下,能成功生成1.mp3文件,文件也能播放。似乎没有问题了,单用 file /media/1.mp3 查看了一下,发现文件不是Mp3格式的,而是Mp2格式的:

/media/1.mp3: MPEG ADTS, layer II, v1, 128 kbps, 44.1 kHz, Stereo

很遗憾,自行修改代码的方式行不通,因为不是每个编解码格式协议的专家,自行修改代码失败的风险很大,不仅是Mp3,还有一些其他格式比如AMR OGG H.263是没有编码器的。所以,第二个方案,使用成熟的第三方编码器和ffmpeg结合。

Mp3比较好的开源第三方库是libmp3lame(简称Lame)。我下了一个最新版本(3.99.4)的Lame源码,编译它:

首先配置: ./configure --prefix=/shared --enable-shared --enable-static

然后编译: make

make install

生成文件: 动态链接库 /shared/lib/libmp3lame.so 和 静态链接库 /shared/lib/libmp3lame.a。这里只需要使用动态链接库,将.so文件拷贝到/lib中,这个文件夹是动态链接库的默认搜索路径, 让ffmpeg运行时可以找到。

然后对ffmpeg配置libmp3lame: ./configure --enable-libmp3lame

重新编译ffmpeg,运行转化命令,看看效果如何。

首先执行 ./ffmpeg -codecs 查看可用编解码的变化,可以看到多出了libmp3lame编码器,带E的:

D V D lagarith Lagarith lossless

EA libmp3lame libmp3lame MP3 (MPEG audio layer 3)

EV ljpeg Lossless JPEG

D V D loco LOCO

然后执行 ./ffmpeg -i /media/1.WAV /media/1.MP3, 生成1.mp3,用File命令查看,确实是Mp3文件。

/media/1.mp3: Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v1, 128 kbps, 44.1 kHz, Stereo

大功告成,问题解决。

也可在命令行中指定编解码生成Mp3文件:./ffmpeg -i /media/1.WAV -acodec libmp3lame /media/1.MP3.

如何使用命令行工具将MP3文件转换为wav?

我刚练熟的ffmpeg

8000hz采样率,单声道,每个采样样本8bit 这种转换只要

ffmpeg -i in.mp3 -acodec pcm_s8 -ac 1 -ar 8000 -vn out.wav

mplayer可以用mencoder,对wav的细节处理也要间接用ffmpeg

mencoder in.mp3 −oac lavc -lavcopts acodec=pcm_s8:o=ac=1,ar=8000 -of lavf -o out.wav

ffmpeg 连接 mp3

先写个文本的列表文件list.txt,内容为

file '1.mp3'

file '2.mp3'

file '3.mp3'

然后用命令,如果音频参数一致可以

ffmpeg -f concat -i list.txt -c copy a.mp3

这时a.mp3就是合并生成的

如果音频参数不一致可以重新编码成aac/MP4

ffmpeg -f concat -i list.txt -vn -acodec libvo_aacenc -ab 128k a.m4a

FFmpeg将视频和音频合并

分步来

你是源视频没声音,并不代表着一定没有音频轨

1、先去除源视频的音频轨

ffmpeg -i /path/to/input.mp4 -c:v copy -an /path/to/input-no-audio.mp4

2、再把新的音频混进去

ffmpeg -i /path/to/input-no-audio.mp4 -i input.mp3 -c copy /path/to/output.mp4

是一个源文件配一个-i,而不是一个-i后面把所有文件都写上

  • 本文相关:
  • java使用ffmpeg合成视频和音频并获取视频中的音频等操作(实例代码详解)
  • android采用ffmpeg实现音频混合与拼接剪切
  • php利用ffmpeg提取视频中音频与视频画面的方法详解
  • asp.net音频转换之.amr转.mp3(利用ffmpeg转换法)
  • 使用ffmpeg 合并aac格式音频文件的方法
  • 动态语言、动态类型语言、静态类型语言、强类型语言、弱类型语言
  • 24种编程语言的hello world程序
  • 详解hadoop 运行环境搭建过程
  • 阿里巴巴开源 dragonwell jdk 最新版本 8.1.1-ga 发布
  • ie 打开服务器下的mht文件的实现方法
  • 一个30多年编程经验的程序员总结
  • 获取键盘键的值 集合 方便监控键盘事件
  • github代码常用指令(小结)
  • 使用react native创建以太坊钱包实现转账等功能
  • 全民学编程之 hello world
  • ffmpeg合并音频 命令行
  • 怎样使用ffmpeg 进行音频解码
  • 如何使用命令行工具将MP3文件转换为wav?
  • ffmpeg 连接 mp3
  • FFmpeg将视频和音频合并
  • 怎么通过ffmpeg将音频文件转换成Mp3 转
  • 怎么通过ffmpeg将音频文件转换成Mp3 转
  • 怎么通过ffmpeg将音频文件转换成Mp3 转
  • ffmpeg压缩mp3后为什么音频播放时间减少了
  • 怎么通过ffmpeg将音频文件转换成Mp3 转
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved