使用 FFmpeg 压缩视频
Compress Video with FFmpeg
我想在 Android 上使用 ffmpeg 以尽可能最好的质量压缩 1 分钟的视频。但时间短时质量低,质量好的时候压缩时间长。
你知道正确的命令吗?
FFMPEG 无能为力....低质量比高质量花费的时间更少,因此您必须在压缩速度和视频质量之间做出正确的折衷。
您没有告诉我们什么是大小尺寸(WxH 和以字节为单位的大小),也没有告诉我们当前的音频和视频编解码器(H264 或其他)。
例如1分钟的8K视频使用10Mbps比特率的HEVC编解码器转换需要1分钟以上,并且不能减少.....所以.....
以最快的编码速度获得“最佳质量”:
ffmpeg -i input.mp4 -c:v libx264 -crf 18 -preset veryfast output.mp4
- 这假设您想要 MP4 中的 H.264 + AAC。
- 如果输入音频是 AAC 添加
-c:a copy
。
- 如果
-preset veryfast
太慢使用 -preset ultrafast
.
- 有关更多信息和示例,请参阅 FFmpeg Wiki: H.264。
我用这个命令解决了问题
ffmpeg -i innerPath -c:v libx264 -preset superfast -b:a 256k -vf -b:v 1.5M -c:a aac targetFilePath
使用 FFMPEG 压缩视频:
ffmpeg -i videoPath -s 1280x720 -vf transpose=2 -metadata:s:v:0 rotate=90 -b:v 150k -vcodec mpeg4 -acodec copy outputFile
我想在 Android 上使用 ffmpeg 以尽可能最好的质量压缩 1 分钟的视频。但时间短时质量低,质量好的时候压缩时间长。 你知道正确的命令吗?
FFMPEG 无能为力....低质量比高质量花费的时间更少,因此您必须在压缩速度和视频质量之间做出正确的折衷。
您没有告诉我们什么是大小尺寸(WxH 和以字节为单位的大小),也没有告诉我们当前的音频和视频编解码器(H264 或其他)。 例如1分钟的8K视频使用10Mbps比特率的HEVC编解码器转换需要1分钟以上,并且不能减少.....所以.....
以最快的编码速度获得“最佳质量”:
ffmpeg -i input.mp4 -c:v libx264 -crf 18 -preset veryfast output.mp4
- 这假设您想要 MP4 中的 H.264 + AAC。
- 如果输入音频是 AAC 添加
-c:a copy
。 - 如果
-preset veryfast
太慢使用-preset ultrafast
. - 有关更多信息和示例,请参阅 FFmpeg Wiki: H.264。
我用这个命令解决了问题
ffmpeg -i innerPath -c:v libx264 -preset superfast -b:a 256k -vf -b:v 1.5M -c:a aac targetFilePath
使用 FFMPEG 压缩视频:
ffmpeg -i videoPath -s 1280x720 -vf transpose=2 -metadata:s:v:0 rotate=90 -b:v 150k -vcodec mpeg4 -acodec copy outputFile