我有一个1:24分钟长的视频,每秒10帧,没有任何声音。我需要的视频下降到28秒,并添加声音到它,而不下降帧,并明显增加fps。我试着用MoviePy
来完成这个任务
clip = VideoFileClip(in_loc)
final = clip.fx(vfx.speedx, 3)
final.write_videofile(out_loc, audio=audio_loc)
但当我查看文件的详细信息时,文件仍然是10 fps。所以这个方法已经删除了帧。 然后我尝试了,下面的代码
clip.write_videofile(out_loc, fps=30, audio=audio_loc)
虽然fps属性已增加到30,但生成的文件仍为1:24分钟长。
我怎样才能做到这一点
注意:所有_loc
变量都是包含相应文件位置的字符串。
我不介意安装其他库
我想我是使用
Clip
类的set_fps
属性找到了解决方案。实际上,set_fps
function返回具有修改的FPS计数的剪辑副本。将转换应用于此副本时,最终将获得正确的FP数由于您没有提供一个可复制的示例,我使用了一个15秒、每秒24帧且没有声音的stock video(重命名为
dummy_in.mp4
)。我用以下代码以5秒剪辑和72 FPS结束:它产生以下输出:
相关问题 更多 >
编程相关推荐