ffmpeg avi 转aac 12000 hz flv失败,得多绕几圈。。。

2019-06-11 11:22:11 浏览数 (1)

源avi文件参数。

代码语言:javascript复制
Video: CRAM 720x576 1fps 120kbps [V: HyperCam Video (msvideo1, rgb555le, 720x576, 120 kb/s)]
Audio: PCM 11025Hz mono 88kbps [A: pcm_u8, 11025 Hz, 1 channels, s8, 88 kb/s]

直接 ffmpeg -i a.avi -o o.flv 失败。

得分以下步骤:首先 avi 转 mp4,mp4再转flv 同时flv对声音频率有要求,只能事11025 22050 44100. 要转成 12000得flv,需要从flv再转一次。

第一步: avi -> mp4:

代码语言:javascript复制
for /r . %%a in (*.avi) do ffmpeg -i "%%~na.avi"  -pix_fmt yuv420p -c:v libx264   "0%%~na.mp4"

转后得mp4参数如下:

代码语言:javascript复制
Video: MPEG4 Video (H264) 720x576 1fps 56kbps [V: h264 high L2.2, yuv420p, 720x576, 56 kb/s]
Audio: AAC 11025Hz mono 52kbps [A: SoundHandler (aac lc, 11025 Hz, mono, 52 kb/s)]

第二步:mp4 转 flv,这里 MP4直接转12000得flv还不行提示:

代码语言:javascript复制
FLV does not support sample rate 12000, choose from (44100, 22050, 11025)

需要命令:

代码语言:javascript复制
for /r . %%a in (*.mp4) do ffmpeg -i "%%~na.mp4" -vcodec copy  "0%%~na.flv"

转换后得flv参数:

代码语言:javascript复制
Video: MPEG4 Video (H264) 720x576 1fps 39kbps [V: h264 high L2.2, yuv420p, 720x576, 39 kb/s]
Audio: MP3 11025Hz mono 16kbps [A: mp3, 11025 Hz, mono, 16 kb/s]

然后再转成 12000得aac flv,命令如下:

代码语言:javascript复制
for /r . %%a in (*.flv) do ffmpeg -i "%%~na.flv" -vcodec copy -c:a aac -ar 12000 "0%%~na.flv"

转换后得flv参数如下:

代码语言:javascript复制
Video: MPEG4 Video (H264) 720x576 1fps [V: h264 high L2.2, yuv420p, 720x576]
Audio: AAC 12000Hz mono 69kbps [A: aac lc, 12000 Hz, mono, 69 kb/s]

OK,得到了 AAC 12000HZ得 flv文件。

0 人点赞