在我的视频帧中,两个人并排交谈。我想先截取一小段视频,然后将其裁剪为人物 1 和老师 1。
我使用下面的代码片段来生成这些小片段。从概念上讲,一切都行得通。但是,最终生成的视频以静止帧开始,其中背景中播放着声音,但相应的人却没有移动。几帧之后,它继续正常播放。我如何才能提高视频的剪辑质量。(tmp_vd=trmmed.mp4)(T1_vf=teacher.mp4)(P2_vf= person.mp4)
with tempfile.TemporaryDirectory() as tmpd:
tmp_vd = Path(tmpd) / "video_tmp.mp4"
#trim vide
command_tm_vd = f"ffmpeg -i {file} -ss {itv[0]} -to {itv[1]} -c:v copy -c:a copy {tmp_vd} "
#crop
command_T_crop_vd = f"ffmpeg -i {tmp_vd} -filter:v 'crop={tw}:{th}:{tx1}:{ty1}' {T1_vf}"
command_P_crop_vd = f"ffmpeg -i {tmp_vd} -filter:v 'crop={pw}:{ph}:{px1}:{py1}' {P2_vf}"
#execute
subprocess.call(command_tm_vd, shell=True)
subprocess.call(command_T_crop_vd, shell=True)
subprocess.call(command_P_crop_vd, shell=True)