我有一台MKV,视频流的分辨率是1920x800,但里面的胶片是1920x1080,所以我的主视频播放器,一台LG智能电视,显示了一个扁平的图像。我可以很容易地更改容器元数据中的分辨率,但LG TV忽略了这些数据,只读取视频流数据。
第一个问题:改变视频流分辨率数据的唯一方法是缩放视频吗?
为了使用ffmpeg进行缩放,我使用了以下命令:
ffmpeg -i input.mkv -map 0 -c:a copy -c:s copy -c:v libx264 -preset slow -crf 17 -vf scale=1920:1080,setdar=16/9 output.mkv现在mkv是好的,我的LG电视读它,看起来很棒,但.....大小从3,3 to到12 to!3,3 of视频的整体比特率为2.704 Kbps,12 of为9.829 Kbps。我认为7000Kbps以上是无用的,在原始视频中没有提高质量的信息。
第二个问题:为什么会有这么大的变化?我的错误是什么?
诚挚的问候
发布于 2014-12-10 19:19:56
-crf选项可能有点低。该值可以是0- 51,其中23是正常的。0表示非常高的质量,而51表示非常差。试试-crf 23。
如果时间对您来说不是一个因素(转换速度),请尝试预设的-preset veryslow。
https://stackoverflow.com/questions/27398932
复制相似问题