我有.avi
文件:
$ ffprobe input.avi -hide_banner
Input #0, avi, from 'input.avi':
Duration: 00:01:08.05, start: 0.000000, bitrate: 182785 kb/s
Stream #0:0: Video: rawvideo, bgr24, 1060x615, 182915 kb/s, 20 fps, 20 tbr, 20 tbn
$ file input.avi
input.avi: RIFF (little-endian) data, AVI, 1060 x 615, 20.00 fps, video: uncompressed
在这里我们看到“rawvideo, bgr24”。
我已经尝试了多次 ffmpeg 调用,但要么.mp4
无法在 Windows 10 照片应用程序中播放:
注意:但是,VLC 播放得很好.mp4
。
一个简单的问题:如何将包含“rawvideo, bgr24”的内容正确转换.avi
为.mp4
(以便在任何播放器中都能正确播放)?
FFmpeg(H.264 编解码器)的默认输出像素格式是
yuv444p
.出于某种原因,Microsoft电影和电视播放器不支持
yuv444p
像素格式的 H.264(至少不是“开箱即用”)。为了更高的便携性,选择
yuv420p
像素格式:最好选择编解码器,并设置
crf
(质量)参数(不依赖于默认值):一般来说,我不推荐使用电影和电视,但出于某种原因,微软决定它是 Windows 10 中的默认播放器......