FFMPEG妙用

拼接MP4视频

先将 mp4 转化为同样编码形式的 ts 流,因为 ts流是可以拼接的,先把 mp4 封装成 ts ,然后拼接 ts 流, 最后再把 ts 流转化为 mp4

shell> ffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts
shell> ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts
shell> ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4

aac转mp3

shell> ffmpeg -i a.aac -acodec libmp3lame b.mp3

aac转wav

shell> ffmpeg -i a.aac -ar 16000 -y a.wav

mp3转wav

shell> ffmepg -i b.mp3 -f wav b.wav

aac转pcm

shell> ffmpeg -y -i a.aac -acodec pcm_s16le -f s16le -ac 1 -ar 16000 a.pcm

获取音频时长

shell> ffmpeg -i a.aac | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//