下午都是-
所以我认为标题确实说明了大部分,但这里是这样的。我是AWS和Lambda的新手,学习这一点非常有趣。我正在做一个项目,我想在S3中自动合并两个文件存储。我在亚马逊网络服务(https://github.com/aws-samples/chime-voiceconnector-agent-assist/blob/master/infrastructure/function/src/retrieveMergedAudioUrl/lambda_function.py)的find folks中找到了这个lambda函数,它引用了:
从pydub导入AudioSegment
所以我不太明白的是,如何在lambda/serverless代码的世界中导入/构建pydub。
谢谢,
理查德
发布于 2020-05-09 07:22:28
一种选择是将pydub与您的代码捆绑在一起。我们有类似的情况,我们必须捆绑所有依赖项。虽然很难看,但它很管用。
发布于 2020-06-14 17:43:40
我建议按照这些说明将pydub上传为Lambda层(但在requirements.txt中包含pydub )。如果您在本地运行pydub,您可以查看您正在使用的版本:
import pydub
print(pydub.__version__)完整的说明在这里:https://medium.com/@qtangs/creating-new-aws-lambda-layer-for-python-pandas-library-348b126e9f3e
发布于 2020-06-14 17:31:39
我能感觉到你。我也处于同样的位置。“我只想连接一些音频文件”受到ffmpeg和ffprobe加起来大约150MB的事实的限制。再加上python的boto3,你就不需要再塞进如今250MB的Lambda+layer组合图像了。因此,虽然你可能会在某些时候幸免于难,但一旦你达到了这个硬限制,你就有麻烦了。
我怀疑最好的解决方案是创建一个单独的pydub Lambda函数,该函数带有源和目标S3地址+路径的参数。一旦有人这样做了,并且它是开源的,您就可以将其部署到您自己的帐户中,并从特定于应用程序的函数中调用它。
如果我能做到这一点,我会分享它的链接。
https://stackoverflow.com/questions/61667628
复制相似问题