在 amazon aws S3 上用 moviepy 写的视频是空的

Videos written with moviepy on amazon aws S3 are empty

我正在为协作项目处理大型视频数据集 (~100 GB)。为了更轻松地共享数据和结果,我将所有视频远程保存在亚马逊 S3 存储桶上,并通过将存储桶安装在 EC2 实例上来处理它。

我尝试执行的处理步骤之一涉及裁剪视频,并将它们重写为更小的片段。我正在用 moviepy 做这个,用 subclip 方法分割视频并调用:

subclip.write_videofile("PathtoS3Bucket"+VideoName.split('.')[0]+'part' +str(segment)+ '.mp4',codec = 'mpeg4',bitrate = "1500k",threads = 2)

我发现当视频太大(参数设置如上)时,调用此函数有时会在我的 S3 存储桶中生成空文件(约 10% 的时间)。有没有人深入了解 moviepy/ffmpeg/S3 的功能会导致这种情况?

建议不要使用s3fs等工具,因为这些只是模拟文件系统,而Amazon S3是一个对象存储系统。

通常最好在本地创建文件,然后使用标准 API 调用将它们复制到 S3。