视频切割
开始 00:01:42
总长 02:54:42
步长 02:53:00
ffmpeg -i video.mp4 -ss 00:01:42 -t 02:53:00 -c copy output.mp4
视频旋转
ffmpeg -i input.mp4 -vf "transpose=2" output.mp4
这里的-vf代表“视频滤镜”,transpose=2表示旋转270度。具体来说,transpose滤镜的参数如下:
0: 逆时针旋转90度然后垂直翻转
1: 顺时针旋转90度
2: 逆时针旋转90度
3: 顺时针旋转90度然后垂直翻转
ffmpeg -i input.mp4 -vf "transpose=2" -c:a copy -c:v libx264 -preset medium -crf 23 output.mp4
在这个例子中:
-c:a copy 表示音频编码不改变,直接复制。
-c:v libx264 表示使用H.264编码视频。
-preset medium 指定了编码的预设,平衡了编码速度和输出文件大小。
-crf 23 是一个常用于H.264编码的质量参数,值越低视频质量越高,文件也越大;通常在18-28之间可以获得不错的质量。
视频压缩
使用CPU压缩
ffmpeg -i input_video.mp4 -c:v libx264 -crf 23 -c:a aac -b:a 128k output_video.mp4
-i input_video.mp4:指定输入文件。
-c:v libx264:指定视频编码器为H.264。
-crf 23:设置视频质量,CRF(Constant Rate Factor)的值一般在18-28之间,数值越小质量越高,文件也越大。23是一个常用的默认值,平衡了质量和文件大小。
-c:a aac:指定音频编码器为AAC。
-b:a 128k:设置音频码率为128kbit/s。
output_video.mp4:指定输出文件。
视频压缩
使用电脑的GPU 使用NVENC编码器进行视频压缩的FFmpeg命令
ffmpeg -i input_video.mp4 -c:v h264_nvenc -preset fast -b:v 3000k -c:a aac -b:a 128k output_video.mp4
-i input_video.mp4:指定输入文件。
-c:v h264_nvenc:指定视频编码器为NVENC的H.264编码器。
-preset fast:设置编码预设
-b:v 8000k:设置视频码率为8000kbit/s。这个值可以根据你的需求调整,以平衡文件大小和视频质量。8000kbit/s 下1分钟的视频大小大约为57.22MB
-c:a aac:指定音频编码器为AAC。
-b:a 128k:设置音频码率为128kbit/s。
output_video.mp4:指定输出文件。
使用硬件加速编码可能需要安装适当的驱动程序和CUDA工具包,以确保FFmpeg能够正确地与你的GPU通信。此外,硬件加速编码的可用选项和性能可能会因GPU型号、驱动程序版本和FFmpeg版本而异。
在运行上述命令之前,请确保你的FFmpeg版本已经编译并支持NVENC。你可以使用ffmpeg -encoders命令来检查是否支持h264_nvenc编码器。如果h264_nvenc出现在列表中,那么你的FFmpeg版本支持NVENC编码。