私は成功せずに以下の解決策を試してみました。
- ImageMagick変換の問題により、コマンドが終了するか、自動的に終了します。
- ディスクを使用した大容量画像処理
- ImageMagickメモリ不足変換
- ImageMagickはPDFファイルを変換するために2GB以上のメモリを使用します。
私のアニメーションGIFは13.5MBです。マイコンピュータには16GBのRAMメモリがあります。私は8つのAMD Ryzen 7 2700X CPUを持っています。エラーが発生します。
$ convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2 -loop 0 "Bug do pagamento.gif" Extraídos/bug.png
convert: unable to write pixel cache '/tmp/magick-RSymnnZRmXzueDXGI3ehEtIiUkBcymGa': Sem espaço livre no dispositivo @ error/cache.c/WritePixelCachePixels/5830.
convert: corrupt image `Bug do pagamento.gif' @ error/gif.c/DecodeImage/505.
convert: corrupt image `Bug do pagamento.gif' @ error/gif.c/ReadGIFImage/1368.
convert: no images defined `Extraídos/bug.png' @ error/convert.c/ConvertImageCommand/3285.
zsh: exit 1 convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2 -loop 0
convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2 -loop 0 2,75s user 2,73s system 99% cpu 5,505 total
使用LANG=C
:
$ LANG=C convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2 -loop 0 "Bug do pagamento.gif" Extraídos/bug.png
convert: unable to write pixel cache '/tmp/magick-RlftdgBD6MZCwArQzkuz5QI-kJtui7yk': No space left on device @ error/cache.c/WritePixelCachePixels/5830.
convert: corrupt image `Bug do pagamento.gif' @ error/gif.c/DecodeImage/505.
convert: corrupt image `Bug do pagamento.gif' @ error/gif.c/ReadGIFImage/1368.
convert: no images defined `Extraídos/bug.png' @ error/convert.c/ConvertImageCommand/3285.
zsh: exit 1 LANG=C convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2
LANG=C convert -limit memory 2MB -limit map 2MB -limit area 1000MB -delay 2 2,84s user 2,60s system 99% cpu 5,454 total
tmpfs
:
LANG=C df -h /tmp
Filesystem Size Used Avail Use% Mounted on
tmpfs 7,9G 7,2M 7,9G 1% /tmp
答え1
ffmpeg
私はついに誰がそれをするのか尋ねました。
24Mビデオを2.8M gifに変換するために使用したコマンドです。
ffmpeg -i <input_file>.mp4 -r 15 -vf scale=512:-1 out.gif