使用intel h264_qsv 编码器转码
ffmpeg -i x.mp4 -c:v h264_qsv x.mkv
转换容器格式(transmuxing)指的是,将视频文件从一种容器转到另一种容器
ffmpeg -i x.mp4 -c copy x.avi
只转容器,内部的编码格式不变,使用-c copy指定直接拷贝,不经过转码,这样比较快
常用编码器
H.264编码器
ffmpeg -encoders | findstr 264
libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (codec h264) libx264rgb libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB (codec h264) h264_amf AMD AMF H.264 Encoder (codec h264) h264_mf H264 via MediaFoundation (codec h264) h264_nvenc NVIDIA NVENC H.264 encoder (codec h264) h264_qsv H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (Intel Quick Sync Video acceleration) (codec h264) nvenc NVIDIA NVENC H.264 encoder (codec h264) nvenc_h264 NVIDIA NVENC H.264 encoder (codec h264)
H.265编码器
ffmpeg -encoders | findstr hevc
libx265 libx265 H.265 / HEVC (codec hevc) nvenc_hevc NVIDIA NVENC hevc encoder (codec hevc) hevc_amf AMD AMF HEVC encoder (codec hevc) hevc_mf HEVC via MediaFoundation (codec hevc) hevc_nvenc NVIDIA NVENC hevc encoder (codec hevc) hevc_qsv HEVC (Intel Quick Sync Video acceleration) (codec hevc)
常用命令参数
-c:指定编码器 -c copy:直接复制,不经过重新编码(这样比较快) -c:v:指定视频编码器 -c:a:指定音频编码器 -i:指定输入文件 -an:去除音频流 -vn: 去除视频流 -preset:指定输出的视频质量,会影响文件的生成速度,有以下几个可用的值 ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow。 -y:不经过确认,输出时直接覆盖同名文件。