gMKVExtractGUI

gMKVExtractGUI позволяет извлекать из файлов Matroska отдельные видео-, аудио- и субтитровые дорожки, вложения, главы, теги, таблицы CUE, cues и временные метки через mkvextract из состава MKVToolNix, а также выполнять эти операции пакетно с выбором элементов, шаблонами имён и контролем очереди заданий.

Программа ориентирована именно на демультиплексирование контейнеров MKV и родственных файлов Matroska: она показывает структуру входного файла в виде дерева, даёт отметить нужные элементы и передаёт выбранную операцию утилитам MKVToolNix. Это важно понимать до начала работы: gMKVExtractGUI не перекодирует видео и звук, не меняет качество дорожек и не превращает один кодек в другой. Если из контейнера извлекается поток H.264, HEVC, DTS, FLAC, ASS или PGS, на выходе получается соответствующий самостоятельный поток или файл в подходящем для него формате.

Главная практическая ценность gMKVExtractGUI — возможность работать с функциями mkvextract без ручного составления команд. Помимо обычного извлечения дорожек доступны отдельные режимы для тегов, вложений, глав, CUE sheet, cues и временных меток; для серии файлов есть пакетная загрузка, добавление операций в очередь и Job Manager, а шаблоны имён позволяют заранее определить, как будут называться видео, аудио, субтитры, главы, вложения и XML с тегами.

Скачать gMKVExtractGUI

Оценка 9.7Рекомендуем
  • Конвертация видео
  • Сжатие файлов
  • Просто для новичков
Скачать бесплатно на Windows
Лучшая альтернатива
gMKVExtractGUI
Оценка 8.5
  • Требуется MKVToolNix
  • Нет конвертации потоков
  • Фокус только на Matroska
Скачать gMKVExtractGUI
Загрузка начнётся после нажатия

Для чего нужен gMKVExtractGUI

Контейнер Matroska может хранить несколько видео- и аудиопотоков, десятки дорожек субтитров, шрифты и изображения во вложениях, сведения о главах, теги, таблицы CUE и служебные данные синхронизации. Обычный видеоплеер показывает лишь ту часть этой структуры, которая нужна для воспроизведения, поэтому задача достать из MKV одну дорожку как отдельный файл не всегда решается через меню проигрывателя. gMKVExtractGUI как раз предназначен для такого разборочного сценария: программа читает структуру контейнера средствами MKVToolNix, представляет элементы в понятном списке и запускает mkvextract с параметрами, соответствующими отмеченным пунктам.

Типичный пример — фильм с одной видеодорожкой, несколькими языковыми аудиодорожками, субтитрами SRT или ASS и набором шрифтов. Если требуется сохранить только русскую аудиодорожку и русские субтитры, нет необходимости ремультиплексировать весь файл или запускать перекодирование. Достаточно загрузить MKV, отметить нужный audio track и subtitle track, выбрать каталог вывода и выполнить режим Tracks. Для ASS-субтитров при этом можно отдельно извлечь вложенные TTF/OTF-шрифты, если они нужны для правильного отображения оформления.

Второй характерный сценарий — подготовка материалов для последующего монтажа, анализа или ремультиплексирования. Из MKV можно извлечь исходный видеопоток, звук без перекодирования, главы в XML, OGM, CUE или PBF, а также теги в XML. Затем эти файлы используются уже в другом инструменте. Сам gMKVExtractGUI не является редактором Matroska и не собирает новый контейнер: его сильная сторона — выборочное извлечение и автоматизация повторяющихся операций.

Главное окно gMKVExtractGUI 2.5.1 с деревом видео, аудио, субтитров и вложений

Связь с MKVToolNix и принцип работы

gMKVExtractGUI использует исполняемые инструменты MKVToolNix. Для анализа структуры файла задействуются данные, получаемые через mkvmerge и mkvinfo, а фактическое извлечение выполняет mkvextract. Поэтому путь к каталогу MKVToolNix — не декоративная настройка, а обязательная часть конфигурации. В верхней части главного окна есть поле MKVToolNix Directory, кнопка Browse... и, в современных сборках, Auto Detect. Если автоматическое определение нашло правильный каталог, вручную указывать исполняемые файлы не нужно.

При запуске программа пытается определить путь последовательно. На него могут влиять переданный аргумент командной строки, сохранённая настройка, текущая папка и системные механизмы поиска установки MKVToolNix. На Windows программа умеет использовать сведения из реестра; в среде Mono предусмотрен поиск стандартного расположения инструментов Linux. Если автоматическое определение не подходит, путь задаётся вручную через Browse. На практике это одно из первых мест, которое следует проверять при ошибке ничего не извлекается: gMKVExtractGUI должна видеть именно тот каталог, где доступны нужные утилиты MKVToolNix.

Отдельное следствие такой архитектуры состоит в том, что поддержка конкретных контейнерных возможностей и синтаксиса mkvextract зависит не только от интерфейса gMKVExtractGUI, но и от установленного MKVToolNix. Программа содержит логику совместимости с различными поколениями синтаксиса, однако при диагностике необычной ошибки полезно смотреть журнал: в нём видно, какой инструмент запускался, с какими параметрами и что он вернул. Это точнее, чем судить о проблеме только по отсутствующему выходному файлу.

Главное окно и логика интерфейса

Рабочее окно разделено на несколько функциональных зон. Сверху находится путь к MKVToolNix. Ниже расположен блок Input Files, где отображаются загруженные файлы и элементы контейнера. Под деревом находится Selected File Information с общей информацией о выбранном MKV. Ещё ниже задаётся Output Directory for Selected File. В нижнем блоке Actions расположены переход к журналу и менеджеру заданий, переключатель всплывающих сообщений, выбор типа глав, выбор режима извлечения, добавление задач и кнопка Extract. В строке состояния находятся индикаторы прогресса, Dark, Options, Abort All и Abort.

Такая компоновка отражает обычный порядок действий: сначала настроить путь к MKVToolNix, затем добавить один или несколько файлов, выбрать элементы, решить, куда их сохранить, определить режим и запустить операцию. Для единичного файла это занимает несколько кликов. При серии файлов логика остаётся той же, но операции можно складывать в очередь и запускать из Job Manager.

Интерфейс не скрывает технические сведения о дорожках. В строках дерева видны тип элемента, идентификатор, Codec ID, язык, разрешение для видео, частота и число каналов для аудио, а также другие свойства, которые удалось прочитать из Matroska. Это позволяет выбирать дорожку не по порядковому номеру наугад, а по реальным метаданным.

Главное окно gMKVExtractGUI 2.6.4 с несколькими аудио- и PGS-дорожками

Input Files: добавление одного файла и каталога

Файлы можно добавлять стандартным выбором или перетаскиванием. Область Input Files принимает drag-and-drop, а современная ветка интерфейса рассчитана и на несколько входных файлов. Если перетащить каталог, программа может обработать подходящие Matroska-файлы из него в рамках пакетного сценария. Это удобно для сериалов и архивов, где структура контейнеров похожа и требуется извлечь однотипные элементы из большого количества эпизодов.

Переключатель Append input on drag and drop определяет, будет ли новый набор дополнять уже загруженный список. Если флажок не используется, очередное перетаскивание может восприниматься как новая загрузка; если включён — входные файлы добавляются к текущему набору. При длинной серии это предотвращает случайную потерю уже подготовленного списка.

В дереве каждый файл является отдельным узлом. Его можно раскрыть и увидеть дорожки, вложения и главы. В пакетной работе важно не путать выбор файла и выбор дорожки: выделение строки меняет контекст и информацию о текущем файле, а флажок у элемента определяет, попадёт ли он в операцию извлечения. Это различие особенно заметно, когда загружено десять и более MKV.

Контекстное меню выбора дорожек

Щелчок правой кнопкой по дереву открывает контекстное меню. Оно позволяет отметить или снять отметку сразу со всех дорожек либо работать по типам: video, audio, subtitles, chapters, attachments. Для субтитров предусмотрена более детальная фильтрация, в том числе по языку, Codec ID, Track Name и признаку forced, если соответствующие свойства присутствуют. Это быстрее ручного проставления десятков флажков в файлах с большим количеством языков.

Через то же меню доступны действия с входным списком: добавление файла, удаление выбранных или всех файлов, раскрытие и сворачивание узлов, открытие самого исходного файла или его папки. В современных сборках рядом с деревом есть кнопка Select..., которая показывает тот же набор команд и делает функции контекстного меню заметнее для пользователей, не привыкших искать действия по правому клику.

В практической пакетной задаче контекстное меню удобно использовать как фильтр. Например, можно сначала снять выбор со всех элементов, затем отметить только subtitle tracks, после чего уточнить язык. Для PGS-субтитров или дорожек с признаком Forced выбор можно дополнительно ограничить свойствами, которые отображаются в интерфейсе. Такой подход снижает риск извлечь лишние десятки потоков.

Контекстное меню дерева gMKVExtractGUI с массовым выбором видео, аудио и субтитров

Selected File Information

Панель Selected File Information показывает сводные сведения об активном контейнере. В типичном файле здесь видны Writing Application, Muxing Application, Duration и Date. Эти поля не участвуют непосредственно в извлечении, но помогают понять происхождение и параметры контейнера. Например, информация о приложении muxer полезна, когда два внешне одинаковых MKV ведут себя по-разному: можно увидеть, что они были собраны разными версиями mkvmerge или другим ПО.

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

Каталог вывода и поведение при совпадении имён

Путь сохранения задаётся в поле Output Directory for Selected File. Кнопка Browse открывает выбор каталога, а флажок Use Source направляет результаты в папку исходного MKV. Для разовой операции Use Source удобен: рядом с фильмом появляются извлечённые дорожки. Для пакетной обработки лучше заранее продумать структуру, чтобы десятки файлов не перемешались.

Если каталог назначения не существует, программа может предложить его создать. В шаблонах имён поддерживается специальный разделитель каталога {DirSeparator}, поэтому результат можно разложить по подпапкам прямо через шаблон. Например, шаблон для аудио можно построить так, чтобы имя исходного файла становилось именем подкаталога, а внутри создавались отдельные дорожки. Это особенно полезно при обработке сезона сериала.

По умолчанию защита от случайной перезаписи включена на уровне формирования имени: когда файл с тем же именем уже существует, gMKVExtractGUI может подобрать вариант с дополнительным счётчиком. В интерфейсе также есть флажок Overwrite existing files. Его смысл противоположен защитному поведению: при включении допускается замена уже существующего результата. В обычной работе безопаснее оставлять перезапись выключенной, пока пользователь не уверен, что каталог содержит только старые копии, которые действительно нужно заменить.

Следует учитывать ещё один нюанс: расширение выходного файла выбирается не произвольно. Для режима Tracks программа сопоставляет тип дорожки и Codec ID с подходящим расширением. Поэтому изменение шаблона имени не превращает HEVC в MP4 и DTS в AAC. Шаблон задаёт базовую часть имени и структуру каталогов, а расширение отражает фактический тип извлекаемого потока.

Извлечение видеодорожек

Для видео используется режим Tracks. После загрузки контейнера видеопотоки отмечаются в дереве, затем выбирается каталог и запускается Extract. Никакого декодирования и повторного кодирования при этом не происходит: mkvextract копирует поток из Matroska в отдельный файл. Это важно для качества и скорости — операция в основном ограничена чтением исходника и записью результата, а не вычислительной сложностью кодирования.

gMKVExtractGUI определяет расширение по Codec ID. Для семейства V_MPEG4/ISO/... используется .avc, для HEVC — .hevc, для AV1 — .av1, для MPEG-1/2 — .mpg, для Theora — .ogv, для VP-потоков — .ivf, для Dirac — .drc. Потоки, связанные с VFW/FOURCC, могут получить .avi, QuickTime и ProRes — .mov. Если кодек не распознан таблицей gMKVExtractGUI, применяется запасной вариант.

Извлечённый elementary stream не всегда рассчитан на непосредственное воспроизведение двойным щелчком. Например, файл AVC или HEVC может требовать плеер, который понимает сырой поток, либо последующее помещение в новый контейнер. Это нормальное следствие демультиплексирования, а не ошибка. Если цель пользователя — получить привычный MP4 с видео и звуком, нужен этап ремультиплексирования в другом инструменте; gMKVExtractGUI решает более узкую задачу — достать конкретный поток без изменения его содержимого.

Извлечение аудио и учёт задержки

Аудиодорожки также извлекаются через режим Tracks. Программа распознаёт распространённые Codec ID и назначает характерные расширения: MP3 для MPEG Layer 3, MP2 для Layer 2, WAV для PCM и некоторых ACM-потоков, AC3 и EAC3 для Dolby Digital, DTS для DTS, OGG для Vorbis, FLAC для FLAC, AAC для AAC, THD для TrueHD, TTA для TTA1, WV для WavPack, OPUS для Opus, MLP для Meridian Lossless Packing. Если конкретный Codec ID не попадает в специализированное правило, используется контейнерное расширение MKA.

Одна из практичных функций gMKVExtractGUI — вычисление задержки аудиодорожки относительно видео. В Matroska временная привязка может означать, что звук начинается не в нулевой точке. При простом извлечении такой поток технически остаётся тем же, но при дальнейшем монтаже или ремультиплексировании важно знать смещение. Программа умеет определять delay и effective delay на основе сведений MKVToolNix и подставлять значение в имя файла.

Стандартный шаблон аудио содержит фрагмент _DELAY {EffectiveDelay}ms. Поэтому результат может называться, например, movie_track2_[eng]_DELAY -80ms.dts. Число в имени не означает, что аудиофайл был физически сдвинут или пересэмплирован. Это метка, сообщающая величину временного смещения для последующего использования. При сборке нового контейнера пользователь может учесть её отдельно.

Если исходный Matroska не содержит видео, относительный delay в привычном смысле может быть неприменим. В логике программы предусмотрено, что поиск задержки не должен бессмысленно выполняться для аудиоконтейнера без видеодорожки. Если значение кажется подозрительным, полезно сверить данные с mkvinfo/mkvmerge через журнал и помнить разницу между Delay и EffectiveDelay: шаблоны позволяют использовать оба показателя.

Таблица аудиоформатов, которые получает gMKVExtractGUI

Codec ID или семействоРасширение результатаЧто важно помнить
A_MPEG/L3MP3Поток извлекается без перекодирования.
A_MPEG/L2MP2Формат остаётся MPEG Layer 2.
A_PCMWAVКонтейнер WAV используется для PCM.
A_AC3AC3Оригинальный Dolby Digital поток.
A_EAC3EAC3Оригинальный Enhanced AC-3.
A_DTSDTSНе преобразуется в WAV или AAC.
A_VORBISOGGИзвлекается Vorbis в подходящую оболочку.
A_FLACFLACСохраняется lossless-поток.
A_AACAACНа выходе элементарный AAC-поток.
A_TRUEHDTHDФайл TrueHD может требовать специализированный софт.
A_OPUSOPUSКодек остаётся Opus.
A_MLPMLPСохраняется исходный MLP-поток.

Субтитры: текстовые, графические и forced-дорожки

Субтитры в Matroska бывают принципиально разными. Текстовые дорожки содержат строки и разметку, а графические — изображения. gMKVExtractGUI не выполняет OCR и не преобразует один тип в другой: она извлекает исходный поток в формате, соответствующем Codec ID. Для S_TEXT/UTF8 и S_TEXT/ASCII используется SRT, для SSA/ASS — ASS, для USF — USF, для WebVTT — WEBVTT. VobSub и bitmap-подобные дорожки получают SUB, DVB subtitles — DVBSUB, Blu-ray PGS — SUP.

Эта разница определяет дальнейшую работу. SRT можно открыть в обычном текстовом редакторе, ASS сохраняет стили и позиционирование, а SUP содержит графические изображения и требует инструментов, понимающих PGS. Если пользователю нужен текст из PGS, gMKVExtractGUI решает только первый этап — извлечение. Распознавание изображений в текст выполняется сторонним OCR-инструментом.

В списке дорожек отображаются язык и другие признаки, включая Forced, если он задан в контейнере. Контекстное меню умеет массово отмечать forced-дорожки по типам, что полезно для фильмов, где отдельная дорожка содержит только переводы надписей или иностранной речи. Однако флаг Forced — это метаданные Matroska, а не гарантированное описание содержания: автор файла мог выставить его неверно. Поэтому при сомнении стоит смотреть Track Name и язык.

Для современных MKV также важен Language IETF. Помимо обычного поля Language программа понимает отдельное значение LanguageIETF и позволяет включать его в шаблон имени. Это полезно, когда стандартная трёхбуквенная метка слишком грубая и нужно различать варианты языка или региональные теги.

ASS/SSA и вложенные шрифты

Стили ASS/SSA часто ссылаются на конкретные шрифты. В релизах аниме и фанатских субтитрах эти TTF/OTF-файлы нередко помещаются внутрь MKV как attachments. Если извлечь только .ass и открыть его на системе без нужных шрифтов, визуальный результат может отличаться: изменятся гарнитура, ширина строк, переносы и иногда позиционирование.

Поэтому практический сценарий для ASS состоит из двух действий: извлечь субтитровую дорожку в режиме Tracks и отдельно извлечь attachments. В дереве вложения отображаются с именами и MIME-типом, что помогает отличить шрифт от обложки или иного файла. Установка шрифтов в систему не является задачей gMKVExtractGUI; программа лишь сохраняет их из контейнера.

Если в MKV десятки вложений, можно использовать групповой выбор attachments. Имена по умолчанию сохраняются через шаблон {AttachmentFilename}, поэтому шрифты обычно получают те же имена, которые имели внутри контейнера. При совпадении имён действует защита от перезаписи либо явный режим overwrite, если он включён.

Извлечение вложений

Matroska позволяет хранить attachments любого типа: шрифты, изображения, текстовые документы и другие ресурсы. В gMKVExtractGUI для них есть отдельный режим извлечения и отдельный шаблон имени. В списке отображаются Attachment ID, имя, MIME-type и размер, если эти данные доступны. Это даёт возможность выбрать конкретный файл, а не выгружать весь набор.

Шаблоны вложений поддерживают {AttachmentID} с вариантами форматирования числа, {AttachmentFilename}, {MimeType} и {AttachmentFileSize}. На практике чаще всего достаточно оставить стандартный вариант с исходным именем. Добавлять MIME-type в имя стоит только если нужен технический архив и важно видеть тип ресурса без открытия файла.

Нужно учитывать, что attachment не является дорожкой. Поэтому параметры TrackNumber, Language, Delay и похожие к нему не относятся. В Options интерфейс разделяет шаблоны по типам именно для того, чтобы не смешивать несовместимые подстановки.

Главы: XML, OGM, CUE и PBF

Если контейнер содержит chapters, gMKVExtractGUI позволяет сохранить их отдельно. Формат выбирается в списке Chapter. Поддерживаются четыре варианта: XML, OGM, CUE и PBF. Режим не меняет сами временные точки в исходном MKV; он определяет, как информация о главах будет записана во внешний файл.

XML — наиболее полный и близкий к структуре Matroska вариант. Он подходит, когда главы планируется затем вернуть в MKVToolNix или обработать инструментом, который понимает Matroska Chapters XML. Такой файл может содержать вложенную структуру и метаданные, которые трудно выразить в простом плоском списке.

OGM — текстовое представление с парами временной метки и имени главы. Оно проще, хорошо читается человеком и поддерживается рядом старых инструментов. В gMKVExtractGUI этот вариант сохраняется с расширением .txt.

CUE предназначен для сценариев, где главы нужно представить в виде cue sheet. Это особенно понятно в аудиоконтенте, где временные метки могут соответствовать трекам. Следует отличать этот формат глав от отдельного режима cuesheet mkvextract: в первом случае gMKVExtractGUI преобразует главы в CUE-представление, во втором извлекается CUE sheet как отдельный тип данных контейнера.

PBF — дополнительный формат, который программа умеет формировать из XML-глав. Он нужен значительно реже, чем XML или OGM. Если пользователь не знает, для чего PBF требуется дальнейшему приложению, безопаснее оставлять XML: это наиболее информативный вариант для экосистемы Matroska.

gMKVExtractGUI 2.2 с видео, двумя аудиодорожками, субтитрами и главами

Теги, CUE sheet, cues и временные метки

Помимо Tracks в списке Extract предусмотрены режимы, соответствующие возможностям mkvextract: tags, attachments, chapters, cuesheet, timecodes_v2 или timestamps_v2 и cues. Названия могут визуально отличаться регистром или более дружелюбным оформлением, но логика одинакова: пользователь выбирает не формат перекодирования, а тип сущности Matroska, которую требуется выгрузить.

Tags

Теги Matroska извлекаются в XML. Это не ID3-теги аудиофайла и не EXIF: речь о системе тегов самого контейнера. Она может содержать названия, описания, сведения о частях, привязки к дорожкам или другим объектам. Результат полезен для анализа или переноса метаданных в новый MKV. Для тегов в Options есть отдельный шаблон имени; стандартная логика формирует имя на основе исходного файла и суффикса _tags, после чего добавляется .xml.

CUE sheet

Режим CUE sheet извлекает cue sheet, который mkvextract может сформировать из соответствующих данных Matroska. Имя создаётся по схеме, связанной с исходным MKV, с суффиксом _cuesheet.cue. Это отдельная операция и она не требует выбирать видеодорожку как обычный Track.

Cues

Cues — внутренние индексные сведения Matroska. При их извлечении результат привязывается к конкретной дорожке и получает расширение .cue. Такой файл нужен в технических и диагностических сценариях намного реже, чем субтитры или главы. Не следует путать cues с CUE sheet: совпадение слова cue скрывает разные сущности.

Timecodes и timestamps

В старом синтаксисе MKVToolNix использовалось название timecodes_v2, в новом — timestamps_v2. gMKVExtractGUI учитывает эту эволюцию и формирует выходной текстовый файл с временными метками для выбранной дорожки. Имя содержит исходное имя, номер трека, язык и суффикс .tc.txt. Временные метки полезны для Variable Frame Rate, диагностики синхронизации и специальных сценариев повторного muxing.

При выборе этого режима важно отметить именно дорожку, для которой нужны timestamps. Если выбрать неподходящий элемент или не выбрать дорожку вовсе, программа не сможет корректно сформировать операцию. В подобных ситуациях журнал обычно информативнее общего сообщения об ошибке.

Raw и full raw: когда нужны специальные режимы

В окне Options есть параметры Use raw extraction и Use full raw extraction. Они соответствуют специальным ключам mkvextract --raw и --fullraw и применимы к извлечению дорожек. Это не ускоренный режим и не улучшение качества, а более низкоуровневый способ выгрузить данные потока.

Raw имеет смысл только тогда, когда пользователь понимает требования последующего инструмента. В обычном сценарии — получить SRT, FLAC, DTS, AAC, AVC, HEVC или другой пригодный файл — эти флажки лучше не включать. Некоторые форматы требуют служебных заголовков или упаковки, которые обычный режим mkvextract формирует ожидаемым способом. Raw, напротив, стремится отдать данные ближе к тому, как они хранятся внутри контейнера.

Full raw имеет приоритет над обычным raw. Если включены оба, применяется более полный низкоуровневый режим. Это полезно для анализа кодека, разработки или редких восстановительных задач, но создаёт файлы, которые могут быть непонятны обычному медиаплееру. Сам факт успешного извлечения не означает, что такой результат обязан открываться как стандартный медиафайл.

Опция BOM для текстовых файлов

Ещё одна техническая настройка — Disable BOM to text files. Она связана с поведением новых версий MKVToolNix при выводе текстовых файлов. BOM — маркер порядка байтов, который некоторые приложения используют в начале UTF-текста. Для современного UTF-8 он часто не обязателен, а отдельные скрипты или старые программы могут воспринимать его как лишние символы.

Если после извлечения текстовых субтитров или других текстовых данных сторонний инструмент показывает странный символ в начале файла, есть смысл проверить этот параметр. При обычном просмотре субтитров менять его без необходимости не требуется. Опция воздействует именно на текстовый вывод и не имеет отношения к видео, аудио или графическим PGS-субтитрам.

Options и шаблоны имён файлов

Окно Options — одна из наиболее полезных частей программы для регулярной работы. В нём отдельно задаются шаблоны для Video Tracks, Audio Tracks, Subtitle Tracks, Chapters, Attachments и Tags. Рядом с каждым полем есть кнопка Add..., которая вставляет поддерживаемую подстановку, и Default, возвращающая стандартное значение конкретного шаблона. Общая кнопка Defaults сбрасывает настройки целиком.

Шаблон не является произвольным скриптом. Он представляет собой строку с заранее определёнными токенами в фигурных скобках. gMKVExtractGUI заменяет их метаданными текущего файла или дорожки, очищает недопустимые символы имени и добавляет расширение, соответствующее режиму. Это делает результат предсказуемым и позволяет создавать единообразные имена без ручного переименования сотен файлов.

Общие подстановки

ПодстановкаЧто вставляетсяПример применения
{FilenameNoExt}Имя исходного Matroska без расширенияОсновная часть имени результата.
{Filename}Полное имя исходного файла с расширениемПодходит для технических архивов.
{DirSeparator}Системный разделитель каталогаПозволяет создавать подпапки внутри шаблона.

{DirSeparator} особенно важен тем, что это не обычный символ / или \. Программа подставляет разделитель, соответствующий системе. Например, шаблон {FilenameNoExt}{DirSeparator}audio_{TrackNumber} может создать для каждого MKV свой каталог, а внутри разместить аудиофайлы.

Подстановки для дорожек

ПодстановкаСмысл
{TrackNumber}Порядковый номер дорожки в представлении программы.
{TrackNumber:0}, :00, :000Номер с заданным количеством разрядов.
{TrackID}Идентификатор дорожки Matroska.
{TrackID:0}, :00, :000Форматированный Track ID.
{TrackName}Название дорожки из метаданных.
{Language}Обычный языковой код.
{LanguageIETF}Языковой тег IETF, если присутствует.
{CodecID}Matroska Codec ID.
{CodecPrivate}Представление CodecPrivate, если оно доступно.
{Delay}Найденная задержка дорожки.
{EffectiveDelay}Эффективная задержка, используемая для практической синхронизации.
{TrackForced}Строка FORCED для дорожки с установленным флагом Forced, иначе пустое значение.

Форматированные номера полезны при сортировке. Если файловая система сортирует строки лексикографически, имена track1, track2, track10 выглядят менее аккуратно, чем track001, track002, track010. Для коллекций с большим количеством потоков варианты :00 и :000 обеспечивают стабильный порядок.

{TrackName} и {Language} делают имена понятными, но зависят от качества метаданных исходного MKV. Если Track Name пуст, шаблон может оставить двойной разделитель или пустой фрагмент. Поэтому универсальный шаблон обычно строят вокруг FilenameNoExt и TrackNumber, а название дорожки добавляют как необязательную часть.

Видео- и аудиоспецифические подстановки

ПодстановкаТипЧто показывает
{PixelWidth}ВидеоШирина кадра.
{PixelHeight}ВидеоВысота кадра.
{SamplingFrequency}АудиоЧастота дискретизации.
{Channels}АудиоКоличество каналов.

Эти поля удобно использовать для архивного именования. Например, видеопоток можно назвать {FilenameNoExt}_{PixelWidth}x{PixelHeight}_track{TrackNumber}, а звук — {FilenameNoExt}_{Language}_{Channels}ch_{SamplingFrequency}_DELAY {EffectiveDelay}ms. При этом программа всё равно добавит подходящее расширение на основе Codec ID.

Подстановки для вложений

ПодстановкаЧто вставляется
{AttachmentID}Идентификатор вложения.
{AttachmentID:0}, :00, :000Идентификатор с форматированием числа.
{AttachmentFilename}Исходное имя вложения.
{MimeType}MIME-тип.
{AttachmentFileSize}Размер вложенного файла.

Для шрифтов и изображений наиболее естественно сохранять {AttachmentFilename}. Технические подстановки ID, MIME и размера полезнее при массовой выгрузке из архивов, где встречаются одинаковые или неинформативные исходные имена.

Стандартные шаблоны

Базовая конфигурация использует простые и читаемые схемы. Для видео — {FilenameNoExt}_track{TrackNumber}_[{Language}]. Для аудио добавляется _DELAY {EffectiveDelay}ms. Для субтитров используется та же основа без delay. Главы получают суффикс _chapters, вложения сохраняют {AttachmentFilename}, теги — {FilenameNoExt}_tags. Эти значения подходят большинству единичных операций и служат хорошей отправной точкой для собственных схем.

Примеры продуманных шаблонов

Разделение результатов по папкам исходных файлов

Для большой коллекции можно использовать подкаталоги. У аудио, например, шаблон {FilenameNoExt}{DirSeparator}audio{DirSeparator}{TrackNumber:00}_{Language}_{CodecID}_DELAY {EffectiveDelay}ms создаёт дерево, в котором каждый фильм имеет свою папку, а аудиодорожки лежат в подпапке audio. Аналогично субтитры можно направить в subtitles. Такой подход уменьшает риск перепутать результаты одинаковых track numbers из разных файлов.

Сохранение forced-признака в имени

Для субтитров удобно добавить {TrackForced}. Тогда обычная дорожка получит пустой фрагмент, а forced — слово FORCED. Например, шаблон {FilenameNoExt}_{Language}_{TrackForced}_sub{TrackNumber:00} облегчает дальнейшую автоматическую сортировку. Нужно помнить, что значение зависит от флага контейнера, а не от анализа текста субтитров.

Архивирование технических свойств

Если результаты извлекаются для анализа, в имя можно включить CodecID, TrackID, разрешение или частоту дискретизации. Это делает имена длиннее, зато позволяет понять содержание без MediaInfo. Для обычной медиатеки такая детализация избыточна: чаще достаточно исходного имени, языка и номера дорожки.

Job Manager и пакетное извлечение

Кнопка Add Jobs не запускает извлечение немедленно, а добавляет подготовленную операцию в очередь. Затем окно Jobs открывает Job Manager. Он отображает список задач, их состояние, время запуска и завершения, длительность, текущий трек и два уровня прогресса: текущую операцию и общий прогресс очереди.

Этот режим особенно полезен, когда необходимо сначала проверить выбор по нескольким файлам, а затем дать программе выполнить работу без постоянного вмешательства. Пользователь может загрузить набор MKV, для каждого отметить нужные элементы, добавить задачи, после чего запустить Run Jobs. В отличие от последовательного нажатия Extract в каждом файле, очередь сохраняет структуру планируемых операций.

Job Manager поддерживает удаление выбранных задач, остановку текущей операции, остановку всей очереди, сохранение списка задач и загрузку ранее сохранённого списка. В контекстном меню можно массово выбирать или снимать выбор и возвращать задачи в состояние Ready. Это удобно, если часть очереди уже выполнялась, но требуется повторить конкретные операции.

Всплывающие уведомления можно включать отдельно. Для длительной очереди они помогают заметить завершение, но при десятках коротких задач могут мешать. Поэтому в настройках хранится отдельное состояние показа popup для главного окна и Job Manager.

Окно Job Manager gMKVExtractGUI с очередью и индикаторами прогресса

Чем пакетный режим отличается от массового выбора

Пакетная загрузка нескольких файлов и Job Manager решают связанные, но не одинаковые задачи. Массовый выбор помогает быстро отметить однотипные дорожки в дереве. Очередь фиксирует конкретные операции с конкретными параметрами вывода. Если пользователь хочет извлечь русские субтитры из двадцати серий в разные папки, разумно сначала загрузить все серии, настроить фильтр выбора, проверить выходные каталоги и только затем формировать очередь.

При неодинаковой структуре эпизодов автоматический выбор нужно контролировать. Например, в одной серии русский язык может иметь TrackNumber 3, а в другой — TrackNumber 4. Выбор по языку устойчивее выбора по номеру. Если же метаданные языка в части файлов пусты, понадобится ручная проверка по Track Name или Codec ID.

Журнал: главный инструмент диагностики

Кнопка Log... открывает отдельное окно журнала. Оно содержит текст, который программа формирует при анализе и вызове инструментов MKVToolNix. Доступны Copy Selection, Refresh, Clear Log, Save... и Close. В отличие от короткого сообщения об ошибке, лог показывает контекст: какой файл обрабатывался, какие свойства были прочитаны, что вернул внешний процесс и какой exit code получен.

Если извлечение неожиданно не создаёт файл, журнал следует проверять до изменения десятка настроек. Частые причины хорошо различимы: неверный путь к MKVToolNix, отсутствие конкретного исполняемого файла, невозможность записать в каталог назначения, уже существующий файл при запрете overwrite, неподдерживаемая комбинация режима и выбранного элемента, ошибка самого контейнера.

Exit code 0 обычно означает успешное завершение внешнего инструмента. Предупреждения при этом могут присутствовать отдельно. gMKVExtractGUI исторически учитывает различие между предупреждением и ошибкой, поэтому наличие текста warnings не обязательно означает провал операции. Для точной диагностики важнее финальный код и наличие ожидаемого файла.

Окно Log gMKVExtractGUI 2.5.1 с данными анализа и exit code

Тёмная тема, подсказки и локализация

В строке состояния есть флажок Dark, переключающий тёмную тему. Для рабочих функций он ничего не меняет: это только оформление. Тёмный режим затрагивает основные формы и контекстные меню. При переключении во время работы интерфейс обновляется без необходимости менять параметры извлечения.

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

В Options также есть выбор Language / Culture. Языковые строки загружаются из JSON-файлов локализации, а смена культуры обновляет открытые окна. Среди поставляемых локалей присутствует русский файл. Если локализационные JSON отсутствуют или не загружаются, программа использует встроенные английские строки, поэтому отсутствие перевода не должно блокировать базовое извлечение.

Кнопка Translations... открывает редактор локализации. Он предназначен прежде всего для переводчиков: можно загрузить существующую локаль, фильтровать ключи, редактировать значения, сохранять JSON, создавать новый locale на основе английского и синхронизировать существующий файл с текущим набором английских строк. Для обычного извлечения этот инструмент не нужен.

Какие расширения получает видео и субтитры

ТипCodec IDРасширение
ВидеоV_MPEG4/ISO/*avc
ВидеоV_MPEGH/ISO/HEVChevc
ВидеоV_AV1av1
ВидеоV_MPEG1 / V_MPEG2mpg
ВидеоV_THEORAogv
ВидеоV_VP*ivf
ВидеоV_PRORESmov
СубтитрыS_TEXT/UTF8, S_TEXT/ASCIIsrt
СубтитрыS_TEXT/SSA, S_TEXT/ASSass
СубтитрыS_TEXT/USFusf
СубтитрыS_TEXT/WEBVTTwebvtt
СубтитрыS_VOBSUBsub
СубтитрыS_DVBSUBdvbsub
СубтитрыS_HDMV/PGSsup

Эта таблица описывает то, как gMKVExtractGUI именует результаты, а не полный перечень кодеков Matroska. Если кодек не попал в специализированное правило, применяется резервное расширение. В спорной ситуации лучше ориентироваться на Codec ID в дереве и на фактическое содержимое потока, а не только на суффикс файла.

Рабочий сценарий: извлечь одну дорожку субтитров

  1. Указать или автоматически определить каталог MKVToolNix.
  2. Добавить MKV в Input Files и раскрыть его узел.
  3. Найти subtitle track по языку, Track Name, Codec ID и признаку Forced.
  4. Поставить флажок только у нужной дорожки.
  5. Задать Output Directory либо включить Use Source.
  6. В списке Extract выбрать Tracks.
  7. Нажать Extract и дождаться завершения.

Если дорожка S_TEXT/UTF8, результат обычно будет SRT; для ASS — ASS; для PGS — SUP. Если цель — получить текст из SUP, после gMKVExtractGUI понадобится OCR. Если ASS использует нестандартные шрифты, имеет смысл сразу выгрузить attachments с TTF/OTF.

Рабочий сценарий: извлечь русские субтитры из сезона сериала

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

Шаблон имён стоит сделать устойчивым к одинаковым номерам: например, использовать {FilenameNoExt}_{Language}_{TrackForced}_sub{TrackNumber:00}. Если результаты должны лежать в подпапках каждой серии, добавляется {DirSeparator}. После проверки нескольких файлов операции помещаются в очередь Add Jobs и запускаются через Job Manager.

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

Рабочий сценарий: извлечь звук для дальнейшего ремультиплексирования

Выберите аудиодорожку по Codec ID, языку и числу каналов. В режиме Tracks программа создаст файл с подходящим расширением и, при стандартном шаблоне, добавит EffectiveDelay в имя. Не переименовывайте файл так, чтобы потерять значение delay, пока не завершено повторное muxing: это число может потребоваться при восстановлении синхронизации.

Например, DTS 5.1 останется DTS, FLAC останется FLAC, AAC — AAC. Если конечному контейнеру нужен другой кодек, перекодирование выполняется отдельным аудиоконвертером. gMKVExtractGUI принципиально не меняет параметры кодека, поэтому не предоставляет bitrate, quality preset или sample rate conversion.

Рабочий сценарий: выгрузить главы и теги перед пересборкой MKV

Для сохранения структуры перед серьёзным редактированием контейнера полезно извлечь XML-главы и XML-теги. Главы в XML лучше сохраняют структуру Matroska, чем упрощённый OGM. Теги извлекаются отдельным режимом. Вложения также стоит сохранить, если новый контейнер должен содержать шрифты, обложки или дополнительные ресурсы.

После выгрузки gMKVExtractGUI свою роль заканчивает. Новый MKV собирается в MKVToolNix GUI или командной строке mkvmerge. Такой раздельный подход удобен тем, что исходные элементы остаются независимыми файлами и их можно проверить перед повторной упаковкой.

Рабочий сценарий: получить технические временные метки

Выберите нужную дорожку и режим timestamps/timecodes. Результат .tc.txt содержит временные точки, которые могут понадобиться при анализе VFR, синхронизации или воспроизведении нестандартного материала. Это не файл субтитров и не список глав. Его обычно используют скрипты и инструменты, умеющие интерпретировать timestamps v2.

Если временные метки нужны вместе с самим потоком, это две отдельные операции: Tracks для дорожки и timestamps для неё же. В Job Manager их можно поставить в одну очередь. Для обычного просмотра видео timestamps отдельно извлекать не требуется.

Ограничения gMKVExtractGUI

Программа узко специализирована. Она не монтирует видео, не режет клипы по таймлайну, не выполняет цветокоррекцию, не конвертирует кодеки и не создаёт конечные профили для телефона или веба. Отсутствие этих функций — не недоработка интерфейса, а следствие назначения: gMKVExtractGUI является оболочкой вокруг инструментов извлечения MKVToolNix.

Ещё одно ограничение — зависимость от метаданных контейнера. Выбор по языку, Track Name и Forced удобен только тогда, когда автор MKV правильно заполнил эти свойства. Если все языки обозначены und, автоматический фильтр не сможет определить, где русский, а где английский. В таком случае дорожки приходится распознавать по порядку, кодеку и внешней проверке.

Извлечённый элементарный поток не обязан быть удобным для самостоятельного воспроизведения. AVC, HEVC, PGS и некоторые другие типы чаще предназначены для дальнейшей обработки или помещения в контейнер. Пользователь, ожидающий получить обычный MP4 одним кликом, выбирает не тот класс программы.

Наконец, gMKVExtractGUI требует рабочий набор MKVToolNix. Если путь неверен или в каталоге отсутствуют нужные утилиты, интерфейс не сможет заменить backend. Поэтому при переносе программы на другой компьютер нужно отдельно убедиться, что MKVToolNix доступен и определяется корректно.

Совместимость и особенности запуска

Основной интерфейс написан на C#/.NET и рассчитан прежде всего на Windows. Проект также предусматривает работу через Mono в Linux. На практике совместимость с конкретным окружением зависит от версии Mono, системных библиотек и доступности MKVToolNix. При проблемах интерфейса на Linux важнее проверять фактическую среду, чем переносить инструкции для Windows один в один.

Поддержка High DPI предусмотрена в интерфейсе, включая масштабирование при перемещении окна между мониторами с разным DPI. Это не влияет на файлы и извлечение, но важно для читаемости дерева дорожек и кнопок на современных дисплеях. Если элементы выглядят обрезанными, стоит прежде всего убедиться, что используется сборка с исправлениями DPI и стандартные параметры масштабирования системы.

Командная строка как способ открыть файлы и задать MKVToolNix

Хотя gMKVExtractGUI ориентирована на графический интерфейс, она умеет принимать аргументы командной строки. Файлы и каталоги можно передавать при запуске, что позволяет связать программу с проводником или собственным скриптом подготовки. Отдельный аргумент --mkvtoolnix="..." задаёт путь к MKVToolNix и имеет высокий приоритет при инициализации.

Это не превращает gMKVExtractGUI в полноценный CLI для всех операций. Если требуется полностью автоматизированный серверный скрипт без окон, рациональнее вызвать mkvextract напрямую. Аргументы gMKVExtractGUI полезны прежде всего как мост между внешним запуском и дальнейшей работой в GUI.

Частые ошибки и способы решения

СимптомВероятная причинаЧто проверить
Файл добавлен, но извлечение не стартуетНе найден MKVToolNix или выбран неподходящий режимПуть MKVToolNix, выбранные элементы и Extract mode.
Дерево дорожек пустоеАнализ контейнера завершился ошибкойLog, целостность MKV, доступность mkvmerge/mkvinfo.
Нет выходного файлаОшибка записи или внешний процесс завершился неуспешноКаталог вывода, права, свободное место, exit code.
Файл уже существуетЗащита от перезаписиOverwrite existing files или другое имя/каталог.
Субтитры SUP не открываются как текстЭто графический PGSИспользовать программу для PGS/OCR, а не текстовый редактор.
ASS выглядит иначеНе установлены вложенные шрифтыИзвлечь attachments TTF/OTF.
Звук после повторного muxing не синхроненНе учтён delayEffectiveDelay в имени и данные лога.
Raw-файл не воспроизводитсяНизкоуровневое извлечение без обычной упаковкиОтключить raw/fullraw, если он не нужен.
Языковой фильтр выбирает не тоНекорректные метаданные исходного MKVTrack Name, Codec ID, прослушивание/просмотр дорожки.
Русский интерфейс не появилсяНет locale JSON или выбрана другая CultureФайлы локализации и Language/Culture в Options.
Окно выглядит слишком крупно или обрезаноМасштабирование DPIСистемный DPI и актуальное поведение High DPI.
Очередь не повторяет задачуСостояние job не ReadyКонтекстное меню Job Manager и сброс статуса.

MKVToolNix не определяется автоматически

Нажмите Auto Detect. Если путь по-прежнему пуст или неверен, используйте Browse и укажите каталог, где расположены утилиты MKVToolNix. Не выбирайте произвольную папку, содержащую только ярлык GUI. gMKVExtractGUI при выполнении операций проверяет наличие необходимых исполняемых файлов.

Если пользователь переносит portable-набор, полезно сначала запустить MKVToolNix отдельно и убедиться, что пакет целостен. После этого путь задаётся в gMKVExtractGUI. Ошибки автоматического поиска не означают, что извлечение невозможно; ручной путь является штатным вариантом.

Контейнер загружается, но часть элементов не отображается

Сначала проверьте Log. Структура Matroska может содержать нестандартные или повреждённые элементы, а поведение анализа зависит от того, что возвращает MKVToolNix. Если проблема наблюдается только на одном файле, имеет смысл открыть его в MKVToolNix GUI или выполнить идентификацию другим инструментом и сравнить список дорожек.

Не следует пытаться исправлять проблему переименованием расширения MKV. Имя файла не меняет внутреннюю EBML-структуру. Если контейнер действительно повреждён, задача относится к восстановлению или ремультиплексированию, а не к настройке gMKVExtractGUI.

Извлечение завершилось, но расширение кажется непривычным

gMKVExtractGUI назначает расширения по Codec ID. Сырой H.264 может получить AVC, HEVC — HEVC, PGS — SUP. Эти расширения точнее отражают элементарный поток, чем универсальный MP4 или MKV. Если дальнейшая программа требует другой контейнер, выполните remux без перекодирования в подходящем инструменте.

В имени появился отрицательный DELAY

Отрицательное значение означает временное смещение относительно опорной дорожки. Это не отрицательная длительность и не ошибка арифметики. Метка предназначена для последующей синхронизации. Если после remux звук совпадает без применения delay, стоит перепроверить, не учёл ли используемый muxer временные метки другим способом.

Кнопки Abort и Abort All неактивны

Они предназначены для реально выполняющейся операции. В состоянии ожидания останавливать нечего, поэтому кнопки могут быть недоступны. В очереди используются собственные элементы управления Job Manager. После запуска текущего задания Abort прекращает конкретный процесс, Abort All — всю активную последовательность.

Как выбирать режим Extract без путаницы

РежимЧто извлекаетсяНужен выбор дорожки
TracksВидео, аудио, субтитрыДа
AttachmentsВложенные файлыВыбираются attachments
ChaptersГлавыВыбирается элемент глав
TagsТеги Matroska в XMLНет выбора обычной A/V-дорожки
Cue sheetТаблица CUEЗависит от данных контейнера
Timestamps / timecodesВременные метки дорожкиДа
CuesИндексные cues дорожкиДа

Если цель формулируется как достать звук, видео или субтитры, почти всегда нужен Tracks. Если пользователь хочет файл с главами, следует переключиться на Chapters и отдельно выбрать формат. Ошибка выбора режима — одна из самых простых причин, почему отмеченный элемент не даёт ожидаемый результат.

Когда стоит использовать Log, а когда MediaInfo

Log показывает внутренний ход работы gMKVExtractGUI и ответы MKVToolNix. MediaInfo или аналогичный анализатор удобен для независимого просмотра параметров кодека. Если проблема в том, почему gMKVExtractGUI не создала файл, нужен прежде всего Log. Если нужно понять, что именно за аудиопоток получен и какие у него параметры, полезен MediaInfo. Эти инструменты дополняют друг друга, но решают разные задачи.

Практика с несколькими аудиодорожками

В фильме часто встречаются оригинальная дорожка, дубляж, комментарии режиссёра и аудиоописание. Все они могут иметь один язык. Поэтому фильтра только по Language недостаточно. Track Name часто содержит Commentary, Director, Descriptive или название студии перевода. Канальность и Codec ID также помогают: основной звук может быть DTS 5.1, а комментарий — AC3 2.0.

gMKVExtractGUI показывает эти свойства рядом, поэтому выбор можно делать до извлечения. Для архива удобно включить TrackName и Channels в шаблон имени. Если Track Name содержит запрещённый символ имени файла, программа заменяет недопустимые символы подчёркиванием, что предотвращает ошибку файловой системы.

Практика с несколькими версиями субтитров

Одному языку могут соответствовать full, signs, forced, SDH и commentary. Метаданные Forced помогают только с частью вариантов. Track Name остаётся важным источником. Если имя пустое, придётся проверить содержимое после извлечения. Поскольку операция не перекодирует данные, повторное извлечение другой дорожки не ухудшает качество и обычно не занимает много времени.

Для SDH или hearing impaired флаг Forced обычно не используется. Поэтому автоматический фильтр forced не заменяет внимательную проверку списка. При пакетной работе разумно сначала вручную проверить 2–3 типичных файла и только потом применять массовый выбор к всей серии.

Что означает информация о CodecPrivate

Некоторые кодеки хранят служебные данные инициализации в CodecPrivate. gMKVExtractGUI умеет читать это свойство и даже использовать {CodecPrivate} в шаблоне имени. Для обычного пользователя включать длинное техническое значение в имя почти никогда не нужно. Подстановка полезна разработчикам и при диагностике редких потоков.

Если у дорожки CodecPrivate отсутствует, это само по себе не ошибка. Разные типы потоков используют служебные данные по-разному. Менеджер заданий должен работать и с дорожками без такого поля, включая графические субтитры.

Почему gMKVExtractGUI не меняет битрейт и качество

Многие программы для видео предлагают preset, CRF, bitrate, profile, resolution и hardware acceleration. В gMKVExtractGUI этих параметров нет, потому что mkvextract не является энкодером. Он извлекает уже существующие байты потока из контейнера. Это означает отсутствие потерь из-за повторного сжатия и одновременно отсутствие возможности сделать файл меньше или перевести DTS в AAC внутри программы.

Если нужна конвертация, правильный рабочий процесс двухэтапный: сначала извлечь дорожку, затем открыть её в специализированном кодировщике. Либо сразу использовать конвертер, который умеет читать MKV и перекодировать выбранный поток. gMKVExtractGUI предпочтительнее, когда исходный кодек требуется сохранить точно.

Как безопасно работать с перезаписью

Флажок Overwrite existing files следует включать осознанно. При выключенной перезаписи программа старается не уничтожать существующий результат и может сформировать имя с дополнительным счётчиком. Это полезно при экспериментах с шаблонами и повторном запуске. После того как схема имён окончательно определена, старые тестовые файлы проще удалить вручную, чем рисковать заменить нужный результат.

В пакетном режиме последствия overwrite масштабируются на всю очередь. Если десять задач пишут в одну папку и шаблон недостаточно уникален, перезапись может скрыть ошибку дизайна шаблона. Поэтому FilenameNoExt и TrackNumber — разумный минимум для дорожек, а при использовании общей папки стоит добавить Language или TrackID.

Сохранение списка заданий

Job Manager умеет сохранять и загружать jobs. Это полезно для длинной очереди, которую требуется подготовить заранее или повторить после перезапуска. Сохранённый список содержит параметры задач, а не копии медиаданных. Поэтому исходные MKV и каталоги должны оставаться доступными по ожидаемым путям.

Если после загрузки сохранённой очереди исходник был перемещён, задание закономерно завершится ошибкой. Аналогично меняется результат при изменении доступности MKVToolNix. Список jobs — средство автоматизации, но не механизм упаковки проекта со всеми зависимостями.

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

ПрограммаЛучше подходит дляГлавное ограничение
gMKVExtractGUIВыборочного и пакетного извлечения дорожек, вложений, глав, тегов, CUE, cues и timestamps с гибкими шаблонами имён и Job Manager.Требует MKVToolNix и не выполняет перекодирование или remux.
MKVCleaverПакетного извлечения элементов MKV в Windows с визуальным выбором дорожек.Ориентирован на извлечение и не заменяет полноценный редактор контейнера.
Inviska MKV ExtractКроссплатформенного выбора дорожек, вложений, глав, tags, cues и timestamps, включая batch extract.Также зависит от MKVToolNix и не предназначен для кодирования медиа.
ccMKVExtractGUIПрямого доступа к основным возможностям mkvextract: tracks, tags, attachments, chapters, CUE sheets, timestamps и cues.Ориентирован на Windows и более простой рабочий процесс без акцента на сложные шаблоны имён.
MKVExtractGUI-2Простого извлечения дорожек и глав из одного MKV с отображением языка и команды.Работа в основном с одним файлом за раз; набор пакетных средств заметно скромнее.
mkvextractСкриптов, серверной автоматизации и точного ручного контроля параметров без GUI.Нужно самостоятельно составлять команды и управлять именами и очередями.

Практический выбор зависит от характера работы. gMKVExtractGUI особенно удобна, если регулярно приходится разбирать много Matroska-файлов, важны фильтры по дорожкам, собственные шаблоны имён и возможность подготовить очередь. MKVCleaver и Inviska MKV Extract решают близкую задачу и подходят пользователям, которым привычнее их интерфейс. ccMKVExtractGUI хорош как более прямой фронтенд возможностей mkvextract. MKVExtractGUI-2 проще, но менее удобен для современных пакетных сценариев. Командный mkvextract остаётся самым гибким вариантом для тех, кто строит автоматизацию скриптами.

ВидеоМАСТЕР не включён в таблицу, потому что его основной класс задач — конвертация и обработка видео, тогда как gMKVExtractGUI служит именно для технического извлечения элементов Matroska без перекодирования. Сравнивать их как прямые заменители было бы некорректно.

Кому gMKVExtractGUI подходит лучше всего

Программа полезна пользователям, которые часто работают с MKV как с контейнером, а не только как с готовым фильмом. Это архивисты медиатеки, авторы субтитров, переводчики, специалисты по remux, энтузиасты домашнего кинотеатра и технические пользователи, которым нужно сохранить оригинальные дорожки без изменения кодека.

Если задача звучит достать субтитры, сохранить оригинальный DTS, выгрузить PGS, извлечь шрифты, сохранить главы XML или получить timestamps, gMKVExtractGUI соответствует ей напрямую. Если задача — сжать видео, обрезать ролик, склеить фрагменты или перекодировать в MP4 для телефона, требуется программа другого типа.

Главное окно gMKVExtractGUI 2.9.1 с Auto Detect, Append и Dark

Краткая памятка по выбору элементов

  • Видео, аудио и субтитры извлекаются через Tracks.
  • Для ASS/SSA отдельно проверьте attachments со шрифтами.
  • PGS выходит в SUP и не превращается автоматически в SRT.
  • Для аудио не теряйте значение EffectiveDelay до повторного muxing.
  • Для сложных глав выбирайте XML, для простого списка можно использовать OGM.
  • Tags — это XML-метаданные контейнера, а не аудио ID3.
  • Timestamps/timecodes относятся к конкретной дорожке.
  • Raw/fullraw включайте только если последующий инструмент действительно требует их.
  • В пакетной работе используйте FilenameNoExt и номер дорожки в шаблоне, чтобы имена не пересекались.
  • При непонятной ошибке открывайте Log до изменения настроек.

Вопросы и ответы

Можно ли с помощью gMKVExtractGUI получить MP4 из MKV?

Не в смысле обычной конвертации контейнера. Программа извлекает отдельные элементы Matroska. Видеопоток H.264 может быть сохранён как AVC, HEVC — как HEVC и так далее. Чтобы получить MP4 с видео и звуком, извлечённые или исходные потоки нужно ремультиплексировать подходящим инструментом.

Можно ли извлечь только русскую аудиодорожку?

Да. Выберите audio track с нужным Language/Track Name и используйте Tracks. Если в исходном MKV язык не размечен, ориентируйтесь на название, Codec ID, число каналов и ручную проверку.

Можно ли извлечь сразу все субтитры из нескольких MKV?

Да. Программа поддерживает несколько входных файлов и пакетный рабочий процесс. Удобнее сначала массово отметить subtitle tracks через контекстное меню, затем добавить операции в Jobs.

Почему PGS сохранился как SUP?

Потому что PGS — графический формат. SUP является нормальным результатом такого извлечения. Для получения текста нужен отдельный OCR.

Почему в имени аудио написано DELAY?

Это найденное временное смещение дорожки относительно видео. Оно записывается в имя стандартным шаблоном и помогает учесть синхронизацию при дальнейшей сборке.

Можно ли изменить шаблон имени?

Да. В Options есть отдельные шаблоны для видео, аудио, субтитров, глав, вложений и tags. Через Add вставляются поддерживаемые подстановки.

Можно ли сохранить результаты в подпапки?

Да. Подстановка {DirSeparator} позволяет строить путь внутри шаблона имени и создавать подкаталоги по имени исходного файла или типу результата.

Нужно ли включать raw?

Для обычного извлечения — нет. Raw и fullraw нужны для специализированных низкоуровневых сценариев и могут давать файлы, непригодные для прямого воспроизведения.

Что делать, если Auto Detect не находит MKVToolNix?

Укажите каталог вручную через Browse и проверьте, что в нём действительно находятся утилиты MKVToolNix. После этого повторите анализ файла.

Что делает Use Source?

Задаёт папку исходного MKV как каталог вывода. Это удобно для единичной операции, но при массовом извлечении лучше заранее решить, нужна ли общая структура подпапок.

Можно ли отменить текущую операцию?

Да. Для активного извлечения предусмотрены Abort и Abort All. В Job Manager есть отдельные команды остановки текущего задания и всей очереди.

Можно ли сохранить очередь?

Да. Job Manager предоставляет Save Jobs и Load Jobs. При последующей загрузке исходные пути и MKVToolNix должны оставаться доступными.

Скриншот gMKVExtractGUI из метаданных Flatpak-пакета

Подробно о выборе дорожек в больших MKV

В небольшом файле с одной видеодорожкой, двумя аудиодорожками и одними субтитрами выбор очевиден. Сложнее работают релизы, в которых десятки потоков отличаются только языком, признаком default, Forced, названием или кодеком. gMKVExtractGUI показывает эти сведения непосредственно в дереве, поэтому лучше выработать порядок проверки. Сначала смотрят Track Type и Language, затем Track Name, Codec ID и технические параметры. Номер дорожки оставляют как последний ориентир, потому что в разных файлах одной серии он может меняться.

Для видео полезно видеть разрешение и Codec ID. Если в контейнере несколько видеопотоков, один из них может быть основной картинкой, другой — дополнительным материалом или альтернативной версией. Само наличие второго video track не означает, что его нужно извлекать вместе с первым. При работе с архивом лучше выбирать то, что соответствует конкретной цели, а не ставить флажки у всех элементов автоматически.

Для аудио число каналов и название часто важнее номера. Например, два английских трека могут отличаться как 7.1 основной звук и 2.0 commentary. Если шаблон имени содержит только Language, файлы окажутся трудноразличимыми. Добавление Channels или TrackName делает пакетный результат понятнее. При этом TrackName следует считать подсказкой, а не гарантией: автор контейнера мог оставить поле пустым или использовать произвольное обозначение.

Субтитры требуют ещё более внимательной фильтрации. Одинаковый язык может иметь full, forced, signs, SDH и commentary. В современных сборках контекстное меню умеет выбирать forced-дорожки, однако оно опирается на флаг контейнера. Если у дорожки signs этот флаг не выставлен, программа не может определить её содержание по тексту. Проверка Track Name остаётся обязательной для аккуратной массовой работы.

Как gMKVExtractGUI формирует имена и почему это важно

Имя выходного файла строится в два этапа. Сначала программа заменяет подстановки шаблона конкретными значениями — именем исходника, номером дорожки, языком, параметрами и так далее. Затем выбирается расширение по типу операции и Codec ID. Такой порядок означает, что пользователь может гибко менять основу имени, но не обязан самостоятельно дописывать расширение. Если включить расширение прямо в шаблон, результат может получить лишний суффикс, поэтому стандартные схемы его не содержат.

После подстановки gMKVExtractGUI очищает символы, запрещённые файловой системой. Если Track Name содержит двоеточие, вопросительный знак или другой недопустимый символ, он заменяется подчёркиванием. Это особенно важно в пакетном режиме: одна неудачная метка в контейнере не должна останавливать всю очередь из-за ошибки создания файла.

Финальная строка также обрезается по краям, чтобы избежать имён с нежелательным пробелом перед расширением. Подобные детали почти незаметны в единичной операции, но существенно уменьшают количество ручной правки при обработке большой коллекции.

При использовании {DirSeparator} шаблон фактически описывает относительный путь. Здесь нужно заранее подумать о коллизиях. Например, если имя подпапки строится только из Language, несколько исходных MKV могут писать результаты в одну и ту же структуру. Более устойчивый вариант начинается с {FilenameNoExt}, затем добавляет тип данных и уже внутри — номера или языки дорожек.

Пример структуры для сериала

Представим каталог с двадцатью четырьмя сериями. Для аудио можно использовать шаблон {FilenameNoExt}{DirSeparator}audio{DirSeparator}{TrackNumber:00}_{Language}_{Channels}ch_DElAY {EffectiveDelay}ms, а для субтитров — {FilenameNoExt}{DirSeparator}subs{DirSeparator}{TrackNumber:00}_{Language}_{TrackForced}. Тогда каждый эпизод получает собственную папку, а внутри данные разделены по назначению. Даже если TrackNumber отличается от серии к серии, результаты не пересекаются.

Такой подход удобнее общей папки с сотней файлов, особенно если затем нужно выборочно ремультиплексировать один эпизод. Недостаток — более глубокое дерево каталогов. Если дальнейшая программа ожидает все файлы в одной папке, лучше использовать плоский шаблон с FilenameNoExt в начале имени.

Разница между Track Number и Track ID

В шаблонах доступны и TrackNumber, и TrackID. Эти значения не следует считать взаимозаменяемыми. Номер — позиционное представление, удобное пользователю, а ID — идентификатор элемента в структуре Matroska. В большинстве бытовых сценариев достаточно TrackNumber, потому что он короткий и наглядный. TrackID полезнее для технической работы, где результат должен точно связываться с идентификатором, который виден в инструментах MKVToolNix.

Если строится автоматизированный архив, можно включить оба: например, track{TrackNumber:00}_id{TrackID:00}. Это делает имя длиннее, но исключает двусмысленность при сравнении с диагностическими данными. Для обычных субтитров такая детализация редко нужна.

Извлечение видео для дальнейшей обработки

После демультиплексирования видеопоток лишается контейнерных дорожек аудио, субтитров, глав и общих тегов. Поэтому файл AVC или HEVC следует рассматривать как один компонент исходного MKV. Если его открыть в инструменте монтажа или анализа, тот увидит видеопоследовательность, но не восстановит автоматически остальную структуру контейнера.

При последующем remux важно сохранить соответствие между потоком и его исходными метаданными. gMKVExtractGUI не экспортирует отдельный паспорт каждой дорожки как проектный файл, поэтому полезно оставлять в имени номер, язык и при необходимости разрешение. Для сложных проектов дополнительно сохраняют XML tags и chapters, а параметры потока проверяют MediaInfo или mkvmerge.

Если video track имеет Codec ID, для которого gMKVExtractGUI использует резервное расширение, это не означает перекодирование в MKV. Расширение в таком случае выступает как безопасный контейнерный или условный вариант имени. Содержимое определяется тем, что вернул mkvextract. Именно поэтому при редком кодеке важно ориентироваться на лог и технический анализ, а не только на окончание имени.

Извлечение аудио без потери исходного кодека

Демультиплексирование особенно полезно для lossless-аудио и многоканальных киноформатов. FLAC, TrueHD, DTS и другие потоки сохраняются без повторного сжатия. Это позволяет перенести дорожку в новый контейнер или обработать её отдельно, не подвергая дополнительной деградации только ради извлечения.

Однако без потери не означает, что любой полученный файл удобен для каждого приложения. Некоторые редакторы не принимают raw TrueHD или DTS напрямую. Тогда потребуется промежуточный декодер или remux в совместимый контейнер. gMKVExtractGUI не пытается угадывать, какое дальнейшее приложение используется, и потому сохраняет поток максимально близко к исходной форме.

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

Почему извлечение субтитров иногда даёт несколько файлов

Некоторые форматы субтитров исторически используют пару взаимосвязанных файлов. Наиболее известный пример — VobSub, где данные изображений и индекс обычно идут как SUB/IDX. Конкретное поведение зависит от mkvextract и формата дорожки. Поэтому при извлечении графических субтитров следует смотреть не только на один ожидаемый файл, но и на весь набор результатов, созданных рядом.

gMKVExtractGUI в данном случае остаётся фронтендом: она инициирует правильный тип операции и формирует имя, а формат результата определяется возможностями mkvextract. Если внешняя программа требует сопутствующий индекс, нельзя удалять его как лишний только потому, что основное расширение выглядит знакомо.

Извлечение вложений как отдельный архивный этап

В больших релизах attachments могут содержать десятки шрифтов, обложки, XML и прочие вспомогательные файлы. Если цель — полностью разобрать контейнер для архивирования, выгодно извлекать вложения отдельным этапом и помещать их в собственную подпапку. Это упрощает контроль коллизий имён и позволяет проверить, какие ресурсы действительно использовались субтитрами.

Шрифты не следует автоматически устанавливать все подряд на рабочую систему. Для проверки ASS достаточно временно держать их рядом и установить только необходимые гарнитуры. gMKVExtractGUI не анализирует зависимости между строками стилей ASS и конкретными attachment-файлами, поэтому отбор шрифтов — отдельная задача.

Что можно понять из Selected File Information

Writing Application и Muxing Application помогают отличить контейнеры, созданные разными инструментами или версиями. Если один файл корректно анализируется, а другой с похожим содержимым вызывает предупреждения, это поле даёт технический контекст. Duration позволяет быстро заметить явно неполный или повреждённый файл, а Date — сопоставить контейнер с этапом производства.

Эти сведения не являются редактором метаданных. Изменить их в Selected File Information нельзя, и это логично: gMKVExtractGUI ничего не переписывает в исходном MKV. Для изменения заголовков или свойств дорожек используется другой инструмент MKVToolNix.

Работа с Output Directory в пакетном режиме

Когда выбран один MKV, Use Source почти всегда понятен. При нескольких файлах важно учитывать, что каждый исходник может находиться в своей папке. Использование исходной директории сохраняет результаты рядом с соответствующим файлом и естественно разделяет их. Общий Output Directory, наоборот, собирает всё в одном месте и требует более уникальных шаблонов.

Если результаты затем передаются другой программе пакетно, единый каталог может быть удобнее. Если цель — сохранить рядом с каждым фильмом внешние субтитры, Use Source логичнее. gMKVExtractGUI не навязывает одну модель и позволяет строить обе.

Для сетевых дисков и медленных внешних накопителей общая скорость может определяться не CPU, а вводом-выводом. Это нормальное поведение: извлечение без перекодирования в основном читает и пишет большие объёмы данных. Увеличивать приоритет процесса или искать аппаратный энкодер в такой ситуации бессмысленно.

Что происходит при отмене операции

Abort предназначен для текущего процесса извлечения, Abort All — для всех активных операций. После принудительной остановки в каталоге может остаться неполный выходной файл. gMKVExtractGUI не должна рассматривать его как законченный результат. Перед повторным запуском такой файл лучше удалить либо использовать защиту от перезаписи, чтобы новый результат получил другое имя и его можно было сравнить.

В Job Manager остановка одного задания и всей очереди разделены. Это позволяет прекратить проблемный файл, не обязательно уничтожая подготовленный список jobs. После анализа причины задачу можно вернуть в Ready через контекстное меню и повторить.

Как читать статусы Job Manager

Состояние Ready означает, что задание подготовлено к выполнению. Во время запуска меняются текущий трек и прогресс. После завершения фиксируются время начала, конца и длительность. Если очередь большая, общий прогресс помогает оценить не только текущую операцию, но и положение во всей серии.

Не стоит использовать длительность одного задания как универсальный тест производительности. Разные контейнеры имеют разный размер, находятся на разных дисках и могут извлекать разные объёмы данных. gMKVExtractGUI не выполняет встроенный бенчмарк; цифры Job Manager относятся только к фактической задаче.

Когда сохранять jobs на диск

Сохранение очереди полезно перед длительной обработкой, особенно если задания готовились вручную. Это страхует от необходимости повторно выбирать дорожки при перезапуске программы. Также список можно использовать как шаблон процесса, если пути и структура проекта стабильны.

При переносе такой очереди на другой компьютер пути могут перестать существовать. gMKVExtractGUI не виртуализирует каталоги и не копирует входные MKV вместе с job-файлом. Поэтому сохранённые jobs лучше воспринимать как конфигурацию, привязанную к файловой структуре конкретной машины.

Лог и сообщения mkvextract

В журнал могут попадать диагностические строки от анализа и извлечения. Для пользователя важно различать информационные сообщения, warnings и фактическую ошибку. Некоторые контейнеры содержат необычные, но допустимые данные, поэтому предупреждение не всегда приводит к отсутствию результата. Финальный exit code и фактическое состояние выходного файла дают более надёжную картину.

Кнопка Save позволяет сохранить журнал для последующего анализа. Это особенно полезно, если ошибка возникает только на одном конкретном MKV и её нужно сравнить с другим файлом. Copy Selection удобен, когда достаточно взять несколько строк вокруг ошибки. Clear Log очищает историю, поэтому перед его использованием следует сохранить важные сведения.

Локализация и русские строки интерфейса

Языковые файлы хранятся отдельно от исполняемого файла. Выбор Culture применяется во время работы, а интерфейс обновляет подписи открытых форм. Это означает, что один и тот же набор функций доступен независимо от языка; меняются лишь строки интерфейса. Если русская локаль содержит неточный перевод, переключение на английский может помочь сопоставить пункт с документацией, не меняя настройки извлечения.

Редактор Translations предназначен для обслуживания этих JSON-файлов. Он показывает ключи и контекстные Notes, позволяет фильтровать список и сохранять изменения. Пользователю, который не занимается переводом, безопаснее не менять локализационные файлы вручную: ошибка JSON повлияет на подписи, но не добавит новых функций mkvextract.

Что не следует делать с шаблонами имён

Не стоит помещать в шаблон слишком много технических значений без необходимости. CodecPrivate может быть длинным, TrackName — содержать нестандартные символы, а полный Filename уже включает расширение исходника. Цель шаблона — сделать результат узнаваемым и уникальным, а не продублировать все метаданные контейнера в имени.

Также нежелательно полагаться только на Language. Код und встречается часто, и несколько дорожек превратятся в набор почти одинаковых имён. FilenameNoExt плюс TrackNumber обеспечивают базовую уникальность, Language и TrackName добавляют удобство чтения.

Когда нужен XML, а когда OGM для глав

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

CUE имеет смысл, когда данные затем используются как cue sheet, а PBF — только в конкретном совместимом сценарии. Нет необходимости конвертировать главы во все форматы сразу на всякий случай: это создаёт лишние файлы без дополнительной информации.

Разница между CUE chapters, cuesheet и cues

Три похожих названия легко перепутать. CUE в списке Chapter Type — способ представить главы в формате cue sheet. Cuesheet в Extract Mode — отдельная функция mkvextract для вывода cue sheet из Matroska. Cues — служебные индексные точки, связанные с дорожкой. Поэтому перед запуском нужно исходить из того, что требуется конечному инструменту, а не из одинакового слова в названии.

Если задача пользовательская — получить список глав для аудиодиска или разметки треков — чаще всего интересны chapters/CUE или cuesheet. Если задача техническая — анализ индекса контейнера, тогда нужен режим cues.

Как понять, требуется ли raw или fullraw

Простой критерий: если дальнейшая инструкция конкретного инструмента прямо не требует --raw или --fullraw, включать их не нужно. Обычный режим создаёт наиболее ожидаемые файлы для повседневной работы. Raw используется, когда важны именно внутренние байты кодека без обычной обработки mkvextract.

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

Почему программа подходит для повторяемых технических процессов

Сильная сторона gMKVExtractGUI проявляется не в единичном клике Extract, а в сочетании массового выбора, шаблонов, очереди и журнала. Когда один и тот же процесс повторяется на десятках файлов, ручное именование и составление команд становятся источником ошибок. GUI фиксирует правила и применяет их последовательно.

Например, архивист может задать схему имён для аудио с delay, отдельную схему для субтитров с языком и forced-признаком, выгружать attachments в подпапку и сохранять jobs. После этого новый сезон обрабатывается по тому же принципу. Если структура одного эпизода отличается, это видно в дереве до запуска, а не после того, как скрипт молча выбрал не тот Track ID.

Границы автоматизации

Автоматизация в gMKVExtractGUI опирается на данные Matroska. Она не прослушивает звук, не распознаёт речь, не читает содержание субтитров и не определяет, какая дорожка лучшая. Если язык или название выставлены неверно, программа честно использует неверное значение. Поэтому полностью безнадзорная обработка разношёрстной коллекции требует предварительной нормализации метаданных или внешних проверок.

В однородной коллекции, напротив, фильтры и jobs экономят много ручной работы. Это и есть оптимальная область применения: структура файлов похожа, правила выбора понятны, а задача состоит в надёжном извлечении без перекодирования.

Как организовать результаты для дальнейшего remux

Удобно создавать на каждый исходный MKV отдельную папку с подпапками video, audio, subs, attachments и metadata. В video кладётся основной видеопоток, в audio — выбранные звуковые дорожки с delay в имени, в subs — субтитры, в attachments — шрифты и изображения, в metadata — XML chapters и tags. gMKVExtractGUI позволяет приблизиться к такой структуре через DirSeparator и отдельные шаблоны.

После проверки файлов новый контейнер собирается отдельно. Такая схема делает процесс воспроизводимым: можно видеть, какие элементы были выбраны, не открывая исходный MKV каждый раз. Она особенно полезна при замене одной аудиодорожки или подготовке нескольких вариантов релиза.

Как не перепутать извлечение и конвертацию

Термин extract иногда воспринимается как сохранить в удобный формат, но в контексте gMKVExtractGUI он означает демультиплексирование. Если внутри MKV лежит AAC, программа выдаёт AAC; если DTS — DTS; если PGS — SUP. Она не оптимизирует результат под смартфон и не выбирает универсальный контейнер.

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

Минимальный набор настроек для стабильной работы

Если gMKVExtractGUI используется впервые, не стоит начинать с большого числа изменённых параметров. Для базового сценария достаточно корректного пути к MKVToolNix, одного входного файла, выбранной дорожки, обычного режима Tracks и понятного каталога вывода. Шаблоны имён можно оставить стандартными, overwrite — выключенным, raw и fullraw — отключёнными. Такая конфигурация даёт наиболее предсказуемый результат и упрощает чтение журнала при проблеме.

После успешного извлечения одной дорожки можно переходить к автоматизации: настроить подкаталоги через DirSeparator, добавить Language, TrackName или Forced в шаблоны, включить Append on Drag and Drop и собирать jobs. Такой последовательный подход полезен не из-за сложности программы, а потому, что позволяет отделить ошибку пути или режима от ошибки собственного шаблона.

Для регулярного сценария настройки имеет смысл стандартизировать. Например, все аудиодорожки сохранять с EffectiveDelay, субтитры — с языком и forced-признаком, главы — в XML, а вложения — с исходным AttachmentFilename. Тогда структура результатов остаётся одинаковой для разных проектов и не требует вспоминать, какие правила применялись к конкретному файлу.

Что проверять после извлечения

gMKVExtractGUI сообщает о завершении операции, но технический процесс лучше заканчивать быстрой проверкой результата. Для видео и аудио достаточно убедиться, что файл имеет ненулевой размер и определяется анализатором как ожидаемый кодек. Для SRT/ASS полезно открыть первые и последние реплики, для PGS — просмотреть несколько кадров в совместимом инструменте. Для chapters XML стоит убедиться, что временные точки и названия присутствуют, а для attachments — что выгружены нужные шрифты.

Если результат предназначен для remux, отдельное внимание уделяют синхронизации аудио. Значение EffectiveDelay из имени не следует терять до сборки нового контейнера. При работе с субтитрами проверяют Language, Forced и Track Name: эти признаки могут понадобиться при повторном добавлении дорожки в MKVToolNix GUI. gMKVExtractGUI извлекает данные, но не переносит автоматически все флаги в новый контейнер — их задаёт уже инструмент, выполняющий remux.

В пакетной очереди полезно смотреть не только на общий индикатор 100%, но и на лог заданий, если один из файлов дал необычный результат. Отдельный ошибочный MKV не должен становиться поводом повторно извлекать весь сезон. Job Manager позволяет локализовать проблемную задачу, вернуть её в Ready после исправления и повторить отдельно.

Итоговый рабочий подход

Для большинства задач разумный порядок прост: один раз корректно задать MKVToolNix, загрузить файл, выбрать элементы по реальным метаданным, проверить Output Directory и оставить обычный режим извлечения без raw. Шаблоны имён стоит менять только тогда, когда появляется повторяющийся пакетный сценарий. Для аудио полезно сохранить EffectiveDelay в имени, для субтитров — язык и Forced, для серии файлов — FilenameNoExt.

При сложных контейнерах лучше разделять операции. Сначала извлечь нужные A/V/subtitle tracks, затем attachments, потом главы или tags. Такой порядок упрощает проверку результата и делает журнал понятнее. Если один этап завершился ошибкой, не приходится разбираться в большом наборе одновременных операций.

gMKVExtractGUI наиболее эффективна там, где нужна точность, а не преобразование: она показывает, что действительно находится внутри Matroska, позволяет отобрать конкретные элементы и передаёт их mkvextract без перекодирования. Благодаря пакетной загрузке, фильтрам, Job Manager, журналу и гибким шаблонам имён программа закрывает не только разовое извлечение одной дорожки, но и повторяемые технические процессы с большими коллекциями MKV.