私は、Python Lambda でキャプション付きのビデオを作成するために Moviepy を使用しています。ImageMagick は Moveipy の依存関係であり、Lambda にプリインストールされています。ただし、moviepy.TextClip を使用してフレームを作成しようとすると、次のエラーが発生します。
MoviePy Error: creation of None failed because of the following error:
convert: not authorized `@/tmp/tmpafOCVo.txt' @ error/constitute.c/ReadImage/454.
convert: no images defined `PNG32:/tmp/tmphhE8gT.png' @ error/convert.c/ConvertImageCommand/3046.
This error can be due to the fact that ImageMagick is not installed on your computer, or (for Windows users) that you didn't specify the path to the ImageMagick binary in file conf.py, or.that the path you specified is incorrect: IOError
私は永遠にグーグルで検索しましたが、問題はhttps://alas.aws.amazon.com/ALAS-2016-699.htmlからのフォールアウトのようです。「この更新には、EPHEMERAL、HTTPS、HTTP、URL、FTP、MVG、MSL、TEXT、および LABEL コーダーを無効にする更新された /etc/ImageMagick/policy.xml ファイルが含まれています。」
また、「更新後に問題が発生した場合は、要件に合わせて policy.xml ファイルを手動で調整する必要がある場合があります」とも書かれています。しかし、Lambda ではそれができません。
StackOverflow の人々は、ラムダを再パッケージ化して自分で Lambda にアップロードすることを提案しています ( AWS Lambda は gm モジュールと一緒に動作しません) 。 chalice )、ImageMagick をベンダー フォルダに追加してデプロイしようとすると、Botocore からパイプの破損エラーが発生し (
botocore.vendored.requests.exceptions.ConnectionError: ('Connection aborted.', error(32, 'Broken pipe'))
)、c) この変更が行われてから 6 か月以上経ちましたが、その後何か変更がありましたか?
他のアイデアはありますか?