ffmpeg解码mp3文件|我想用ffmpeg命令行转换一个视频文件视、音频编码格式不变只是将画面旋转90度请问命令行该如何写

|

㈠ 我想用ffmpeg命令行转换一个视频文件,视、音频编码格式不变,只是将画面旋转90度,请问命令行该如何写

在你的转码命令里面添加上-vf rotate=PI/2或者版-vf rotate=3*PI/2,例如权ffmpeg -i E:\ffmpeg\test.mp4 -y -vf rotate=PI/2 E:\ffmpeg\dest1.mp4

㈡ ffmpeg 连接 mp3

先写个文本的列表文件list.txt,内容为file '1.mp3'file '2.mp3'file '3.mp3'然后用命令,如果音频参数一致可以ffmpeg -f concat -i list.txt -c a.mp3这时a.mp3就是合并生成的如果音频参数不一致可以重新编码成aac/MP4ffmpeg -f concat -i list.txt -vn -acodec libvo_aacenc -ab 128k a.m4a

㈢ 怎样使用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 mp3a ADU (Application Data Unit) MP3 (MPEG audio layer 3)D A D mp3afloat 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然后编译: makemake 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 losslessEA libmp3lame libmp3lame MP3 (MPEG audio layer 3)EV ljpeg Lossless JPEGD 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格式的,有没有人有简单的方法

从网上下载音频处理软件《Gold Wave》,还可以下载一个《GOLDWAVE使用教程II.pdf》。将音频输出插口(耳机)和电脑的线路输入插孔(蓝色的那个)用两端都是3.5mm插头的音频线连接好,运行《Gold Wave》,建一个新的“音频文件”,按下《控制器》的“录音”键(红色圆形按钮),播放视频,录完后,按下《控制器》的“停止”键(蓝色方形按钮)。将该音频文件保存为“mp3”格式,或你希望的其它格式。

㈤ ios ffmepg 解码mp3成功之后怎么处理

IOS平台下的ffmpeg编译简介,写在经历了n翻折腾之后。首先感谢Cocoachina中众多的资源IOS下基于H264的音视频网传前后走通花了差不多1个多月时间。先说下总的流程如下:a)从网络接收H264视频数据 adpcm音频数据b)网络数据输入到ffmpeg解码库 音频数据输入到音频解码库(音频解码库为自己所写)c)ffmpeg解码出YUV420P视频数据 音频解码出PCM数据d)将YUV420P数据转换为RGB24图像 用UIImageview输出 用OPENGL ES输出也可以(两种方法均验证过可行)e)将音频PCM数据输入OPEN AL中输出f)以上为整个流程,d1在iphone4上可以达到16桢 左右的效率下面来说说FFMPEG部分。刚开始接触ffmpeg的时候遇到的第一个问题就是编译问题。1 下载FFMPEG代码,该步比较简单可在ffmpeg官方网站上下载(我下的是0.6.5的,下了0.10的没编译过部分arm指令)2 用gcc进行编译,写配置信息。该步骤浪费了太多的精力和时间,主要是没有在ios平台下的经验导致。1)编译的时候不明白版本问题,编译后才发现每次编译需要制定不同的处理器模式为3种:armv6 armv7 i386版本2)configure配置信息,前期犯了各种错误。还是对于ffmpeg的configure配置参数步了解导致。另外用gcc编译的经验也步丰富。最终领悟出:配置信息主要为配置gcc的位置和汇编的编译器位置。configure命令如下(该段配置信息为iFrameExtractor中。该demo也让我学习到很多知识,需要的可以在网上搜索下载):./configure –disable-doc –disable-ffmpeg –disable-ffplay –disable-ffserver –disable-avfilter –enable-cross-compile –arch=arm –target-os=darwin –cc=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc –as='gas-preprocessor/gas-preprocessor.pl /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' –sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk –cpu=cortex-a8 –extra-cflags='-arch armv7' –extra-ldflags='-arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk' –enable-pic配置成功后 make即可编译出armv7版本的lib*。a文件。到此既可以生成ios下需要的ffmpeg静态库文件,需要用的时候拖入到项目中即可。另外还需要添加libbz 、libz的framework补充:在iOS6中编译出的。a的库在armv7s下编译目前有问题,可以修改target的Valid Architectures只支持Armv7去掉Armv7s

㈥ 怎么通过ffmpeg将音频文件转换成Mp3转

可以的。用千千静听、GOLDWAVE、全能音频转换通都可以。用千千静听转换的步骤:把要转换的歌曲添加进千千的媒体库,右键单击歌曲名--转换格式--默认就是输出MP3格式。如果需要多首同时转换,只需要按住CTRL键,依次点击这些歌曲名就可以了。可能是输入的pcm或输出MP3没有指定采样率和频道参数把样本发一个给我可以看看

㈦ ffmpeg音频解码出错,实在不知道是什么问题

新版的格式工厂是容易出这个问题,有两个解决办法。要么找DLL文件修复工具修复你丢失的ffmpeg.dll文件,要么用回格式工厂1.85 版,在1.85 版中修正了在音频文件转换时显示的"FFMpeg.dll missing"错误! 软件下载:./quest

㈧ 如何通过ffmpeg将音频文件转换成Mp3 转

用千千静听、GOLDWAVE、全能音频转换通都 用千千静听转换步骤: 要转换歌曲添加进千千媒体库右键单击歌曲名--转换格式--默认输MP3格式需要首同转换需要按住CTRL键依点击些歌曲名

㈨ ffmpeg解码mpeg4编码格式的音频应该用哪个codec

有mpeg4格式的音频么,是视频吧,一般是CODEC_ID_MPEG4,解码的时候根本不需要知道用什么codec的,打开文件后可以直接获取到该文件视频用的什么编码器,音频用的什么编码器,只是在编码部分时才需要指定用什么codec,解码部分不用这么麻烦的

㈩ ffmpeg 怎么让FLV格式转化为MP3格式

flv转换MP3格式有不少软件可以达到效果,网络搜索《狸涡视频转换器》,在官方下载好软件操作过程,将文件添加进转换器以后,在预置方案那里选择常用音频格式MP3,最后保存转换出来就可以了。望采纳


赞 (0)