C语言 mp4转换h264 deprecated pixel format used, make sure you did set range correctly
时间: 2024-06-09 07:06:38 浏览: 12
这个警告信息表明在将mp4视频转换为h264格式时,使用了不推荐使用的像素格式,并提示你确保设置了正确的范围。这通常是由于使用旧版本的FFmpeg库导致的,因为新版本的库已经删除了一些过时的像素格式。要解决这个问题,你可以尝试更新FFmpeg库到最新版本,或者在转换命令中明确指定使用一种支持的像素格式。例如,你可以在命令中添加“-pix_fmt yuv420p”,以确保使用yuv420p像素格式进行转换。
相关问题
mp4转换h264 deprecated pixel format used, make sure you did set range correctly cpp
这个问题通常是由于使用了过时的像素格式(deprecated pixel format)导致的,需要确保正确设置了像素范围(range)。
你可以尝试使用 FFmpeg 工具将 MP4 转换为 H.264:
```bash
ffmpeg -i input.mp4 -c:v libx264 -preset slow -crf 22 -c:a copy output.mp4
```
其中,`-c:v libx264` 表示使用 H.264 编码器,`-preset slow` 表示使用慢速预设,`-crf 22` 表示输出视频的质量,数值越小,质量越高,`-c:a copy` 表示不对音频进行重新编码,直接复制到输出文件中。
如果还是出现了相同的错误,你可以尝试在命令行中加入 `-vf scale=trunc(iw/2)*2:trunc(ih/2)*2`,将视频的宽高分别缩小到偶数像素,这也有可能解决该问题。
mp4转换h264 deprecated pixel format used, make sure you did set range correctly
这个警告信息意味着输入的像素格式已经过时,需要使用更现代的格式。同时,它也提醒你确认你设置了正确的范围。
在进行转换的时候,你可以尝试使用更现代的像素格式,例如YUV420P。在命令行中,你可以使用以下命令来转换:
```
ffmpeg -i input.mp4 -c:v libx264 -preset slow -profile:v high -pix_fmt yuv420p output.h264
```
其中,`-pix_fmt yuv420p`表示使用YUV420P像素格式进行转换。如果你的警告信息依然存在,你可以尝试添加`-color_range pc`来设置正确的范围。