MLT Framework tools: инструкция от гика, как устроены инструменты MLT для обработки и рендеринга видео

MLT Framework tools — это не отдельный графический видеоредактор, а пользовательская часть MLT Multimedia Framework, рассчитанная прежде всего на управление мультимедийным конвейером из командной строки. Главный актуальный инструмент здесь — melt: он открывает и собирает медиаматериалы через producers, применяет filters и transitions, формирует playlists и multitracks, а затем передаёт результат consumer’у для предпросмотра, записи файла, сериализации в MLT XML или другого вывода. Такой подход полезен там, где важнее воспроизводимый сценарий, автоматизация и доступ к механике MLT, чем монтаж мышью на таймлайне.

На 4 сентября 2026 года стабильный выпуск MLT — 7.40.0. Проект продолжает развиваться: в последних выпусках исправлялись ошибки Windows и MSVC, расширялась работа с OpenFX, 10-битным видео и аппаратным ускорением, а также закрывались уязвимости и ошибки обработки строк и метаданных. При этом старый playout-сервер Melted вынесен в отдельный архивированный репозиторий и больше не относится к поддерживаемому набору повседневных инструментов MLT. Поэтому этот обзор сосредоточен на действующей связке MLT Framework, melt, MLT XML и подключаемых сервисах.

Что такое MLT Framework tools и кому принадлежит проект

MLT Multimedia Framework разрабатывается проектом MLT Framework под правообладанием Meltytech, LLC. Изначальная область применения связана с телевизионным вещанием, но архитектура давно шире: MLT служит движком для нелинейного монтажа, медиаплееров, транскодеров, потоковых систем и собственных приложений. На MLT работают, в частности, Shotcut, Kdenlive и Flowblade. Это помогает понять назначение MLT Framework tools: они не конкурируют с такими редакторами по удобству интерфейса, а дают доступ к тому же классу внутренних операций без полноценной монтажной оболочки.

Термин MLT Framework tools в практическом смысле охватывает исполняемые инструменты и форматы, с которыми пользователь взаимодействует напрямую. Центральное место занимает melt, описываемый проектом как командный медиаплеер и многодорожечный видеоредактор. Для хранения структуры композиции используются текстовая сериализация melt и более выразительный формат MLT XML. Низкоуровневые библиотеки MLT, MLT++ и языковые привязки предназначены уже для разработки приложений, поэтому в этом материале они рассматриваются только там, где объясняют поведение консольных инструментов.

Важно не смешивать MLT с одноимёнными проектами из машинного обучения и не считать Melted актуальной частью основной поставки. Действующий репозиторий MLT содержит framework, модули и melt; отдельный репозиторий Melted архивирован с пометкой о прекращении поддержки. Это различие особенно существенно для старых инструкций в интернете, где команды Melted, MVCP и серверный playout нередко описываются рядом с melt как единый комплект.

Основные параметры

Параметр Актуальное значение
Официальное название MLT Multimedia Framework; пользовательский CLI-инструмент — melt
Разработчик и правообладатель MLT Framework / Meltytech, LLC, с участием сообщества
Тип Открытый мультимедийный framework и консольный инструмент для воспроизведения, композиции, фильтрации и рендеринга
Актуальная стабильная версия MLT 7.40.0 на 4 сентября 2026 года
Основной пользовательский инструмент melt
Платформы Linux, BSD, macOS и Windows; доступность конкретных модулей зависит от сборки и пакета
Интерфейс Командная строка; простой SDL2-предпросмотр при использовании consumer по умолчанию; MLT XML для описания проекта
Импорт Через producers; широкий набор аудио- и видеоформатов обычно обеспечивает модуль avformat на базе FFmpeg
Экспорт Через consumers; avformat пишет и передаёт аудио/видео с использованием FFmpeg, xml сериализует композицию
Проектные форматы Текстовая сериализация .melt и MLT XML
Автоматизация Командные сценарии, headless-рендеринг, логируемый прогресс, MLT XML, presets и multi consumer
Облако и аккаунт Не требуются для локальной работы; сеть используется только теми producers/consumers, которым она нужна
Цена Денежной лицензии и платных редакций нет; проект распространяется как свободное ПО
Лицензирование Framework и libmvcp — LGPLv2.1; melt — GPLv2; лицензии модулей могут отличаться

У MLT нет единой «матрицы форматов», одинаковой для каждой установки. Реальный список producers, consumers, filters, transitions, контейнеров и кодеков формируется из того, как собран и упакован framework. Поэтому для воспроизводимой автоматизации важнее не запомнить перечень расширений, а уметь получить список возможностей конкретной системы командами melt -query.

Платформы, распространение и актуальный статус

MLT остаётся кроссплатформенным проектом. В его функциональном описании перечислены Linux, BSD, macOS и Windows, а репозиторий регулярно получает изменения для Windows/MSVC. В macOS отдельная актуальная инструкция по headless-рендерингу использует пакет Homebrew mlt; в Debian и Ubuntu консольный инструмент распространяется отдельным пакетом melt вместе с runtime и данными MLT. На других системах набор пакетов и их версии зависят от конкретного репозитория.

Официальный сайт MLT ориентирует на исходный код и документацию, а не на единый пользовательский установщик для всех платформ. Поэтому перед установкой полезно различать три уровня: системный пакет с готовым melt, сборку MLT из исходников и пакет другого приложения, которое включает собственную сборку MLT. Смешивание библиотек и модулей от разных поставок способно привести к ситуации, когда исполняемый файл запускается, но часть producers или consumers не загружается.

Пользователю Linux, который редко работает с пакетным менеджером, поможет материал GeekHow о том, как устанавливать приложения в Linux. Для MLT это особенно уместно: пакетный менеджер обычно безопаснее ручного копирования библиотек, поскольку одновременно ставит runtime-зависимости и данные модулей.

Текущий статус проекта активный. MLT 7.40.0 вышел летом 2026 года, а предыдущие версии 7.38.0, 7.36.x и 7.34.x последовательно добавляли OpenFX, аппаратное масштабирование предпросмотра, расширенную 10-битную обработку и исправления совместимости. Наличие активной ветки не отменяет необходимости проверять версию в системе: дистрибутив может поставлять более старый стабильный пакет, чем upstream.

Как устроен интерфейс и рабочая модель

У melt нет привычного окна проекта с меню, медиабиблиотекой и таймлайном. Его интерфейс — команда, прочитанная слева направо, и вывод терминала. При запуске без явного consumer MLT использует SDL2 для простого окна воспроизведения, но сама композиция всё равно задаётся аргументами командной строки. Из-за этого порядок параметров имеет семантическое значение: один и тот же filter, помещённый в другой участок команды, может прикрепиться к другому уровню композиции.

Producers — источники кадров и звука

Producer создаёт MLT frames. В роли producer выступает медиaфайл, устройство, цветовой генератор, XML-проект и другие сервисы. Для обычного файла melt выбирает подходящий producer автоматически; при необходимости можно указать сервис явно, например avformat. Свойства in и out ограничивают используемый диапазон кадров и поддерживаются на базовом уровне всеми producers.

Playlists и cuts — последовательная сборка

Несколько файлов в одной команде образуют последовательность. Внутренне MLT использует playlist и cut-объекты, чтобы один исходный producer можно было применять в разных диапазонах без изменения самого файла. Это и есть основа неразрушающего монтажа: команда описывает, какие части исходников взять, а исходные медиа остаются неизменными.

Multitrack и tractor — несколько дорожек

Для параллельных дорожек MLT использует multitrack, а объединяет их объект tractor. Более высокая дорожка имеет приоритет в области перекрытия, пока пользователь не задаст transition или другой механизм композиции. Эта модель похожа на таймлайн NLE по результату, но представлена объектами и параметрами, а не графическими клипами.

Filters — обработка каждого кадра

Filter получает кадр и возвращает один изменённый кадр. Фильтры могут менять изображение, звук, геометрию, цвет, громкость, текстовые слои и другие параметры. Состав зависит от подключённых модулей: core, avformat, Qt, frei0r, OpenCV, Movit, SoX, vid.stab и других. Поэтому название filter, которое есть в одной сборке, не гарантированно присутствует в другой.

Transitions — связь между дорожками

Transition обрабатывает взаимодействие двух дорожек. Типичный пример — luma для видеоперехода и mix для аудиомикса. В MLT переход — не самостоятельный «эффект между двумя картинками», а сервис, работающий с дорожками A и B в заданном диапазоне кадров. Это объясняет, почему параметры a_track, b_track, in и out так важны в сложных командах и XML.

Consumers — предпросмотр, файл, поток или сериализация

Consumer забирает сформированные кадры и решает, что делать с результатом. SDL2 показывает предпросмотр; avformat кодирует файл или сетевой поток через библиотеки FFmpeg; xml сохраняет структуру MLT в XML; multi позволяет направить один producer в несколько consumers. В отличие от графического редактора, экспорт здесь не отдельная кнопка: смена consumer меняет назначение всей команды.

Основные функции MLT Framework tools

Возможности melt лучше понимать как комбинацию сервисов, а не как фиксированный список «инструментов на панели». Один и тот же executable умеет воспроизводить файл, собирать последовательность клипов, ограничивать диапазоны, применять эффекты, организовывать многодорожечную композицию и передавать результат в разные consumers. Чем больше модулей доступно в установленной сборке, тем шире фактический набор операций.

Воспроизведение и инспекция медиапайплайна

Простейший режим превращает melt в медиаплеер с SDL2-предпросмотром. Но для диагностики важнее режим -query: он выводит зарегистрированные producers, consumers, filters, transitions, profiles, presets, форматы и кодеки. Это встроенный способ узнать возможности конкретной установки без предположений о том, какие библиотеки собраны в пакет.

Неразрушающая нарезка по кадрам

Свойства in и out определяют диапазон producer. MLT работает с временными значениями в рамках выбранного profile и может описывать монтаж как последовательность ссылок на исходные материалы. Исходный файл не переписывается; новый медиарезультат появляется только при подключении кодирующего consumer.

Сборка последовательности и переходов

Несколько producers можно поставить последовательно, а -mix и -mixer создают переход между соседними клипами. Документация подчёркивает, что длительность mix задаётся в кадрах, поэтому один и тот же числовой параметр соответствует разному времени при разных частотах кадров.

Многодорожечная композиция

Опция -track начинает новую дорожку. Для объединения дорожек используются transitions и filters, а в MLT XML эти отношения представлены через playlists, multitrack и tractor. Такой уровень контроля удобен для генерации проектов программно, но заметно сложнее визуального монтажа.

Фильтрация видео и аудио

MLT подключает собственные и внешние модули обработки. Среди возможностей framework перечислены масштабирование, альфа-композиция, деинтерлейсинг, маскирование, motion tracking, аудиомикширование, gain, wipes, стабилизация через соответствующие модули, а также эффекты FFmpeg и другие плагины. Наличие конкретного filter лучше подтверждать через query перед запуском пакетной обработки.

Кодирование и потоковый вывод

Consumer avformat использует FFmpeg для записи файлов и сетевых потоков. Параметры FFmpeg, являющиеся AVOptions, передаются в форме name=value; например, задаются видео- и аудиокодеки, размер, частота кадров, число каналов и параметры качества. Не все опции отдельной утилиты ffmpeg имеют прямой эквивалент в avformat consumer, поэтому перенос длинной команды ffmpeg в melt требует проверки свойств consumer.

Сериализация проекта

Опция -serialise сохраняет композицию в текстовом синтаксисе melt. Consumer xml создаёт MLT XML, который ближе к внутренней объектной модели и подходит для сложных проектов, повторного открытия и программной генерации. MLT XML может ссылаться на producers, playlists и multitracks, а XML-файл сам может выступать producer в другой композиции.

Headless и пакетный рендеринг

При явном avformat consumer melt может работать без графической сессии. Для логов и CI предусмотрен -progress2, печатающий отдельные строки прогресса вместо обновления одной строки терминала. Это делает MLT пригодным для cron-задач, серверных очередей и скриптов, где рендер должен завершиться без ручного управления окном.

Карта форматов и совместимости

Объект Как поддерживается Что сохраняется Где возможны потери Как проверить переносимость
Обычные видео- и аудиофайлы Чаще всего через producer avformat и FFmpeg Исходник читается без изменения При финальном кодировании возможна потеря качества в зависимости от codec и параметров melt -query formats, audio_codecs и video_codecs
Изображения и последовательности Через доступные image/Qt/GDK producers и модули Кадры формируются из исходных изображений Цвет, alpha и масштаб зависят от профиля и фильтров Проверить producer и выполнить короткий предпросмотр
.melt Текстовый синтаксис командной композиции Порядок сервисов и свойства Пути к файлам сохраняются в том виде, как были заданы Открыть файл повторно через melt на той же и другой системе
MLT XML Producer/consumer xml Структура producers, playlists, tracks, filters и transitions Перенос ломается при отсутствующих модулях, media paths или несовместимых свойствах Проверить query сервисов и загрузку XML до долгого рендера
Сетевой поток Через avformat и доступные протоколы FFmpeg Результат передаётся без локального файла, если задан URL Зависит от сети, muxer, codec и принимающей стороны Сначала проверить локальный файл с теми же codec/profile
Несколько выходов Consumer multi Один producer обслуживает несколько consumers Не все комбинации consumers и preview scaling совместимы Проверить каждый consumer отдельно до объединения

Практический вывод из этой карты простой: расширение входного файла само по себе ничего не гарантирует. Реальная поддержка определяется producer, codec libraries и конфигурацией сборки. При проблемах с воспроизведением или экспортом полезно сверять не абстрактный список форматов, а фактический вывод melt -query. Для общего контекста о контейнерах и кодеках можно посмотреть подборку GeekHow про наборы кодеков Windows, но MLT не зависит от системного codec pack как от единственного источника поддержки: avformat опирается на собственную сборку FFmpeg-библиотек.

Автоматизация, пакетная работа, облако и ИИ

Сильная сторона MLT Framework tools — повторяемость. Команду можно хранить в shell-скрипте, генерировать из другого языка, сериализовать в .melt или MLT XML и запускать без GUI. Встроенный -progress2 удобен для CI и очередей, а presets позволяют выносить повторяющиеся свойства consumer в отдельные наборы. Consumer multi даёт несколько выходов из одной композиции, когда это поддерживает конкретная конфигурация.

Пакетная обработка реализуется не отдельным мастером, а обычными средствами оболочки: один и тот же вызов melt запускается для списка файлов или разных XML-проектов. Это даёт высокий контроль, но пользователь сам отвечает за имена выходных файлов, обработку ошибок, очистку временных результатов и повторный запуск неудачных заданий.

Обязательной облачной обработки нет. Локальный файл, filters и avformat consumer работают на локальной машине, если используемые codecs и модули установлены. Интернет становится необходим только для сценариев с сетевым источником, стриминговым consumer, загрузкой пакетов или внешней инфраструктурой. MLT не требует пользовательского аккаунта, подписки или входа в онлайн-сервис для запуска melt.

В MLT нет пользовательского генеративного помощника, чата или облачной AI-платформы. В версии 7.40.0 появился модуль rnnoise для подавления фонового шума при наличии librnnoise, но это специализированная обработка аудио, а не универсальная система автоматического монтажа. Если проект требует распознавания речи, генерации субтитров или генеративного видео, соответствующий результат нужно подготовить внешним инструментом и затем включить в MLT-композицию.

Производительность, требования и зависимость от компонентов

MLT не задаёт единый пользовательский минимум по объёму RAM и модели процессора: нагрузка определяется разрешением, codec, количеством дорожек, filters, transitions и способом вывода. Базовая библиотека требует C11-совместимый компилятор и POSIX threading при сборке; прикладные модули добавляют зависимости. Avformat опирается на FFmpeg, Qt-модуль — на Qt, другие сервисы используют SDL2, SoX, libvorbis, OpenCV, Movit и иные библиотеки.

Framework поддерживает многопоточность, многопроцессорную обработку и аппаратное ускорение в тех сервисах, где оно реализовано. Avformat умеет использовать аппаратное декодирование и кодирование, а OpenGL/Movit применяется для части GPU-эффектов. Это не означает, что любой filter автоматически ускоряется видеокартой: OpenGL-сервисы имеют собственные ограничения, а для melt при GPU-обработке используется qglsl consumer.

Выпуски 7.32–7.40 расширили аппаратные возможности и исправили ряд проблем совместимости: добавлялись переменные для hwaccel, аппаратное масштабирование предпросмотра, улучшения OpenFX и исправления Windows/MSVC. При этом скорость всё равно определяется конкретной цепочкой. Декодирование, фильтрация и кодирование могут использовать разные устройства и разные степени параллелизма, поэтому универсальные цифры «кадров в секунду» без описания файла и hardware были бы бессмысленны.

Для длительных задач особенно важен диагностируемый вывод. Если рендер неожиданно завершается или зависает, системные и прикладные логи дают больше информации, чем повторный запуск вслепую. На Linux полезен отдельный материал GeekHow о работе с log-файлами.

Безопасность и приватность

MLT обрабатывает файлы локально и не отправляет медиаданные на собственный облачный сервис. Конфиденциальность поэтому в основном определяется тем, какие producers, consumers и внешние библиотеки включены в конкретную команду. Локальный avformat export остаётся локальным; сетевой URL или streaming consumer, напротив, передаёт данные по указанной пользователем сети.

Мультимедийные файлы могут содержать сложные контейнеры, codecs и метаданные, поэтому обновления framework и зависимостей важны не только ради новых функций. В MLT 7.40.0 исправлялись проблемы форматирования времени, устаревшие свойства в consumer и потенциальные переполнения в нескольких модулях. В предыдущих версиях также закрывались ошибки памяти и падения. Для обработки непроверенных файлов разумно использовать актуальные пакеты MLT и FFmpeg и не сохранять старую сборку только ради привычного набора filters.

С точки зрения приватности полезно отделять проектные файлы от медиарезультата. .melt и MLT XML могут содержать пути к исходным файлам. Перед передачей проекта другому человеку стоит посмотреть текст и убедиться, что абсолютные пути не раскрывают лишнюю структуру каталогов. Это особенно актуально для домашних директорий, сетевых шар и проектов, собранных на сервере CI.

Цена, лицензии и ограничения редакций

У MLT Framework tools нет платной редакции, подписки, пробного периода или лимита бесплатного экспорта. Пользователь получает полный функционал той сборки, которую установил. Ограничения возникают не из тарифного плана, а из состава пакета, лицензий подключённых модулей, наличия кодеков и возможностей hardware.

Лицензирование неоднородно по компонентам. Framework и libmvcp относятся к LGPLv2.1, а приложение melt — к GPLv2; модули могут использовать LGPL, GPL или совместимые лицензии в зависимости от кода и зависимостей. Для обычного личного запуска это не превращается в оплату, но при распространении собственной сборки или приложения нужно учитывать условия всех включённых компонентов.

Отдельной коммерческой поддержки или «Pro»-функций у melt нет. Цена владения складывается из времени на настройку, поддержки среды, хранения исходников, вычислительных ресурсов для рендера и возможной разработки собственных сценариев. Для пользователя, которому нужно пару раз в месяц визуально обрезать ролик, этот организационный расход выше, чем у GUI-редактора. Для автоматической фабрики рендеринга ситуация обратная: отсутствие ручного интерфейса становится преимуществом.

Задача → инструмент → результат → что проверить

Задача Инструмент MLT Результат Что проверить
Открыть файл и увидеть, что producer работает melt с consumer SDL2 по умолчанию Окно предпросмотра с аудио/видео Нет ошибок producer, длительность и звук соответствуют исходнику
Узнать возможности установки melt -query Списки сервисов, profiles, formats и codecs Нужные avformat, filters, consumers и profile реально зарегистрированы
Взять фрагмент клипа Свойства in и out Cut без изменения исходного файла Границы заданы в правильных кадрах для текущего profile
Соединить клипы с переходом -mix и -mixer Последовательность с video/audio transition Длина перехода не превышает доступные части клипов
Применить эффект -filter или attach-варианты Обработанный поток кадров Filter существует и его свойства относятся к нужному уровню
Собрать несколько дорожек -track, transitions, MLT XML/tractor Multitrack-композиция a_track/b_track и in/out соответствуют структуре
Сохранить видеорезультат -consumer avformat:имя_файла Закодированный файл Контейнер, codecs, profile, аудио и длительность
Сохранить редактируемое описание -serialise или consumer xml .melt либо MLT XML Пути к media и набор сервисов переносимы
Запустить на сервере Явный avformat consumer и -progress2 Headless-рендер с читаемым логом Нет зависимости от GUI и процесс возвращает успешный код завершения

Эта карта показывает главное отличие melt от обычного конвертера. Конвертер в первую очередь отвечает на вопрос «в какой формат сохранить файл», а MLT сначала строит композицию, затем отдаёт её consumer. Если задача сводится только к перекодированию, проще рассмотреть специализированные программы для конвертирования видео; MLT оправдан, когда кодирование — финальный этап более сложной схемы.

Что перестанет работать первым

Отсутствующий producer или consumer

Самая чувствительная зависимость — набор модулей. Если пакет собран без avformat, melt потеряет основной универсальный путь к FFmpeg-форматам и экспорту. Если отсутствует SDL2 consumer, не будет стандартного окна предпросмотра. Проверка через melt -query producers и melt -query consumers сразу показывает, есть ли нужные сервисы.

Кодек, которого нет в сборке FFmpeg

Даже присутствующий avformat не гарантирует каждый encoder или decoder. Набор кодеков зависит от FFmpeg и политики упаковки дистрибутива. Поэтому сценарий, работавший на одной машине, может остановиться на другой при том же расширении выходного файла. Для устойчивой автоматизации стоит проверять audio_codecs и video_codecs перед запуском длинной очереди.

Профиль и цветовой pipeline

MLT нормализует материалы под profile, который задаёт базовые видеопараметры. Неверный profile проявится раньше, чем «сломается формат»: результат может иметь неправильную частоту кадров, размер или aspect ratio. В 10-битных и HDR-сценариях дополнительно важна совместимость filters с выбранным pixel format и color processing.

GUI-зависимый consumer на headless-системе

Без явного consumer melt пытается использовать SDL2-предпросмотр. На сервере без оконной сессии это становится лишней зависимостью. Headless-процесс должен сразу направлять кадры в avformat или другой безоконный consumer. Это не ограничение формата, а особенность выбора consumer по умолчанию.

Пути к медиаданным после переноса проекта

Сериализация не упаковывает исходные клипы внутрь .melt или XML. Если проект ссылается на абсолютные пути, перенос на другую машину нарушит эти ссылки. Для долговременной автоматизации структура каталогов и стратегия относительных путей важнее, чем внешний вид проектного файла.

Как пользоваться программой — советы гика

У melt нет кнопок и панелей, поэтому все точные действия выполняются через исполняемый файл melt, его options и свойства сервисов. Команды ниже используют только документированные механизмы. Исходные медиа лучше считать неизменяемыми: вывод всегда направляйте в новый файл, а проектные .melt и XML храните отдельно. Для примеров предполагается, что в текущем каталоге есть файлы clip1.mp4, clip2.mp4 и при необходимости audio.wav.

Проверить установку, версию и доступные сервисы

Цель. Убедиться, что запускается именно нужная сборка MLT и в ней присутствуют требуемые модули до работы с файлами.

Подготовка. Откройте Terminal, PowerShell или другую командную оболочку, где команда melt доступна через PATH.

  1. Введите melt -version и зафиксируйте номер версии.
  2. Введите melt -query producers, затем melt -query consumers.
  3. Для файлового импорта и экспорта найдите в списках avformat.
  4. Введите melt -query profiles, чтобы увидеть доступные profiles.
  5. При подготовке конкретного кодирования используйте melt -query video_codecs и melt -query audio_codecs.

Важный параметр. Наличие executable не означает наличие каждого модуля: ориентируйтесь на query конкретной установки.

Проверка результата. Версия выводится без ошибки, а нужные services присутствуют в соответствующих списках.

Типичная ошибка. Команда не найдена или avformat отсутствует. В первом случае проблема в установке/PATH, во втором — в составе пакета.

Безопасный откат. Этот этап ничего не изменяет; достаточно закрыть терминал. Не начинайте долгую обработку, пока query не подтверждает нужные компоненты.

Открыть медиaфайл в стандартном предпросмотре

Цель. Быстро проверить, что producer читает исходник и MLT корректно определяет базовые свойства.

Подготовка. Поместите clip1.mp4 в текущий каталог или укажите полный путь.

  1. Запустите melt clip1.mp4.
  2. Если в сборке доступен SDL2 consumer и есть графическая сессия, откроется простое окно воспроизведения.
  3. Проверьте изображение, звук и примерную длительность.
  4. Для подробного диагностического вывода повторите запуск с -verbose или -debug, если требуется локализовать проблему.

Важный параметр. Без явного -consumer melt использует consumer предпросмотра по умолчанию, поэтому такой запуск не подходит для headless-сервера.

Проверка результата. Клип воспроизводится без сообщения об invalid producer и без раннего завершения процесса.

Типичная ошибка. На машине без дисплея или звукового устройства preview не стартует, хотя файл исправен.

Безопасный откат. Закройте окно или остановите процесс. Исходный файл не меняется.

Вырезать диапазон кадров без изменения исходника

Цель. Использовать только нужный участок source в последующей композиции.

Подготовка. Определите начальный и конечный кадры. Для воспроизводимости сначала установите подходящий profile, если частота кадров не должна определяться автоматически.

  1. Выполните melt clip1.mp4 in=50 out=149.
  2. Просмотрите только выбранный диапазон.
  3. Если диапазон должен стать выходным файлом, добавьте avformat consumer, например -consumer avformat:fragment.mp4 vcodec=libx264 acodec=aac.
  4. Откройте fragment.mp4 и сравните начало и конец с ожидаемыми кадрами.

Важный параметр. in и out — свойства producer/cut, а не команда удаления данных из исходника. Их числовой смысл привязан к кадровой шкале проекта.

Проверка результата. Полученный fragment начинается и заканчивается в нужных местах, а исходный clip1.mp4 остаётся прежним.

Типичная ошибка. Пользователь считает числа секундами, хотя указал позиции кадров.

Безопасный откат. Удалите только созданный fragment.mp4 и скорректируйте in/out; исходный файл не затрагивается.

Собрать два клипа последовательно и сделать переход

Цель. Получить одну последовательность из двух producers с video dissolve и audio cross-fade.

Подготовка. Убедитесь, что оба клипа читаются отдельно и имеют достаточно кадров для перехода.

  1. Для проверки простой последовательности запустите melt clip1.mp4 clip2.mp4.
  2. Добавьте переход длиной 25 кадров: melt clip1.mp4 clip2.mp4 -mix 25 -mixer luma -mixer mix:-1.
  3. Посмотрите участок стыка двух клипов.
  4. Для записи результата добавьте в конец -consumer avformat:joined.mp4 vcodec=libx264 acodec=aac.

Важный параметр. Значение после -mix задаётся в кадрах. При 25 fps 25 кадров составляют одну секунду, при другой частоте — другую длительность.

Проверка результата. На стыке видно растворение, а звук плавно смешивается, если обе дорожки содержат аудио.

Типичная ошибка. Длина mix больше доступного участка одного из клипов или команда собрана в неправильном порядке.

Безопасный откат. Сначала уберите -mixer mix:-1, затем -mixer luma и -mix, возвращаясь к простой последовательности. Удалять исходники не нужно.

Применить filter к клипу или диапазону

Цель. Добавить обработку MLT к видеопотоку и проверить область действия filter.

Подготовка. Убедитесь, что filter зарегистрирован: например, melt -query filters и при необходимости melt -query filter=greyscale.

  1. Запустите melt clip1.mp4 -filter greyscale.
  2. Проверьте, что изображение стало монохромным.
  3. Чтобы ограничить действие начальным диапазоном, используйте melt clip1.mp4 -filter greyscale in=0 out=50.
  4. Если нужен файл, добавьте avformat consumer с новым именем результата.

Важный параметр. Неизвестные свойства некоторых services могут быть приняты парсером и затем фактически проигнорированы, поэтому описание конкретного filter нужно смотреть через query.

Проверка результата. Эффект виден именно на ожидаемом диапазоне, а не на всей композиции.

Типичная ошибка. Filter отсутствует в сборке или свойство относится не к этому service.

Безопасный откат. Удалите участок -filter … из команды и повторите preview. Исходный файл остаётся неизменным.

Собрать две дорожки и задать transition между ними

Цель. Перейти от последовательного playlist к настоящему multitrack.

Подготовка. Используйте короткие тестовые диапазоны, чтобы быстрее проверить структуру. Допустим, clip1.mp4 лежит на нижней дорожке, а clip2.mp4 должен появиться поверх него начиная с 50-го кадра.

  1. Соберите основу: melt clip1.mp4 out=149 -track -blank 50 clip2.mp4 out=99.
  2. Добавьте видеопереход и снова запустите композицию: melt clip1.mp4 out=149 -track -blank 50 clip2.mp4 out=99 -transition luma in=50 out=74 a_track=0 b_track=1.
  3. Чтобы в том же диапазоне смешивался звук, используйте полную команду melt clip1.mp4 out=149 -track -blank 50 clip2.mp4 out=99 -transition luma in=50 out=74 a_track=0 b_track=1 -transition mix in=50 out=74 a_track=0 b_track=1 start=0.0 end=1.0.
  4. Просмотрите начало, область перекрытия и участок после transition.

Важный параметр. Дорожки нумеруются с нуля; a_track и b_track должны соответствовать реальной структуре команды.

Проверка результата. Второй clip появляется в заданном диапазоне, а переход работает между нужными дорожками.

Типичная ошибка. Неверные номера track или in/out заставляют transition работать не на том участке либо не давать заметного эффекта.

Безопасный откат. Уберите transition, оставив две дорожки, и сначала добейтесь правильного взаимного расположения clips; затем верните переход.

Экспортировать композицию через avformat

Цель. Превратить текущую MLT-композицию в обычный медиaфайл.

Подготовка. Проверьте наличие consumer avformat и кодеков libx264 и aac в своей установке. Если их нет, выберите доступные codecs из query.

  1. Для типового headless-вывода 1080p/25 запустите melt -profile atsc_1080p_25 clip1.mp4 -consumer avformat:output.mp4 vcodec=libx264 acodec=aac.
  2. Дождитесь завершения процесса.
  3. Откройте output.mp4 независимым плеером.
  4. Сверьте длительность, разрешение, частоту кадров, наличие звука и ожидаемые filters/transitions.

Важные параметры. target у avformat задаётся после двоеточия, а параметры FFmpeg передаются как name=value. Не каждая опция самостоятельной программы ffmpeg доступна в таком виде.

Проверка результата. Файл открывается, содержит video/audio streams и соответствует profile.

Типичная ошибка. Указан codec, которого нет в FFmpeg-сборке, или контейнер не принимает выбранную комбинацию streams.

Безопасный откат. Не перезаписывайте исходник. При ошибке удалите output.mp4, измените codec/container и повторите короткий тест.

Сохранить композицию в .melt и MLT XML

Цель. Отделить описание монтажа от финального видео, чтобы композицию можно было повторно открыть или сгенерировать программно.

Подготовка. Сначала убедитесь, что команда корректно воспроизводится или рендерится.

  1. Добавьте к рабочей команде -serialise project.melt, чтобы записать текстовую сериализацию.
  2. Для XML используйте consumer: melt clip1.mp4 clip2.mp4 -consumer xml:project.mlt.
  3. Откройте созданный файл как обычный текст и проверьте пути к медиаданным.
  4. Повторно загрузите проект через melt и сделайте короткий preview или test render.

Важный параметр. Путь к media сохраняется так, как он был указан. Абсолютные пути привязывают проект к структуре конкретной машины.

Проверка результата. Повторное открытие проекта создаёт ту же последовательность и видит все sources.

Типичная ошибка. После переноса каталога XML открывается, но часть producers не находит media.

Безопасный откат. .melt и XML — отдельные текстовые файлы; их можно удалить или восстановить из системы контроля версий без изменения исходных клипов.

Запустить headless-рендер с понятным прогрессом

Цель. Выполнять экспорт в CI, cron или на сервере без графического окна.

Подготовка. Не используйте consumer по умолчанию. Убедитесь, что avformat работает в обычном локальном тесте.

  1. Запустите melt -progress2 -profile atsc_1080p_25 clip1.mp4 -consumer avformat:headless.mp4 vcodec=libx264 acodec=aac.
  2. Сохраните stdout/stderr средствами своей оболочки или CI, если нужен журнал.
  3. Следите за строками прогресса и кодом завершения процесса.
  4. После завершения откройте headless.mp4 и выполните обычную проверку результата.

Важный параметр. -progress2 специально удобен для логов: каждая информация о прогрессе печатается отдельной строкой.

Проверка результата. Команда завершилась без GUI-зависимости, лог показывает продвижение, файл читается.

Типичная ошибка. Скрипт запускает просто melt clip1.mp4, из-за чего процесс пытается открыть SDL2 preview.

Безопасный откат. Остановите job, удалите неполный output и вернитесь к короткому тестовому clip; исходники не затронуты.

Использовать preset и проверить параметры consumer

Цель. Не повторять длинный набор одинаковых параметров кодирования во многих задачах.

Подготовка. Посмотрите доступные presets командой melt -query presets, затем конкретный preset через melt -query preset=имя.

  1. Выберите preset, подходящий к нужному consumer и profile.
  2. Примените его как свойство consumer в форме properties=имя_пресета.
  3. Сделайте короткий тестовый export в новый файл.
  4. Сверьте container, video/audio codecs и итоговые параметры независимым анализатором или плеером.

Важный параметр. Preset — это набор properties, а не гарантия наличия codec в текущей FFmpeg-сборке.

Проверка результата. Consumer принимает preset, export завершается, а фактические свойства результата соответствуют ожиданию.

Типичная ошибка. Имя preset существует в другой сборке или требует encoder, которого нет локально.

Безопасный откат. Уберите properties=… и вернитесь к явно заданным минимальным параметрам consumer.

Сквозной сценарий: от проверки source до сохраняемого проекта и MP4

Цель. Получить воспроизводимую цепочку, в которой исходники сначала проверяются, затем собираются, сериализуются и только после этого рендерятся.

Подготовка. Проверьте clip1.mp4 и clip2.mp4 отдельно, наличие avformat, нужных codecs и profile.

  1. Выполните melt -version и melt -query consumers; убедитесь в наличии avformat.
  2. Откройте каждый clip отдельной командой melt и исключите ошибку producer.
  3. Соберите тестовую композицию melt clip1.mp4 clip2.mp4 -mix 25 -mixer luma -mixer mix:-1.
  4. Сохраните структуру в XML, добавив -consumer xml:project.mlt.
  5. Загрузите project.mlt через melt и убедитесь, что sources найдены.
  6. Выполните финальный headless export: melt -progress2 -profile atsc_1080p_25 project.mlt -consumer avformat:final.mp4 vcodec=libx264 acodec=aac.
  7. Откройте final.mp4 и проверьте длительность, переход, звук и параметры изображения.

Важный параметр. Финальный profile должен быть выбран осознанно; он задаёт базовые параметры выходной композиции.

Проверка результата. project.mlt повторно открывается, а final.mp4 воспроизводится независимо от MLT.

Типичная ошибка. XML перенесён без media или запускается на системе с другим набором modules/codecs.

Безопасный откат. Сохраняйте project.mlt и исходники отдельно от final.mp4. При неудачном export удаляется только созданный медиaфайл; структура монтажа остаётся доступной для повторного запуска.

Чек-лист перед рендерингом, сохранением или публикацией

  • Версия melt известна, а нужные producers, filters, transitions и consumers подтверждены через query.
  • Все исходные пути доступны тому пользователю и процессу, который запускает render.
  • Profile выбран осознанно, а не остался случайным значением от другого проекта.
  • Контейнер и codecs присутствуют в текущей avformat/FFmpeg-сборке.
  • Короткий фрагмент с теми же filters и transitions успешно отрендерен до запуска полной задачи.
  • Выходное имя отличается от исходного media и не затирает единственную копию результата.
  • Для headless-задачи указан явный consumer и при необходимости включён -progress2.
  • После сериализации проверены абсолютные пути и переносимость .melt/MLT XML.
  • Финальный файл открывается независимым плеером, содержит ожидаемые video/audio streams и имеет правильную длительность.
  • Для публикации дополнительно проверены права на исходные media, размер файла и требования площадки; MLT не делает такую проверку автоматически.

Плюсы и минусы

Плюсы

  • Композиция описывается текстом и легко воспроизводится в скриптах, CI и серверной очереди.
  • melt объединяет playback, монтажную модель, filters, transitions, multitrack и export в одном CLI-интерфейсе.
  • MLT XML позволяет хранить редактируемую структуру проекта отдельно от финального медиaфайла.
  • Широкую поддержку контейнеров и codecs обеспечивает avformat-модуль на базе FFmpeg, если он включён в сборку.
  • Есть встроенная инвентаризация возможностей через melt -query, поэтому pipeline можно проверять программно.
  • Поддерживаются headless-рендеринг, прогресс для логов, presets и несколько consumers.
  • Проект свободный и не требует аккаунта, подписки, пробного режима или облачной загрузки исходников.
  • Framework используется реальными NLE, поэтому CLI работает на той же объектной модели producers, playlists, tractors, filters и consumers.

Минусы

  • Нет полноценного графического таймлайна: сложную композицию приходится держать в командах или XML.
  • Порядок аргументов критичен, а документация прямо предупреждает о слабой проверке ошибок командного парсера.
  • Состав функций зависит от сборки и подключённых модулей; одинаковая команда не гарантированно переносится между пакетами.
  • Properties некоторых services могут быть проигнорированы без очевидного сообщения, если они не применимы.
  • FFmpeg-опции нельзя механически копировать из команды ffmpeg: avformat consumer принимает только поддерживаемые свойства.
  • GPU-ускорение и OpenGL требуют совместимого набора модулей и не охватывают каждый filter.
  • Текстовая сериализация хранит media paths как задано, поэтому перенос проекта требует дисциплины каталогов.
  • Для разового ручного монтажа освоение MLT обычно сложнее, чем запуск Shotcut или Kdenlive.

Кому подойдёт

  • Разработчикам медиасервисов. MLT даёт API и CLI на одной модели, а melt удобно использовать как эталонный исполнитель и инструмент диагностики.
  • Инженерам автоматизации. Headless-рендеринг, MLT XML и -progress2 подходят для очередей, cron, CI и генерации видео по данным.
  • Пользователям Kdenlive и Shotcut, которым нужен низкоуровневый контроль. Знание MLT помогает понимать структуру проектов и рендеринг под оболочкой.
  • Техническим пользователям Linux/macOS/Windows. Если терминал и текстовые конфигурации привычны, отсутствие GUI не является барьером.
  • Системам вещания и генерации повторяемого контента. MLT хорошо соответствует задачам, где сценарий композиции формируется автоматически и исполняется много раз.

Кому не подойдёт

  • Новичку, который хочет монтировать мышью. Здесь нет медиабиблиотеки, графического таймлайна, draggable clips и наглядного inspector.
  • Пользователю с одной задачей «обрезать и сохранить». Специализированный GUI или простой конвертер потребует меньше подготовки.
  • Команде, которой нужен встроенный облачный review. MLT не предоставляет аккаунты, комментарии, совместные пространства и историю правок как SaaS.
  • Пользователю, которому нужна одинаковая готовая поставка на всех устройствах. Состав modules/codecs зависит от платформы и упаковки.
  • Тем, кто ожидает генеративные AI-функции. MLT — медиадвижок и framework, а не сервис автоматического создания роликов по текстовому описанию.

Сравнение с другими аналогами

MLT Framework tools пересекается сразу с двумя классами решений: мультимедийными CLI/framework и полноценными графическими редакторами. Поэтому сравнение корректно только по одинаковым критериям: основная задача, platform, порог освоения, форматы, автоматизация, модель оплаты, ограничения и подходящий сценарий.

Альтернатива Основная задача Платформы Порог освоения Форматы Автоматизация Оплата Главное ограничение Лучший сценарий
FFmpeg Транскодирование, mux/demux, фильтрация, streaming, анализ Linux, macOS, Windows, BSD и другие Высокий для сложных filter graphs Очень широкий набор библиотек и codecs Очень высокая, CLI и библиотеки Свободное ПО Менее естественная модель именно нелинейного проекта с playlists/tractors Конвертация, фильтрация и media pipeline без потребности в MLT-проекте
GStreamer Построение мультимедийных pipelines и приложений Linux, Windows, macOS, Android, iOS, BSD и другие Высокий Зависит от plugin set, широкий охват Очень высокая, gst-launch и API Свободное ПО, core LGPL Pipeline-модель сложна для пользователя, который мыслит монтажным таймлайном Streaming, real-time pipelines и разработка кроссплатформенных media-приложений
Shotcut Графический нелинейный монтаж на базе MLT Windows, macOS, Linux Средний Широкие форматы через FFmpeg Ниже, чем у CLI; есть jobs и технические возможности Бесплатно, open source GUI удобнее ручного монтажа, но хуже подходит как низкоуровневый headless-конструктор Визуальный монтаж с тем же MLT-движком
Kdenlive Полноценный графический NLE Linux, Windows, macOS, BSD Средний Широкий набор media через MLT/FFmpeg Есть render queue и скриптовые сценарии вокруг проектов, но GUI — основной режим Бесплатно, open source Сложнее использовать как минимальный автономный CLI-движок Монтаж многодорожечного проекта с визуальными инструментами

FFmpeg

FFmpeg ближе всего к melt по командной форме, но его сильная сторона — работа с потоками, codecs, контейнерами и filter graphs. Если не нужна структура MLT с playlists, tractors и проектной сериализацией, ffmpeg часто короче и прямее. MLT, напротив, удобнее, когда важно строить композицию в терминах нелинейного монтажа и затем отдавать encoding тому же FFmpeg через avformat.

GStreamer

GStreamer — самостоятельный кроссплатформенный framework, где приложение строит pipeline из элементов. Он особенно силён в real-time, streaming, capture и разработке сервисов. MLT ориентирован на time-based composition и NLE-модель. Выбор между ними зависит не от «количества codecs», а от того, нужна ли монтажная объектная модель или универсальный streaming pipeline.

Shotcut

Shotcut использует MLT и даёт над ним полноценный GUI: dockable panels, playlist, filters, history, encoding panel и jobs. Для ручной работы это принципиально проще. Если пользователь пришёл к MLT из желания получить «обычный видеоредактор», логичнее начать с Shotcut, а melt использовать для диагностики и автоматизации. Дополнительные варианты визуального монтажа собраны в материале GeekHow про ПО для редактирования видео.

Kdenlive

Kdenlive тоже работает поверх MLT, но предлагает развитый нелинейный интерфейс с Project Bin, Timeline, Monitors и Project Settings. Он подходит для долгого ручного монтажа и сложной работы с большим проектом. Melt выигрывает там, где проект генерируется машиной, а не человеком: в таком сценарии текстовый pipeline проще хранить в репозитории и запускать без desktop session.

Типичные проблемы и диагностика

1. Терминал сообщает, что melt не найден

Симптом: shell возвращает command not found или аналогичное сообщение. Возможная причина: пакет не установлен либо каталог с executable отсутствует в PATH. Диагностика: проверьте пакетный менеджер и наличие binary в ожидаемом каталоге. Исправление: установите MLT/melt из согласованного источника или добавьте корректный каталог в PATH. Проверка результата: melt -version выводит версию без ошибки.

2. Файл не открывается и producer считается invalid

Симптом: melt завершается при загрузке media или показывает ошибку producer. Возможная причина: неверный путь, повреждённый файл, отсутствие подходящего producer или decoder. Диагностика: проверьте существование файла, затем melt -query producers и наличие avformat. Исправление: исправьте путь либо установите сборку с нужным модулем/decoder. Проверка результата: простой melt файл начинает playback или headless-обработку.

3. На сервере melt пытается открыть окно и завершается

Симптом: headless-job не стартует из-за display/audio environment. Возможная причина: consumer не указан, поэтому выбирается SDL2 preview. Диагностика: сравните команду с вариантом, где явно задан avformat. Исправление: используйте -consumer avformat:output или другой безоконный consumer. Проверка результата: процесс работает без GUI и создаёт файл.

4. avformat отсутствует в consumers

Симптом: экспортная команда не создаёт consumer avformat. Возможная причина: MLT собран или упакован без FFmpeg-модуля. Диагностика: melt -query consumers и melt -query producers не содержат avformat. Исправление: установите пакет/сборку MLT с соответствующим модулем вместо копирования случайной отдельной библиотеки. Проверка результата: avformat появляется в query и короткий MP4 export завершается.

5. Выбранный video/audio codec не работает

Симптом: avformat запускается, но кодирование завершается ошибкой codec. Возможная причина: encoder не включён в локальную FFmpeg-сборку или несовместим с container. Диагностика: используйте melt -query video_codecs и melt -query audio_codecs. Исправление: выберите encoder из фактического списка и совместимый container. Проверка результата: короткий export создаёт воспроизводимый файл с нужными streams.

6. На выходе неправильные fps, размер или aspect ratio

Симптом: media экспортируется, но базовые video properties отличаются от ожидаемых. Возможная причина: неверный или автоматически выбранный profile. Диагностика: melt -query profiles и сравнение текущей команды с целевыми параметрами. Исправление: явно задайте подходящий -profile и не пытайтесь компенсировать ошибочный profile только шириной/высотой consumer. Проверка результата: независимый анализ файла показывает ожидаемые fps и размер.

7. Filter указан, но визуально ничего не меняется

Симптом: команда завершается без явной ошибки, но эффект отсутствует. Возможная причина: filter не зарегистрирован, property ему не принадлежит либо из-за порядка команды filter прикреплён не к тому уровню. Диагностика: запросите filter=id, включите verbose/debug и сократите pipeline до одного producer и одного filter. Исправление: используйте документированные properties и верните сервис в нужное место команды. Проверка результата: эффект виден на коротком тестовом фрагменте.

8. Переход срабатывает не там или имеет неправильную длительность

Симптом: dissolve начинается раньше/позже, захватывает не те clips или выглядит слишком длинным. Возможная причина: перепутаны in/out, a_track/b_track или длительность -mix в кадрах. Диагностика: временно уберите transitions и проверьте расположение sources, затем верните один transition. Исправление: пересчитайте диапазон по profile и исправьте track indexes. Проверка результата: transition начинается и заканчивается в заданных frame positions.

9. MLT XML открывается на одной машине и теряет media на другой

Симптом: проектная структура читается, но producers сообщают об отсутствующих файлах. Возможная причина: сериализация содержит пути, действительные только на исходной системе. Диагностика: откройте XML как текст и найдите resource paths. Исправление: приведите проект и media к переносимой структуре каталогов и обновите ссылки. Проверка результата: повторная загрузка XML на целевой машине проходит без missing resources.

10. OpenGL/Movit-эффект ломает preview или render

Симптом: CPU-пайплайн работает, а после добавления glsl/movit filter появляются ошибки или пустой output. Возможная причина: отсутствует Movit/OpenGL module, несовместим render context или используется неподходящий consumer. Диагностика: проверьте наличие соответствующих filters через query и повторите проект без GPU-сервиса. Исправление: используйте совместимую MLT-сборку и qglsl-схему для поддерживаемых OpenGL effects либо замените effect CPU-вариантом, если он существует. Проверка результата: короткий render проходит с тем же GPU-filter и корректно воспроизводится.

FAQ

MLT Framework tools — это то же самое, что Shotcut?

Нет. Shotcut — графический видеоредактор, который использует MLT как движок. MLT Framework tools работают на более низком уровне; melt управляется командной строкой и не предоставляет полноценный GUI Shotcut.

Нужно ли регистрироваться для работы с melt?

Нет. Локальная установка и запуск melt не требуют пользовательского аккаунта. Регистрация может понадобиться только внешней инфраструктуре, которую вы сами добавите в pipeline, но это не требование MLT.

Можно ли использовать MLT полностью без интернета?

Да, если sources локальные, нужные modules/codecs уже установлены и consumer пишет локальный файл или показывает локальный preview. Сеть нужна только для сетевых sources, streams, обновлений и внешних сервисов.

Есть ли в MLT собственный проектный формат?

Да. Существуют текстовая сериализация melt и MLT XML. XML ближе к объектной модели MLT и подходит для сложных playlists, multitracks, filters и transitions.

Почему список поддерживаемых форматов нельзя свести к одной таблице расширений?

Потому что MLT модульный. Реальный набор formats/codecs зависит от producers, consumers, FFmpeg и других библиотек в конкретной сборке. melt -query показывает фактические возможности системы точнее любого статического списка.

MLT заменяет FFmpeg?

Нет. MLT часто использует FFmpeg через avformat для декодирования и кодирования. Он добавляет собственную модель композиции, playlists, multitracks, filters, transitions и XML, но не устраняет зависимость от FFmpeg в типичном универсальном media workflow.

Подходит ли melt для обычного ручного видеомонтажа?

Технически да: документация прямо описывает его как multitrack command-line oriented video editor. Но ручной длинный монтаж удобнее выполнять в GUI NLE, а melt использовать для автоматизации, тестов и рендера воспроизводимых сценариев.

Можно ли открыть MLT XML в другом редакторе?

MLT XML понимают приложения и инструменты, которые используют совместимую MLT-модель. Переносимость зависит от media paths, versions и набора modules; наличие XML-файла само по себе не гарантирует идентичный результат в любой программе.

Нужно ли устанавливать отдельный codec pack в Windows?

MLT обычно получает форматы через avformat и включённые FFmpeg-библиотеки, поэтому внешний системный codec pack не является универсальным способом добавить encoder/decoder в конкретную сборку MLT. Сначала проверяют query самой установки.

Есть ли у MLT мобильное приложение?

В официальной документации melt рассматривается как командный инструмент для настольных и серверных сред. Сам MLT — framework, который разработчики могут встраивать в приложения; мобильные программы на его основе не следует считать тем же продуктом, что консольный melt.

Вывод

MLT Framework tools имеет смысл выбирать не по принципу «нужен видеоредактор», а по способу работы. Для ручного монтажа с десятками визуальных решений по ходу проекта рациональнее Shotcut или Kdenlive: они дают таймлайн, preview и редактирование мышью, оставаясь в экосистеме MLT. Для простого транскодирования без монтажной структуры обычно прямее FFmpeg.

Сильный сценарий melt начинается там, где композиция должна быть описана, сохранена и повторена. Командная строка, MLT XML, query возможностей, headless avformat consumer и progress2 хорошо складываются в автоматический media pipeline. Цена такого контроля — высокий порог освоения, зависимость от состава modules и необходимость дисциплинированно управлять profiles, codecs и путями к source files.

Для сервера рендера, генератора роликов из шаблона, тестового стенда MLT или разработчика собственного видеоприложения это оправданный инструмент. Для пользователя, которому важнее визуальный монтаж и минимум терминала, правильный выбор — редактор поверх MLT, а не попытка превратить melt в GUI, которого у него нет.