ffmpeg视频处理
最近,从youtube上下载了一些视频,文件格式是.mkv的,那如何可以将视频无损的转换为,mp4格式呢?
首先,你的电脑需要安装一个神级的软件程序ffmpeg,安装方法请自行百度,很多了,我就不重复了,请注意要设置环境变量。
安装好以后,在你所需要的转换的视频文件夹的地址栏,输入:cmd 回车
此时,cmd命令窗口就会切换到你目前视频地址。执行:
ffmpeg -i A.mkv -vcodec copy A.mp4
注意:
A就是你的视频文件名,请自行修改。
-vcodec copy 命令是视频不重新编码,快速转换。
当我们有时候需要利用h264重新编码时,执行:
ffmpeg -i A.mkv -vcodec h264 A.mp4
当我们需要将一个无声音的视频文件,比如youtube下载下来的高清视频文件.webm和音频文件.m4a进行合并在一起,并转换为mkv或mp4时,执行
ffmpeg -i A.webm -i A.m4a -vcodec copy A.mkv
ffmpeg -i A.webm -i A.m4a -vcodec copy A.mp4
注意:
此时转换出来的视频,很有可能是有声音无画面,这个似乎是ffmpeg的bug导致的,网上有很多这样的问题,建议还是利用h264重新编码转换,如何做?请看上面的示例,要学会举一反三。
最后来说一下,当我们的文件夹中有很多mkv文件的时候,如何实现批量mkv转换mp4呢?
,在视频所在文件夹新建记事本,并复制一下代码,最后文件后缀txt修改为bat,并双击执行:
@echo off & title
cd /d %~dp0
for %%a in (*.mkv) do (
ffmpeg -i "%%~sa" -y -vcodec copy -acodec copy "%%~na.mp4"
)
pause
以上代码是视频不进行重新编码,如果需要h264重新编码,请学着举一反三,不要只会复制和粘贴。
ffmpeg图片处理
补充一下:视频格式转换GIF图片的代码,因为目前利用迅雷播放器转换出来的效果不理想或找软件还收费,特此一下代码:
直接转换mp4到gif:
ffmpeg -i c.mp4 c.gif
做一些优化修改进行转换mp4到gif,-ss 2 -t 5,从第2秒的地方开始,往后截取5秒钟, -r 用于设定帧数. 通常Gif有15帧左右就比较流畅了:
ffmpeg -ss 2 -t 5 -i output1.mp4 -s 272x480 -r 15 output1.gif
ffmpeg音频处理
补充内容:
利用ffmpeg完成WAV转换MP3的音频格式,批量执行代码:
@echo off & title
cd /d %~dp0
for %%a in (*.wav) do (
ffmpeg -i "%%~sa" -f mp2 "%%~na.mp3"
)
pause
利用ffmpeg完成wma转换MP3的音频格式,批量执行代码:(平均比特率为192kb每秒,采样率为44100hz的mp3文件)
@echo off & title
cd /d %~dp0
for %%a in (*.wma) do (
ffmpeg -i "%%~sa" -ab 192 -ar 44100 "%%~na.mp3"
)
pause
结尾
最后,不得不感叹ffmpeg的强大之处,有了它,还需要什么视频转换软件,还需要什么视频编辑软件?
ffmpeg最大的优点就是:非常流畅,快速搞定,不像某些封装好的软件,进度条只见动不见走。
ffmpeg最大的缺点就是:可能就是可视化界面不好吧?不过似乎已经有人给它穿了界面的衣服,有兴趣的自己百度一下,不过对我来说,代码执行更省事,简单明了,大多数还不是复制和粘贴,简单调整一下,很快就好了。