转换s3视频文件分辨率并将其存储回s3

时间:2019-04-05 09:45:05

标签: python django amazon-s3 ffmpeg django-rest-framework

我想将s3存储桶视频文件分辨率转换为其他分辨率,然后将其存储回s3。 我知道我们可以在本地使用ffmpeg来更改分辨率。 我们可以使用ffmpeg转换s3文件并使用Django将其存储回去吗?

我不知道从哪里开始,应该怎么做。 是否应该将s3存储桶中的视频文件保存在缓冲区中,然后使用ffmpeg对其进行转换,然后将其上传回s3。 还是可以直接进行而不必将其保留在缓冲区中。

1 个答案:

答案 0 :(得分:3)

您可以将问题分为三部分:

  • 从s3获取文件:使用boto3和AWS API下载文件
  • 在本地转换文件:ffmpeg在这里为您提供了帮助。它将生成一个新文件
  • 将文件上传回s3:再次使用boto3

这对于脚本来说相当简单且健壮。

现在,如果要进行优化,可以尝试使用类似s3fs的方法将s3存储桶安装到本地并进行转换