1.使用 FFmpeg 将视频转换为 MP3 及常规音频方法
(1)将视频转换为 MP3 的基本命令(打开终端并导航到音频文件所在的目录,然后运行以下 FFmpeg 命令:)
ffmpeg -i input_video.mp4 output_audio.mp3
(2)调整 MP3 音频质量
ffmpeg -i input_video.mp4 -q:a 2 output_audio.mp3
2.使用 FFmpeg 批量转换音视频的高级用法
(1)设置目录结构
- 创建一个名为 batch 的主文件夹。
- 在批处理文件夹中,创建两个名为输入和输出的子文件夹。
- 将所有要转换的视频放入输入文件夹。
- 在执行任何命令前,请确保导航到 batch 的父目录。
为了执行批量转换,我们将使用 for 循环迭代处理输入文件夹中的每个视频。具体语法因操作系统而异。
(2)使用 FFmpeg 将 MP4 批量转换为 MP3
导航至批处理目录并执行以下命令:
FOR /F "usebackq delims=|" %F IN (`dir /s /b /A:-D "input\*.mp4"`) DO ffmpeg -i "%F" -acodec mp3 "output\%~nF.mp3"
该命令的作用如下:
- 循环播放输入目录中的 .mp4 文件。%F 代表循环中的每个文件。我们使用 dir /s /b /A:-D 来获取目录中的 .mp4 视频。
- 每次迭代都会执行 ffmpeg -i “%F” -acodec mp3 “output\%~nF.mp3” 命令。
- 我们使用 -i 选项指定输入文件,使用 -acodec 选项指定 mp3 音频编解码器。
- 最后,我们使用 output\%~nF.mp3 将转换后的文件存储在输出目录中,并使用原始视频的名称为每个文件命名。
3.使用 FFmpeg 将多种格式文件批量转换为 MP3
源文件可能不全是 mp4 文件,也可能是不同的文件,例如 .mp4、.mov 或 .avi 文件的集合。要批量转换多种格式,我们可以修改命令如下:
FOR /F "usebackq delims=|" %F IN (`dir /s /b /A:-D "input\*.mp4" "input\*.mov" "input\*.avi"`) DO ffmpeg -i "%F" -acodec mp3 "output\%~nF.mp3"
4.使用 FFmpeg 将通配符批量转换为 MP3
在 Windows 上,还可以转换一个目录中的所有文件,无论其扩展名是什么。让我们看看如何做到这一点:
FOR /F "usebackq delims=|" %F IN (`dir /s /b /A:-D "input\*.*"`) DO ffmpeg -i "%F" -acodec mp3 "output\%~nF.mp3"
我们使用 input\*.* 表达式来处理和转换输入目录内的所有文件,无论其表达式如何。
5.使用 FFmpeg 将多种格式文件批量转换为 MP4 格式
在第二个用例中,我们将把多种视频格式转换为 MP4。
如果你想用一种格式编辑所有文件,或想在浏览器或特定播放器中支持视频文件,这可能会很有用。
FFmpeg 可让你轻松转换文件格式,还能循环运行,批量处理转换过程。
在 Windows 上:
FOR /F "usebackq delims=|" %F IN (`dir /s /b /A:-D "input\*.mov" "input\*.mkv" "input\*.avi" "input\*.flv"`) DO ffmpeg -i "%F" -c:v libx264 -c:a aac "output\%~nF.mp4"
6.使用 FFmpeg 批量压缩多种格式文件
视频文件会占用大量磁盘空间。
清理空间的方法之一是转换视频、调整大小并使用有损压缩编解码器。
MP4 是压缩效果最好的格式之一,当分辨率标准化后,文件大小会更小。
在下面的示例中,我们将批量转换视频,把它们的大小调整为 720p,使用 h264 MP4 压缩算法,恒定速率系数 (CFR) 为 23(高压缩,低视觉质量损失)。
在 Windows 上:
FOR /F "usebackq delims=|" %F IN (`dir /s /b /A:-D "input\*.mov" "input\*.mkv" "input\*.avi" "input\*.flv"`) DO ffmpeg -i "%F" -vf "scale=-1:720" -c:v libx264 -crf 23 -c:a aac "output\%~nF_720p.%~xF"
7.如何使用 FFmpeg 对视频进行压缩高级教程
关于示例 MOV 文件
样本视频时长 28 秒,大小为 269MB,分辨率为 1920×1080 像素,帧频为 23.976,比特率为 78,270 kb/s。
它使用 Apple ProRes 422 LT 编解码器压缩,类似于现代 iPhone、大疆无人机或高端摄像机录制视频的方式。
音频编解码器为 PCM (pcm_s161e),这是一种无损音频压缩算法。
由于视频时间短,文件大小,因此非常有必要将视频压缩到更小的大小,同时保持较高的视觉质量
通过更改编解码器压缩视频
压缩视频的第一步是使用不同的视频压缩编解码器。
编解码器只是一种算法,用于将视频编码和压缩到更小的文件大小,同时不损失视觉质量。MP4 是最流行、最受广泛支持的视频格式之一。
这主要归功于它使用 H.264 编解码器提供的视频压缩选项–这是一种高效的开源压缩算法,可以创建非常小的文件大小,同时将视觉质量损失降到最低。
要将 MOV 文件转换为 MP4 并使用 H.264 编解码器进行压缩,请在保存 input.mov 示例文件的文件夹中运行以下命令:
ffmpeg -i input.mov -c:v libx264 -pix_fmt yuv420p output.mp4
以下是该命令的详细说明:
- -i input.mov:- 指定输入的视频文件。
- -c:v libx264: – 将视频压缩编解码器设置为 H.264 (libx264)。
- -pix_fmt yuv420p – 将 ProRes 像素格式(4:2:2)更改为 H.264 兼容像素格式(4:2:0)。
- output.mp4 – 输出文件的名称。
值得注意的是,你还可以使用其他编解码器和文件格式(容器)来压缩视频。
例如,你可以使用 H.265 编解码器作为 MP4 文件,也可以使用 VP9 编解码器作为 WebM 文件。
H265 编解码器和 MP4 容器
ffmpeg -i input.mov -c:v libx265 -pix_fmt yuv420p output.mp4
VP9 编解码器和 WEBM 容器
ffmpeg -i input.mov -c:v libvpx-vp9 -pix_fmt yuv420p output.webm
更多方法参考:https://www.dayanzai.me/ffmpeg-compress-video.html
格式转换之 FFmpeg 常用命令使用汇总:https://www.dayanzai.me/ffmpeg-command.html