Команда преобразования Imagemagick, создающая видео из изображений, выдает ошибку avconv на Mac
Я хотел бы конвертировать изображения в видео с помощью imagemagick. К сожалению, работает команда:
convert img1.jpg img2.jpg img3.jpg out.mpg
выдает ошибку что-то не так работает avconv
convert: delegate failed `'avconv' -nostdin -v -1 -i '%M%%d.jpg' '%u.%m' 2> '%u'' @ error/delegate.c/InvokeDelegate/1919.
Я также прочитал, что файл Delegate.xml может иметь неправильное имя программы avconv.. Но я не знаю, как это проверить.
Я установил imagemagick, ffmpeg (brew) и также avcon (после того, как та же ошибка появилась, когда я установил только первые два.. Я установил vi brew install libav) на моем Mac на High Sierra.
У меня есть avconv (версия 12.2), а также программа под названием avconvert. И конвертировать версию 6.9.9-26.
Спасибо за любую помощь!
1 ответ
Я бы посоветовал вам просто использовать FFMPEG непосредственно для создания вашего видео. Добавление в ImageMagick просто добавляет еще один уровень сложности.
См. https://www.imagemagick.org/Usage/formats/
Но все равно попробуйте следующее:
convert img1.jpg img2.jpg img3.jpg MPG:out.mpg
или же
convert img1.jpg img2.jpg img3.jpg M2V:out.mpg
Вы установили ImageMagick таким образом, чтобы он мог видеть FFMPEG. Вы можете узнать, знает ли ImageMagick о ffmpg через формат convert -list. Есть ли в списке MPG и MPEG?
Найдите свой файл Delegates.xml в вашей системе. Моя (на моем Mac Sierra) находится по адресу /usr/local/etc/ImageMagick-6/delegates.xml. Но это также может быть в /opt/local/etc/ImageMagick-6/delegates.xml. Мои шоу
<delegate encode="mpeg:encode" stealth="True" command=""ffmpeg" -nostdin -v -1 -i "%M%%d.jpg" "%u.%m" 2> "%u""/>
Я не знаю, что делает avconv по отношению к созданию mpg или ffmpeg.
Но, выполняя поиск в Google для avconv, я нахожу http://www.autodidacts.io/convert-media-files-like-a-geek-a-guide-to-video-transcoding-with-avconv-ffmpeg/. Похоже, что avconv (Libav) является форком ffmpeg. Так что, возможно, ваш файл Delegate.xml ищет avconv, а не ffmpeg. Попробуйте отредактировать его, если необходимо, чтобы указать на ffmpeg. Вам может понадобиться указать полный путь к ffmpeg
PS Обычно я устанавливаю всех своих делегатов из MacPorts, а затем устанавливаю ImageMagick из исходного кода. См. https://www.imagemagick.org/discourse-server/viewtopic.php?f=1&t=21502&p=88202&hilit=OSX+MacPorts. К сожалению, у меня нет опыта работы с Homebrew.
PS 2 Если у вас есть только несколько кадров, вы можете создать простую анимацию GIF, если это будет сделано следующим образом:
convert -delay 50 img1.jpg img2.jpg img3.jpg -loop 0 out.gif
Отрегулируйте задержку по мере необходимости. Значение указывается в тиках (1/100 сек = 1 тик). См. https://www.imagemagick.org/script/command-line-options.php. Цикл 0 означает цикл без остановки. Цикл 1 остановился бы после одного показа каждого кадра.