6

我有一个 720x1280 的 mp4 视频,我想要不同的尺寸,例如:0.66%、0.5% 和 0.33%。

对于我使用的每种尺寸:

clip = mp.VideoFileClip(file)
clip_resized1 = clip.resize(height=int(clip.h * float(0.66666))) 
clip_resized1.write_videofile(name + '-2x' + ext)

我对每种尺寸都这样做,但其中一些有效,有些无效。0.66 不起作用,就像 0.33 一样。0.5% 的效果很好。

它为每个大小创建文件,但它们已损坏,无法打开它们(我说的 0.5 除外,它可以正常工作)。

对此有任何线索吗?在 Python 中调整大小有更好的解决方案吗?

4

1 回答 1

6

我认为的问题是,如果剪辑的其中一个尺寸是奇数,大多数视频播放器都无法播放 mp4。例如,720x1280 适用于所有播放器,但 721x1280 只能在某些视频播放器(如 VLC)上播放。

因此,请确保 clip.h 和 clip.w 在写入视频文件之前都已存在。有几种方法可以做到这一点,要么自己指示剪辑的新尺寸,如clip.resize((844, 476)),要么重新调整 66% 的剪辑尺寸并在顶部添加 1px 黑色边距,如clip.resize(0.66).margin(top=1)

于 2015-09-12T12:44:32.317 回答