当前位置: 欣欣网 > 码农

一分钟教你如何利用Ffmpeg实现高效批量视频压缩与格式转换!

2024-05-30码农

在当今数字化时代,视频无疑已成为卓越的传播媒介。无论是快速学习各类技术、追剧娱乐,还是在社交媒体上分享生活,视频都凭借其直观、生动的特性赢得广大用户的青睐。

然而,由于不同平台、软件或个人对视频格式有着特定的要求,我们时常需要进行视频格式的转换。为了满足这一需求,接下来,小编将为大家详细介绍如何在命令行下使用Ffmpeg批量转换视频。

01

Ffmpeg是什么

简单来说, Ffmpeg 是一款开源的多媒体处理框架,以其高效、灵活和全面的功能,被誉为多媒体处理领域的「瑞士军刀」。

Ffmpeg在视频处理领域具有举足轻重的地位,甚至许多收费的专业软件,其核心技术也是基于Ffmpeg构建的。

02

Ffmpeg下载与安装

Ffmpeg的下载地址:

https://github.com/BtbN/FFmpeg-Builds/releases

解压后是三个文件,本文的主角就是ffmpeg.exe:

03

Ffmpeg应用

接着在ffmpeg.exe所在的文件夹下鼠标右键打开控制台:

压缩视频体积:输入ffmpeg.exe -i .\demo.mp4 .\demo1.mp4。这条命令能在不影响视频观看体验的情况下压缩原来的视频文件,使用的过程中,有些视频能达到原来大小的1/8。

视频格式转换:ffmpeg.exe -i .\demo.flv .\demo1.mp4。mp4格式基本上是各大视频平台的默认格式,这条命令是将flv转化为mp4格式。其他格式的转换按照这条命令模板 ffmpeg.exe -i "源文件" "输出文件", 需要转换什么格式更改输出文件的后缀就好。

ffmpeg.exe-i .\demo.mp4 .\demo.avimp4aviffmpeg.exe-i .\demo.mp4 .\demo.flvmp4flvffmpeg.exe-i .\demo.mp4 .\demo.wmvmp4wmv

一条命令转换一个视频,如果有多个视频呢?AI是这么说的:

复制粘贴上述的代码,小小修改下:将ffmpeg改为.\ffmpeg.exe表示使用当前目录的ffmpeg.exe,如果给ffmpeg.exe添加环境变量就不用改。

Get-ChildItem -Filter *.mp4 | ForEach-Object { .\ffmpeg.exe -i $_.FullName -c:v libx264 -c:a aac "$($_.FullName).avi" }

接着让AI来精简以上命令:

稍微修改下,正常运行:

Get-ChildItem -Filter *.mp4 | ForEach-Object { .\ffmpeg.exe -i $_.FullName "$($_.BaseName).avi" }

涉及到bat脚本,首先要切换控制台,单击这个向下的小三角,点击命令提示符:

定位到ffmpeg.exe的位置,输入命令:

for %f in (*.avi) do ffmpeg -i "%f" "%~nf.mp4"

成功批量地将avi转换为mp4格式:

04

总结

  • ffmpeg.exe -i .\demo.mp4 .\demo1.mp4,压缩视频大小。

  • ffmpeg.exe -i .\demo.flv .\demo1.avi,视频格式转换。

  • for %f in (*.avi) do ffmpeg -i "%f" "%~nf.mp4", bat脚本的批量视频格式mp4的转换

  • Get-ChildItem -Filter *.mp4 | ForEach-Object { .\ffmpeg.exe -i $_.FullName "$($_.BaseName).avi" }, powershell的批量视频格式mp4的转换。

  • 基于以上,通过利用AI能力可拓展更多ffmpeg的用法,如音频提取、 音频格式转换、 智能转码等,这些增强的功能将极大地提升用户在不同场景下的应用体验,欢迎使用ChatU体验,平台地址: https://m.chatu.pro/