«ImageMagick не установлен», когда ImageMagick уже установлен

Я использую MoviePy, для которого требуется ImageMagick, но когда я запускаю свой код, я получаю следующую ошибку:

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/moviepy/video/VideoClip.py", line 1262, in __init__
    subprocess_call(cmd, logger=None)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/moviepy/tools.py", line 43, in subprocess_call
    raise IOError(err.decode("utf8"))
OSError: convert: label expected `@/var/folders/tw/25c_f4h57bs5hslr5vm1fns80000gq/T/tmpejmzojaq.txt' @ error/annotate.c/GetMultilineTypeMetrics/797.
convert: no images defined `PNG32:/var/folders/tw/25c_f4h57bs5hslr5vm1fns80000gq/T/tmp9y2p9b0s.png' @ error/convert.c/ConvertImageCommand/3342.


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/hypnoticocelot/Downloads/python/tikgenrewrite/tikgen.py", line 366, in <module>
    tikgen()
  File "/Users/hypnoticocelot/Downloads/python/tikgenrewrite/tikgen.py", line 360, in tikgen
    subText = TextClip(subText, font=fontFile, fontsize=75, color=fontColor, stroke_color=strokeColor, stroke_width=3).set_position(("center", 650)).set_duration(mainVideo.duration)
  File "<decorator-gen-84>", line 2, in __init__
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/moviepy/decorators.py", line 89, in wrapper
    return f(*new_a, **new_kw)
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/moviepy/video/VideoClip.py", line 1272, in __init__
    raise IOError(error)
OSError: MoviePy Error: creation of None failed because of the following error:

convert: label expected `@/var/folders/tw/25c_f4h57bs5hslr5vm1fns80000gq/T/tmpejmzojaq.txt' @ error/annotate.c/GetMultilineTypeMetrics/797.
convert: no images defined `PNG32:/var/folders/tw/25c_f4h57bs5hslr5vm1fns80000gq/T/tmp9y2p9b0s.png' @ error/convert.c/ConvertImageCommand/3342.
.

.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. Check the documentation.

Я думал, что ImageMagick может быть не установлен, но работает brew install ImageMagick, я уже на последней версии и полностью обновлен. Я использую Mac, поэтому я не уверен, что путь к двоичному файлу ImageMagick по какой-то причине неверен? Но я не вижу никакого способа исправить это.

Какая версия Imagemagick требуется для MoviePy? Это ИМ 6 или ИМ 7?

fmw42 10.01.2023 23:00

Я не уверен, я думаю, что IM7 в порядке? В последний раз я использовал moviepy примерно в августе, и версия 7.1.0-45 работала нормально, я недавно обновился до версии 7.1.0-57, но все равно ничего.

HypnoticOcelot 10.01.2023 23:23

Возможно, у вас были и IM 6, и IM 7, и он хочет IM 6. Проверьте совместимость с MoviePy. Также убедитесь, что ваша переменная среды $PATH имеет путь к Imagemagick, чтобы MoviePy мог его найти. Примечание. Я мало знаю о MoviePy.

fmw42 10.01.2023 23:51

Вы уверены, что файл PNG существует и у вас есть правильный путь к нему?

fmw42 10.01.2023 23:53

У меня нет png-файла как части моего кода, я только что сделал brew install imagemagick снова, который обновил его, я не думаю, что im6 когда-либо устанавливался, но он работал пару месяцев назад, и с тех пор moviepy не обновлялся

HypnoticOcelot 10.01.2023 23:58

Вы пытаетесь создать файл PNG из текста? Ваше первое сообщение об ошибке жалуется на текст uff-8, а затем нет файла png. Какой текст вы пытались использовать? Возможно, в вашей установке отсутствует какой-либо файл делегата. Что вы получаете от magick -version?

fmw42 11.01.2023 01:49

Версия: ImageMagick 7.1.0-57 (Beta) Q16-HDRI x86_64 20701 imagemagick.org Авторские права: (C) 1999 ImageMagick Studio LLC Лицензия: imagemagick.org/script/license.php Особенности: Cipher DPC HDRI Модули OpenMP(5.0) Делегаты (встроенные): bzlib fontconfig freetype gslib heic jng jp2 jpeg jxl lcms lqr ltdl lzma openexr png ps raw tiff webp xml zlib Компилятор: gcc (4.2)

HypnoticOcelot 11.01.2023 02:05

Я могу добавить свой скрипт на Python, если это поможет

HypnoticOcelot 11.01.2023 02:05

Ваш Imagemagick выглядит нормально. Вы можете предоставить свой скрипт Python. Я знаю это немного. Но я не знаю MoviePy. Что вы делаете с MoviePy — для какой функции вы его используете?

fmw42 11.01.2023 03:49

Если вы удалите часть MoviePy из своего скрипта, остальные запустятся успешно?

fmw42 11.01.2023 04:14

Moviepy — это основная часть сценария, я беру два видео и накладываю их друг на друга с помощью compositevideoclip. Вы можете узнать больше о moviepy здесь: zulko.github.io/moviepy/index.html , я использую версию 2.0.0.dev2 - фрагмент моего скрипта на Python здесь: pastebin.com/krQeF7ZM

HypnoticOcelot 11.01.2023 04:34

Какой шрифт вы пытаетесь использовать? Возможно, он отсутствует или не является приемлемым шрифтом для Imagemagick, который использует fontconfig для обработки шрифтов.

fmw42 11.01.2023 05:09

Достаточно ли у вас места в каталоге /tmp. Возможно, в каталоге /tmp недостаточно места для текстового файла, который вы пытаетесь создать. Нужна ли MoviePy какая-либо настройка для Imagemagick — указание используемых каталогов?

fmw42 11.01.2023 05:13
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Инструменты для веб-скрапинга с открытым исходным кодом: Python Developer Toolkit
Веб-скрейпинг, как мы все знаем, это дисциплина, которая развивается с течением времени. Появляются все более сложные средства борьбы с ботами, а...
Библиотека для работы с мороженым
Библиотека для работы с мороженым
Лично я попрощался с операторами print() в python. Без шуток.
Эмиссия счетов-фактур с помощью Telegram - Python RPA (BotCity)
Эмиссия счетов-фактур с помощью Telegram - Python RPA (BotCity)
Привет, люди RPA, это снова я и я несу подарки! В очередном моем приключении о том, как создавать ботов для облегчения рутины. Вот, думаю, стоит...
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Шаг 1: Создание приложения Slack Чтобы создать Slackbot, вам необходимо создать приложение Slack. Войдите в свою учетную запись Slack и перейдите на...
Учебник по веб-скрапингу
Учебник по веб-скрапингу
Привет, ребята... В этот раз мы поговорим о веб-скрейпинге. Целью этого обсуждения будет узнать и понять, что такое веб-скрейпинг, а также узнать, как...
Тонкая настройка GPT-3 с помощью Anaconda
Тонкая настройка GPT-3 с помощью Anaconda
Зарегистрируйте аккаунт Open ai, а затем получите ключ API ниже.
0
13
63
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Решение, которое я нашел, заключалось в том, что мой элемент TextClip плохо воспроизводился, когда текст в клипе был установлен на "". Оператор if, проверяющий, был ли он пуст или не был легко исправлен.

Другие вопросы по теме

Twitter API перенаправляет после авторизации, но не дает мне PIN-код
Запустите несколько файлов .py в блокноте Jupyter.
Есть ли способ угодить проверке типов, кроме isinstance?
Перебрать файл excel и создать новый словарь для каждого нового элемента в столбце.
Установите условие внутри лямбда-функции в зависимости от того, является ли значение, захваченное с помощью регулярного выражения, None или ""
Как преобразовать код для записи данных в xlsx вместо csv, используя python без панд?
Обновление ключей словаря в одну строку
Правильный способ обработки гигантских строк с многопроцессорной обработкой
Создает новый словарь, состоящий из другого ключа словаря и двух переменных
Установите регулярное выражение с множественным выбором, чтобы попытки сопоставления всегда выполнялись слева направо, независимо от того, пытается ли другое предыдущее регулярное выражение захватить больше символов?