DGMPGDec

DGMPGDec позволяет через DGIndex проиндексировать MPEG‑1 и MPEG‑2, сохранить D2V‑проект для точной подачи кадров через DGDecode, отделить видеопоток и звуковые дорожки, проверить параметры потока и подготовить VOB, MPG, M2V, TS, M2TS или PVA к дальнейшей обработке в AviSynth или VapourSynth.

Главная задача DGIndex — не перекодирование готового ролика в новый бытовой формат, а разбор MPEG‑потока и создание индекса, по которому декодер получает правильную последовательность кадров. Поэтому программа особенно полезна перед фильтрацией, восстановлением, монтажной подготовкой и последующим кодированием, когда важно сохранить точную адресацию кадров, корректно учесть pulldown и не потерять связь с исходными MPEG‑файлами.

Обычный рабочий маршрут выглядит так: открыть один MPEG‑файл или упорядоченную группу частей, проверить поток через Preview и окно Information, выбрать способ обработки pulldown и аудио, при необходимости задать единственный диапазон начала и конца, а затем выполнить Save Project либо Save Project and Demux Video. Результатом становится D2V‑индекс, а при выбранных режимах — отдельные аудиодорожки и элементарный видеопоток; дальнейшее кодирование выполняется уже другими средствами.

Скачать DGMPGDec

Оценка 9.7Рекомендуем
  • Конвертация видео
  • Сжатие файлов
  • Просто для новичков
Скачать бесплатно на Windows
Лучшая альтернатива
DGMPGDec
Оценка 8.5
  • Только MPEG-1/2
  • Нет монтажа на таймлайне
  • Нет экспорта в MP4
Скачать DGMPGDec
Загрузка начнётся после нажатия

Что именно индексирует DGIndex

DGIndex читает структуру MPEG‑1 или MPEG‑2 и формирует D2V‑файл с путями к исходным файлам, выбранными параметрами обработки и индексной информацией, необходимой для точного доступа к кадрам. Сам D2V не содержит копию видеопотока и потому занимает несравнимо меньше места, чем исходник. Его смысл в другом: дать DGDecode карту, по которой можно запросить кадр без последовательного декодирования всего материала от начала. Такая схема особенно важна для MPEG с группами GOP, где B‑ и P‑кадры зависят от опорных кадров и простое перемещение по байтам не гарантирует корректного результата.

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

От индексирования следует отличать демультиплексирование. Индекс нужен для кадровой подачи через DGDecode; демультиплексирование извлекает элементарный поток без перекодирования. DGIndex умеет при сохранении проекта одновременно вывести MPEG‑1 video как M1V или MPEG‑2 video как M2V, а аудиодорожки — в их исходных форматах, если выбран соответствующий метод. Ни одна из этих операций не является экспортом в MP4, H.264, H.265 или AV1.

Меню File DGIndex с командами открытия, сохранения проекта и демультиплексирования

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

Команда Open принимает один или несколько исходных файлов. Если выбрать несколько, DGIndex рассматривает их как непрерывную последовательность в том порядке, который указан в окне File List. Это удобно для набора VOB одного DVD‑титула или для разделённых частей одного захвата. Все элементы списка должны относиться к одному типу потока: нельзя в одном списке смешать MPEG‑1 с MPEG‑2, program stream с transport stream или другие несовместимые структуры. Ограничение связано не с расширением имени, а с тем, как парсер воспринимает общий поток.

File List нужен не только для подтверждения выбора. В нём есть Add, Up, Down, Del и Del All: можно добавить части, исправить порядок, удалить ошибочно выбранный сегмент и только затем передать последовательность главному окну. DGIndex умеет сортировать вновь выбранные файлы, однако автоматический порядок следует проверить, особенно если имена нумеруются нестандартно. Неправильная последовательность частей приводит к неверному ходу времени, разрывам структуры и бессмысленному D2V.

Файлы можно передавать и перетаскиванием в окно DGIndex; после этого всё равно появляется список, где виден итоговый порядок. Это практичнее, чем считать каждый VOB отдельным проектом: демультиплексирование и кадровая подача для правильно составленной последовательности формируют единый непрерывный результат. Если части действительно принадлежат разным программам или титлам, объединять их не следует.

Окно File List DGIndex со списком файлов VOB

Главное окно: навигация без монтажного таймлайна

Нижняя шкала в DGIndex служит навигацией и заданием диапазона, но не является монтажным таймлайном в понимании видеоредактора. В обычном режиме кнопки перехода перемещают позицию между I‑кадрами. Это объясняет заметные скачки: опорные кадры в MPEG обычно располагаются через группу других кадров, и DGIndex использует такие позиции как допустимые точки выбора. Во время Play, Preview и кадровой подачи декодируются все нужные кадры, поэтому ступенчатая навигация не означает, что промежуточные кадры будут выброшены.

Начало диапазона отмечается левой границей, конец — правой. На один проект допускается только одна пара начала и конца. Нельзя выделить несколько разрозненных фрагментов, переставить их местами, сделать серию внутренних вырезов или собрать монтаж из клипов. Для такого сценария DGIndex сначала подготавливает кадровый источник, а реальная нарезка выполняется в AviSynth, VapourSynth, NLE или специализированном MPEG‑редакторе.

Preview воспроизводит выбранный диапазон от его начала до конца, Play стартует с текущей позиции, Stop останавливает просмотр, Pause/Resume приостанавливает и продолжает его. Встроенное воспроизведение показывает только видео, без звука. Это принципиальный момент при диагностике синхронизации: отсутствие слышимого аудио в окне DGIndex не означает, что звуковая дорожка не обнаружена или не будет демультиплексирована.

Меню Video и границы его возможностей

Раздел Video управляет тем, как DGIndex декодирует и описывает MPEG‑кадры для предпросмотра и последующей подачи. В нём находятся выбор iDCT, правила работы с pulldown, преобразование YUV в RGB для тех мест, где оно требуется, фильтр яркости, кадрирование, режим отображения HD и копирование текущего кадра. Эти пункты не превращают программу в редактор эффектов: здесь нет цветовых кривых, LUT, шумоподавления, стабилизации, размытия, титров, переходов и слоёв.

Часть настроек сохраняется в D2V и затем читается DGDecode. Благодаря этому кадрирование и коррекция яркости, заданные в DGIndex, могут повторяться при кадровой подаче. Другие параметры относятся только к отображению в DGIndex или к старому пути RGB‑подачи. Поэтому перед изменением опций важно понимать, воздействуют ли они на D2V, на картинку предпросмотра или на реальный кадр, который вернёт DGDecode.

Меню Video DGIndex с параметрами iDCT, Field Operation, яркости и кадрирования

Field Operation: Honor, Ignore и Force Film

Field Operation определяет, как обрабатывать repeat‑field flags в MPEG‑2. В режиме Honor Pulldown Flags флаги соблюдаются, повторяемые поля учитываются, а поданный поток соответствует предполагаемому воспроизведению. Для PAL и MPEG‑1, где такого механизма нет, режим фактически выдаёт закодированные изображения без искусственных повторов. Это безопасная отправная точка, если структура материала неизвестна или источник содержит обычное чересстрочное видео.

Ignore Pulldown Flags, напротив, показывает сырой набор закодированных MPEG‑изображений без выполнения повторов. Такой режим полезен для анализа, но может менять эффективную частоту кадров и нарушать синхронизацию на потоке с нерегулярным pulldown. Его не стоит выбирать только ради более низкого числа кадров: смысл опции диагностический, а не оптимизационный.

Force Film предназначен для специального случая материала 23,976 кадра/с, закодированного с типичным 3:2 pulldown для отображения как 29,97 кадра/с. DGIndex восстанавливает киночастоту и поддерживает синхронное течение. Для PAL, MPEG‑1, обычного чересстрочного видео, нерегулярных схем или потоков с frame repeat этот режим не предназначен. Практическая проверка начинается с длительного Preview и поля Video Type в Information: короткое вступление не всегда репрезентативно для всего фильма.

Главное окно DGIndex с отмеченной позицией на шкале и кнопками диапазона

Как читать Information перед сохранением проекта

Окно Information появляется при Preview, Play и сохранении проекта. В видеосекции отображаются тип потока, профиль MPEG‑2, coded Frame Size, при наличии отдельный Display Size, заявленное Aspect Ratio, частота кадров, оценка Video Type, признаки структуры последовательности и кадра, Coding Type, Colorimetry, Field Order, счётчики и битрейт. Эти значения полезны не как декоративная статистика, а как контроль того, что выбран нужный поток и что правила pulldown соответствуют материалу.

Frame Type сообщает значение MPEG‑признака progressive_frame и не является безошибочным детектором реального характера изображения. Прогрессивное содержание может быть закодировано в структуре, помеченной как interlaced, и наоборот. Аналогично Colorimetry со звёздочкой означает, что DGIndex подставил типичное значение для SD или HD, потому что поток не объявил его явно. При подготовке реставрации или цветового конвейера такие детали важнее простого чтения слова Progressive или Interlaced.

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

Панель Information DGIndex с параметрами MPEG-видео, аудио и статусом

iDCT: зачем выбор алгоритма вообще присутствует

iDCT восстанавливает пространственные значения из коэффициентов DCT при декодировании MPEG. DGIndex содержит несколько реализаций и показывает только те, которые совместимы с процессором. Выбранный идентификатор записывается в D2V, а DGDecode способен следовать этому выбору или переопределить его собственным параметром. Для обычного пользователя важнее согласованность и воспроизводимость, чем попытка вручную выбирать самый сложный алгоритм ради воображаемого улучшения уже сжатого материала.

Все доступные варианты рассчитаны на требования MPEG‑декодирования, но отличаются скоростью и математической реализацией. IEEE‑1180 Reference ориентирован на эталонную точность и работает медленнее; оптимизированные варианты предназначены для производительности. На современном конвейере разумно сначала оставить рабочий поддерживаемый режим и менять его только при осознанной проверке, потому что iDCT не является фильтром повышения детализации и не возвращает данные, потерянные при исходном MPEG‑сжатии.

YUV в RGB и почему настройка не перекрашивает D2V

Пункт YUV -> RGB задаёт масштаб уровней при преобразовании для окна DGIndex и старого RGB‑пути через DGVfapi. PC scale преобразует телевизионный диапазон яркости в полный RGB‑диапазон, а TV scale оставляет ограниченный диапазон. Для обычной подачи через DGDecode эта настройка не является универсальным цветокорректором и не должна использоваться как средство произвольного изменения контраста.

Отсюда следует практическое правило: если дальнейший процесс работает в YUV через AviSynth или VapourSynth, цветовой диапазон нужно контролировать в том месте конвейера, где действительно происходит преобразование. Разница картинки в окне DGIndex при переключении YUV -> RGB не обязательно означает, что D2V затем отдаст другой YUV‑кадр. Это одна из типичных причин ошибочной диагностики уровня чёрного по одному предпросмотру.

Luminance Filter: Gamma и Offset

Luminance Filter содержит флажок включения и два регулятора: Gamma и Offset. Offset равномерно прибавляет или вычитает яркость, Gamma меняет её нелинейно. В отличие от настройки YUV -> RGB, значения фильтра сохраняются в D2V и учитываются DGDecode при кадровой подаче. Поэтому результат, выбранный в окне DGIndex, влияет на видеоряд, который затем увидит скрипт.

Эта возможность годится для простой технической коррекции, когда нужно одинаково обработать весь источник. Она не заменяет полноценную цветокоррекцию: нет масок, вторичных диапазонов, покадровых ключей, кривых RGB, работы с HDR‑метаданными или автоматического анализа сцен. Если яркость меняется от эпизода к эпизоду, удобнее оставить D2V нейтральным и выполнить более сложную коррекцию фильтрами после MPEG2Source.

Главное окно DGIndex при работе с MPEG-видео в Windows

Cropping Filter и сохранение Clipping в D2V

Cropping Filter задаёт отступы Left, Right, Top и Bottom. После включения кадрирование видно в DGIndex, значения записываются в D2V и применяются DGDecode. В самом формате D2V эти параметры записываются как Clipping, поэтому такое слово может встречаться при ручном чтении проекта. Смысл остаётся простым: удалить постоянные края кадра до последующей фильтрации.

Кадрирование здесь одно для всего проекта. Нельзя менять рамку по сценам, анимировать её или поворачивать изображение. При работе с чересстрочным 4:2:0 материалом полезно выбирать геометрически корректные значения и затем проверить получившийся клип в скрипте, потому что ограничения по выравниванию и цветовой подвыборке зависят от того, как downstream‑фильтр принимает кадр. Если цель — только скрыть край на готовом рендере, можно вообще не записывать clipping в D2V и кадрировать позднее.

Главное окно DGIndex с отмеченным концом выбранного диапазона

HD Display: просмотр большого MPEG без уменьшения смысла

Когда ширина исходного кадра больше 800 или высота больше 600, DGIndex предлагает несколько способов отображения: полный размер с ограничением рабочим столом, уменьшение вдвое и просмотр одного из четырёх квадрантов. Режимы влияют на окно предпросмотра, а не на разрешение исходника или индекс. Это особенно важно при проверке чересстрочной структуры: уменьшение пополам может визуально скрыть гребёнку, поэтому для диагностики полезнее вывести отдельный квадрант в исходном масштабе.

Наличие поддержки HD не означает декодирование современных AVC, HEVC или AV1. DGMPGDec ориентирован на MPEG‑1/2; большой кадр может быть MPEG‑2 из HDTV или транспортного потока. M2TS как контейнер тоже не гарантирует совместимость: если внутри видеодорожка не MPEG‑2, сам факт расширения M2TS не делает её входом для DGIndex.

Аудио: демультиплексирование без притворного микшера

Audio Output Method предлагает четыре базовых поведения: отключить обработку звука, демультиплексировать выбранные дорожки, демультиплексировать все доступные дорожки или декодировать одну AC3‑дорожку в WAV. Поддерживаемое извлечение охватывает LPCM, AC3, MPEG Audio, DTS и AAC. При этом только AC3 имеет встроенный путь декодирования в WAV; остальные дорожки при демультиплексировании сохраняют свой тип и далее требуют подходящего декодера.

У выбранных дорожек в имени выходного файла DGIndex записывает полезные технические признаки, включая идентификатор, формат, канальную конфигурацию, битрейт и рассчитанную задержку относительно видео. Знак задержки имеет практический смысл при последующей синхронизации. Если AC3 сразу декодируется в WAV, задержка применяется во время декодирования, поэтому отдельное число DELAY в имени такого WAV не требуется.

LPCM обрабатывается по-разному в зависимости от структуры. Из program stream он может быть упакован в обычный WAV, тогда как из transport stream сырой PCM сохраняется как поток, который позднее нужно оформить подходящим инструментом с корректными параметрами частоты, разрядности и каналов. DGIndex не является аудиоредактором: здесь нет многодорожечного микширования, шумоподавления, эквалайзера, компрессора, нарезки по волновой форме или редактора метаданных.

Меню Audio DGIndex с настройками обработки и вывода звуковых дорожек

Select Track(s) и идентификаторы дорожек

При Demux Tracks можно указать один или несколько audio ID через список, а при Decode AC3 Track to WAV должна быть выбрана одна дорожка. Идентификаторы удобнее брать из Information после Preview, потому что они зависят от структуры потока. При Demux All Tracks ручной список игнорируется: программа пытается вывести все обнаруженные звуковые дорожки, доступные в выбранной программе MPEG.

Для transport и PVA логика отличается от program stream: за один раз выбирается одна аудиодорожка по настроенному PID, а внутренний audio ID для операции фактически используется как нулевой. Поэтому при TS сначала важнее правильно определить audio PID, чем пытаться переносить идентификаторы вроде 80 или c0 из DVD‑VOB. Это различие помогает избежать ситуации, когда пользователь видит дорожку в одном типе источника и ожидает ту же схему идентификаторов в другом.

AC3 в WAV: DRC, downmix и нормализация

Подменю Dolby Digital Decode активно, когда выбран Decode AC3 Track to WAV. Dynamic Range Control имеет уровни Off, Light, Normal и Heavy и применяет метаданные DRC, если они присутствуют в AC3. Эффект зависит от самого потока: отсутствие заметной разницы не обязательно означает ошибку. Настройка Dolby Surround Downmix выбирает между обычным двухканальным Lo/Ro и матрично совместимым Lt/Rt для дальнейшего Pro Logic‑декодирования.

Pre-Scale Decision предварительно анализирует уровень AC3 и рассчитывает коэффициент усиления так, чтобы максимальный пик соответствовал выбранному проценту. Это отдельный механизм от обычной Normalization. Обычная нормализация выполняет дополнительный проход после сохранения проекта и масштабирует уже созданный WAV; pre-scale рассчитан на применение коэффициента в процессе декодирования и позволяет избежать повторного постпрохода при следующих сохранениях с теми же условиями.

Опция 48 -> 44.1 KHz также относится только к декодированию AC3 в WAV. У неё есть градации качества, которые меняют соотношение скорости и точности ресэмплинга. Для современного видеопроекта обычно нет причины автоматически снижать частоту до 44,1 кГц: выбирать преобразование следует только если конечная цепочка действительно требует такой частоты. DGIndex не делает произвольный ресэмплинг любой демультиплексированной дорожки.

Options: что сохраняется между запусками

В Options есть Process Priority, Loop Playback, Playback Speed, шаблон AVS, выбор полных или относительных путей, Force Open GOPs, журналы quant matrices и timestamps, режим Fusion-style audio и информационный лог. Часть этих параметров записывается в DGIndex.ini и поэтому сохраняется между запусками. Это полезно для повторяемого рабочего места, но одновременно означает, что странное поведение иногда вызвано не самим новым файлом, а настройкой, оставшейся от предыдущего источника.

Playback Speed влияет только на Play и Preview. Есть покадровый режим, несколько замедленных вариантов, нормальная скорость, удвоенная и максимально возможная. Single Step позволяет рассматривать отдельные кадры во время воспроизведения, но не даёт кадр‑точной установки монтажной границы: допустимые точки навигации и выбора по-прежнему связаны с I‑кадрами. Если сразу после прыжка видны блоки на первых кадрах Play, это может быть эффект отсутствующих опорных кадров в предпросмотре и не обязано повторяться в кадровой подаче.

Меню Options DGIndex с настройками путей, логов и AVS Template

Use Full Paths и переносимость проекта

Use Full Paths определяет, будут ли D2V и автоматически созданный AVS хранить абсолютные пути или ссылки относительно места самого проекта. Абсолютный путь удобен на неизменной рабочей станции, потому что однозначно указывает файл. Относительный удобнее, когда исходник, D2V и скрипт перемещаются как одна папка на другой диск или компьютер. В обоих случаях DGIndex не копирует источник внутрь проекта.

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

AVS Template: автоматизация без скрытой магии

DGIndex может после Save Project создать AviSynth‑скрипт по пользовательскому шаблону. Специальная метка __vid__ заменяется именем созданного D2V, __aud__ — именем первого подготовленного аудиофайла, а __del__ — значением задержки, пригодным для DelayAudio. Шаблон остаётся обычным AVS‑текстом: DGIndex не проектирует фильтрацию за пользователя, а только подставляет известные пути и задержку.

Скрипт создаётся, если файл с ожидаемым именем ещё не существует. Это защищает уже отредактированный AVS от молчаливой перезаписи. Практически шаблон полезен в повторяемых MPEG‑2 задачах: например, когда каждый проект должен начинаться с загрузки DGDecode и вызова MPEG2Source, а дальше пользователь вручную добавляет IVTC, деинтерлейс, ресайз, восстановление или кодирование. Если шаблон не нужен, его можно отключить и работать с D2V напрямую.

Force Open GOPs и артефакты случайного доступа

Некоторые плохо размеченные MPEG‑потоки сообщают, что GOP закрыт, хотя на деле он зависит от кадров предыдущей группы. При случайном доступе через D2V это может проявляться блоками. Force Open GOPs in D2V File принудительно отмечает группы как открытые в проекте, заставляя декодер привлекать нужный контекст. Цена — более медленный случайный доступ, поэтому включать опцию заранее для всех материалов не требуется.

Диагностика проста: если блоки появляются именно при прыжках по кадровому источнику, а последовательное воспроизведение исходного MPEG выглядит нормально, можно пересоздать D2V с Force Open GOPs и сравнить. Если проблема остаётся во всех режимах, причина вероятнее находится в самом потоке или в повреждении данных. Не стоит маскировать любой визуальный дефект этой галочкой: она решает узкий класс неверно размеченных GOP.

Log Quant Matrices и Log Timestamps для диагностики

Log Quant Matrices создаёт текстовый список матриц квантования, встреченных в MPEG‑2, причём фиксируются изменения активной матрицы, а не бессмысленные повторы одной и той же. Это информация для опытной диагностики кодирования, а не фильтр качества. Номера кадров в журнале относятся к закодированной последовательности и могут расходиться с отображаемой при pulldown, что нужно учитывать при сопоставлении событий.

Log Timestamps записывает PTS и DTS аудио и видео при Save Project, а для transport stream дополнительно PCR настроенного PID; у program stream в журнале присутствуют SCR. Трасса также содержит события декодированных изображений и начала GOP. Такой файл особенно полезен, когда задержка звука выглядит неправдоподобно или захват имеет временные разрывы. Он позволяет обсуждать конкретные временные метки вместо попытки исправлять синхронизацию на слух.

Stream: PAT/PMT, PSIP, Raw и ручные PID

Для transport stream меню Stream позволяет выбрать нужную программу и её elementary streams. Detect PIDs: PAT/PMT читает таблицы программ и показывает найденные PID, после чего отдельно задаются video, audio и при необходимости PCR. Это предпочтительный путь, потому что таблицы связывают компоненты одной программы. Если PAT/PMT отсутствуют или повреждены, Raw перечисляет обнаруженные PID без надёжного знания того, какие из них образуют пару, поэтому потребуется проверка.

Detect PIDs: PSIP предназначен для таблиц, встречающихся в наземном ATSC. Set PIDs позволяет ввести значения вручную в шестнадцатеричной записи. Настроенные PID запоминаются, поэтому файл из другой системы вещания может случайно открыть неверный поток, если в ini остались прежние значения. При странном отображении или ошибках полезно вернуть video и audio PID к безопасному зарезервированному значению, затем снова запустить определение таблиц и выбрать корректные компоненты.

PCR имеет смысл прежде всего при логировании временных меток. Выбор случайного PID как видео или аудио способен привести к неопределённому поведению, поэтому ручной режим лучше использовать только когда известна структура TS либо когда Raw и внешний анализатор дают согласованные значения. DGIndex не заменяет полноценный транспортный анализатор с редактором таблиц и не исправляет сам TS на диске.

Окно File List DGIndex с последовательностью VOB из DVD

DVD VOB: правильная последовательность работы

Для DVD‑Video рабочим источником обычно служат VOB нужного VTS. Файлы титула выбирают последовательно, проверяют порядок в File List и открывают как один поток. DGIndex умеет отображать Vob/Cell ID в Information, что помогает видеть границы внутри структуры. При этом он не снимает шифрование с защищённого диска и не является риппером CSS: анализировать нужно уже доступные для чтения VOB.

После открытия полезно сделать Preview основного содержимого, проверить частоту, Video Type, Field Order и аудиодорожки. Затем определяют Field Operation и Output Method. Если нужен только кадр‑точный источник для AviSynth, достаточно Save Project и, при необходимости, демультиплексирования звука. Если отдельный M2V требуется авторинговому инструменту или для диагностики, выбирают Save Project and Demux Video.

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

TS и M2TS: расширение не определяет кодек

DGIndex умеет читать MPEG transport streams и встречается в рабочих процессах с DVB, HDTV и MPEG‑2 из M2TS. Но транспортный контейнер может нести разные кодеки. Совместимость DGMPGDec относится к MPEG‑1/2 video; поток H.264 или HEVC внутри файла с привычным расширением не становится MPEG‑2. Если Information не показывает ожидаемое видео после правильного выбора PID, сначала следует установить реальный кодек, а не менять случайные пункты меню.

В TS наиболее важна корректная связка video/audio PID и устойчивость временных меток. Ошибки при эфирном захвате, пропущенные пакеты и скачки часов способны создавать разрывы. DGIndex может дать журнал timestamps и рассчитанную аудиозадержку, но не является универсальным ремонтом транспортного потока. Если исходник повреждён, индекс честно отражает проблемную структуру и дальнейшая цепочка может потребовать отдельного этапа исправления контейнера.

PVA, program stream и elementary stream

Помимо DVD VOB и TS, DGIndex поддерживает PVA, MPEG program stream и элементарный MPEG‑видеопоток. Program stream содержит мультиплексированные компоненты и позволяет демультиплексировать доступные дорожки; elementary video по определению уже не содержит звуковой части. Поэтому набор активных аудиокоманд зависит от того, что реально присутствует в источнике.

Преимущество DGIndex в таком разнообразии не в том, что он понимает любой медиафайл, а в едином способе построить D2V для совместимого MPEG‑1/2. AVI, MOV, WebM и современные кодеки не следует подавать ему только ради создания индекса: для них существуют источники, работающие с другими контейнерами и декодерами. Чем точнее исходная задача сформулирована как MPEG‑индексирование, тем меньше ненужных преобразований возникает в цепочке.

Save Project и Save Project and Demux Video

Save Project создаёт D2V и выполняет настроенную аудиообработку. Save Project and Demux Video делает то же самое и дополнительно извлекает видеодорожку в единый M1V или M2V. Если открыто несколько частей, отдельный видеовыход всё равно формируется одним непрерывным elementary stream в порядке File List. Это удобно для последующего инструмента, которому нужен чистый видеопоток без контейнера.

Демультиплексированный M2V не становится качественнее и не меняет кодек: байтовый видеопоток извлекается без перекодирования. Поэтому операция выполняется значительно иначе, чем экспорт из видеоредактора. Не задаются битрейт, CRF, профиль H.264, размер файла, аппаратный энкодер или контейнер MP4. Если требуется сжатие, D2V передают в скриптовый источник и кодируют отдельным энкодером.

Меню File DGIndex с командой Save Project and Demux Video

Demux Audio-Only Stream

Отдельная команда Demux Audio-Only Stream нужна для потоков, где нет видеодорожки и поэтому обычный Save Project невозможен. Она может применяться и к потоку с видео, но тогда диапазон выбора игнорируется, обрабатывается весь поток и задержка относительно видео не вычисляется. Также в этом режиме нельзя использовать встроенное декодирование AC3 в WAV; оно привязано к нормальному Save Project.

Практически эту команду стоит воспринимать как сервисное извлечение звука, а не как альтернативу обычному проекту. Если важна синхронизация с видео, лучше открывать полный поток, выбирать нужный диапазон и сохранять D2V вместе с аудио, чтобы имя дорожки получило рассчитанный DELAY.

D2V как зависимость от исходников

D2V — текстовая индексная структура, а не автономный видеофайл. В верхней части перечислены исходные файлы, далее идут настройки и индексные данные. Когда DGDecode получает запрос кадра, он обращается к соответствующим MPEG‑файлам. Если исходник удалён, перемещён или заменён другим файлом под тем же именем, результат перестаёт быть надёжным.

Поэтому архивирование проекта требует сохранять не только D2V. Минимальный воспроизводимый набор включает сами MPEG‑источники, D2V и сведения о фильтрах, которые использует скрипт. Если звук был демультиплексирован, его тоже сохраняют рядом с проектом. Такой подход предотвращает ситуацию, когда маленький D2V выглядит как готовый мастер, но после очистки исходников оказывается бесполезным.

DGDecode и MPEG2Source в AviSynth

DGDecode читает D2V и предоставляет видеоклип скриптовой среде. В AviSynth типичный вход строится вокруг MPEG2Source с путём к проекту; версия DGDecode должна соответствовать формату индекса, который создал DGIndex. Это требование важнее, чем совпадение расширения DLL: несовместимая пара способна дать сообщение об ошибке проекта или неверно интерпретировать параметры.

Звук не появляется в MPEG2Source автоматически как часть видеоклипа. DGIndex обычно демультиплексирует его отдельно, после чего подходящий аудиодекодер открывает дорожку, учитывается DELAY и затем AudioDub соединяет её с видео. Такой раздельный подход кажется менее привычным, чем открытие MP4 в редакторе, но зато явно показывает, откуда берутся видео, звук и синхронизация.

После MPEG2Source можно применять обычные AviSynth‑фильтры: IVTC, деинтерлейс, восстановление, ресайз, цветовую обработку и затем отдавать результат энкодеру. Эти функции не следует приписывать DGMPGDec. Роль DGIndex/DGDecode заканчивается на корректном MPEG‑источнике и тех простых параметрах, которые действительно записаны в D2V.

VapourSynth и 64‑битная совместимость

DGMPGDec предназначен для 64‑битной среды Windows; 32‑битное выполнение не поддерживается. DGDecode поддерживает работу с AviSynth+ и VapourSynth, поэтому D2V может участвовать в обоих скриптовых конвейерах при установленных совместимых компонентах. Сам интерфейс DGIndex остаётся Windows‑программой, тогда как последующая обработка определяется выбранной скриптовой средой.

В VapourSynth важно не путать наличие поддержки D2V в DGDecode с универсальным чтением любых файлов. Сначала всё равно требуется индекс MPEG‑1/2. Если задача касается AVC, HEVC или более широкого набора контейнеров, разумнее выбрать источник, рассчитанный на такие кодеки, вместо попытки заставить DGMPGDec анализировать неподходящий поток.

Выбор одного диапазона: что можно считать обрезкой

DGIndex позволяет установить начало и конец, и Save Project, Save Project and Demux Video и Preview учитывают выбранный участок. Это действительно способ взять фрагмент, но он отличается от монтажной обрезки. Точки выбора привязаны к возможностям MPEG‑навигации, существует только одна пара границ, а внутри выбранной области нельзя вырезать рекламные блоки несколькими разрывами.

Если нужен короткий диагностический фрагмент MPEG без перекодирования, выбор диапазона вместе с demux video удобен. Если нужен точный финальный монтаж с несколькими склейками, лучше создать D2V для достаточного исходного диапазона и делать кадр‑точные Trim/Splice в скрипте либо в редакторе, который работает поверх корректно декодированного источника. Так DGIndex остаётся индексатором, а монтажная логика находится там, где ей и положено быть.

Склейка нескольких частей: только последовательная

Когда File List содержит несколько файлов одного типа, DGIndex логически соединяет их в указанном порядке и создаёт один индекс. Это не монтаж со сценами, а последовательная конкатенация частей единого потока. Типичный пример — VTS_01_1.VOB, VTS_01_2.VOB и следующие файлы одного титула. При таком использовании единый D2V удобнее набора независимых проектов.

Нельзя считать эту возможность универсальной склейкой любых MPEG‑роликов. Если у частей отличаются основные параметры или временная структура, переход может быть некорректным. В самом File List нет переходов, кроссфейда, подрезки каждого элемента, перестановки на временной шкале с предварительным просмотром результата или отдельного аудиомикса.

Copy Frame и Save BMP

Текущий отображаемый кадр можно скопировать в буфер обмена или сохранить как Windows BMP. Это полезно для визуальной проверки, документирования проблемной позиции и передачи одиночного кадра в графический редактор. Сохранение BMP не является экспортом последовательности кадров и не создаёт JPEG, PNG‑пакет или видеофайл.

Если кадр нужен для сравнения до и после фильтрации, важно помнить, какие опции DGIndex уже применяет к предпросмотру. Luminance и clipping могут менять изображение, а YUV -> RGB влияет на преобразование в окне. Для научной проверки исходных уровней лучше фиксировать настройки и не смешивать скриншот предпросмотра с кадром, полученным позднее из YUV‑скрипта.

Tools: Analyze Sync

Analyze Sync строит журнал рассчитанных аудиозадержек для возможных стартов на I‑кадрах. Инструмент предназначен для случаев, когда полученная задержка выглядит явно неверной и нужно увидеть, где она резко меняется. Для работы используется предварительно созданный timestamp‑dump из Log Timestamps, а затем выбирается анализируемый audio ID.

Если в самом начале потока есть скачок системных часов, первая вычисленная задержка может быть огромной, тогда как начиная со следующего GOP значения становятся правдоподобными. В таком случае можно сознательно начать проект со следующего I‑кадра и проверить результат. Анализ не исправляет источник автоматически; он показывает временную структуру, чтобы решение о границе было основано на данных.

Меню Audio Output Method DGIndex с режимом Demux All Tracks

Tools: Fix D2V и переходы порядка полей

Fix D2V рассчитан на проекты, где в MPEG встречаются переходы между top‑field‑first и bottom‑field‑first. Инструмент меняет флаги в D2V так, чтобы подаваемый результат имел единый порядок полей, и сохраняет исходный вариант проекта отдельно. Коррекция нужна не всякому чересстрочному видео и не должна применяться только потому, что в Information написано Interlaced.

Особенно важно не использовать такую коррекцию на потоках с frame repeat RFF, для которых логика повторов имеет другой смысл. Если DGIndex предупреждает о переходе, разумно сравнить исправленный и исходный D2V на проблемных участках. Сам MPEG‑файл при этом не переписывается: Fix D2V исправляет индексное описание, а не физические поля в видеопотоке.

Tools: Parse D2V

Parse D2V создаёт текстовый разбор структуры выбранного D2V и открывает его для изучения. Это средство для опытной диагностики: обычному пользователю не нужно вручную интерпретировать каждую запись проекта, чтобы получить кадры. Но при разработке фильтра, поиске повреждённого индекса или сравнении параметров такой разбор помогает увидеть заголовок, настройки и последовательность индексных записей в более понятной форме.

Parse D2V также полезен как граница ответственности. Если проект явно содержит неправильный путь или неожиданное значение параметра, проблему можно увидеть в индексе. Если D2V логически корректен, а изображение уже после него повреждается сторонним фильтром, поиск следует продолжать дальше по скрипту, а не бесконечно пересоздавать индекс.

Командная строка и пакетная обработка

DGIndex имеет командную строку для автоматизации типичных операций. Можно передать входные файлы, имя проекта, режим demux video, диапазон, PID, Field Operation, iDCT, аудиометод, шаблон AVS и другие параметры, затем закрыть процесс после сохранения. Это позволяет встроить индексирование в повторяемый сценарий без ручного открытия каждого файла.

CLI не превращает DGMPGDec в очередь кодирования. Она автоматизирует именно индексирование, анализ и демультиплексирование. Если нужно обработать десятки файлов в H.264, следующий этап всё равно должен запустить AviSynth/VapourSynth и энкодер. Полезно разделять журналы двух этапов: DGIndex отвечает за разбор MPEG и D2V, энкодер — за параметры конечного кодека и контейнера.

При пакетной работе особенно важно не переносить PID и Field Operation вслепую между источниками. Два TS одного канала могут иметь разную таблицу после изменения мультиплекса, а два DVD могут отличаться типом pulldown. Автоматизация должна либо опираться на заранее проверенные однородные источники, либо включать предварительный анализ и валидацию Information/log перед массовым Save Project.

Ошибки при открытии и неверный тип потока

Если DGIndex не показывает ожидаемое изображение, сначала проверяют, что видеокодек действительно MPEG‑1 или MPEG‑2 и что части относятся к одному типу. Расширение MPG или M2TS недостаточно. Далее для TS проверяют PID. Для набора частей проверяют их порядок. Только после этого имеет смысл подозревать повреждение данных.

Попытка смешать program stream и transport stream в одном File List противоречит модели DGIndex и должна быть разделена на проекты. То же относится к MPEG‑1 и MPEG‑2. Если пользователь просто сменил расширение файла на .mpg, парсер не обязан принять его: контейнер и элементарный видеокодек определяются внутренней структурой, а не именем.

Ошибка D2V после перемещения исходников

Сообщение о невозможности открыть исходник при загрузке D2V часто связано с путями. Проект хранит список файлов, и абсолютный путь становится неверным после переноса каталога или изменения буквы диска. При относительных путях значение имеет положение D2V относительно медиаданных. Быстрая проверка — убедиться, что указанный файл существует и действительно является тем же MPEG, для которого строился индекс.

Лучшее исправление — восстановить исходную структуру или пересоздать D2V в новом месте. Ручное редактирование пути допустимо для опытного пользователя, если сами данные не менялись, но оно не должно использоваться, чтобы привязать проект к другому MPEG с похожим именем. Индекс содержит байтовые позиции и параметры конкретного исходника.

Несовпадение DGIndex и DGDecode

Если MPEG2Source сообщает, что D2V создан несовместимой версией, нужно проверить пару DGIndex/DGDecode и загрузку DLL. В системе с несколькими папками AviSynth легко случайно подхватить старую копию DGDecode из каталога автозагрузки, хотя рядом с DGIndex лежит другая. Явная загрузка нужной DLL в тестовом скрипте помогает локализовать проблему.

Не стоит пытаться исправлять несовместимость редактированием номера заголовка D2V. Формат проекта менялся не только как строка версии; декодер должен понимать его семантику. Надёжнее пересоздать индекс тем DGIndex, с которым будет использоваться соответствующий DGDecode, и только затем возвращать фильтры скрипта.

Блоки в первых кадрах Play и настоящие артефакты

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

Если блоки видны именно при случайном доступе через DGDecode, а последовательный участок выглядит нормально, проверяют разметку open/closed GOP и пробуют Force Open GOPs. Если дефект стабильно присутствует и в демультиплексированном видео, причина вероятнее находится в исходном MPEG. Такое разделение проверки экономит время и предотвращает попытку лечить повреждённый поток настройкой предпросмотра.

Синхронизация звука и число DELAY

DGIndex рассчитывает задержку аудио относительно выбранного начала проекта и помещает её в имя демультиплексированной дорожки. Отрицательное значение означает, что дорожку при последующем соединении нужно сдвинуть раньше, положительное — позже. В автоматическом AVS Template число может быть подставлено через __del__, что снижает риск забыть ручную коррекцию.

Задержка зависит от точки старта. Если начало проекта перенесено на другой I‑кадр, число может измениться, особенно при странных временных метках в захвате. Именно поэтому Analyze Sync связывает задержки с возможными стартовыми I‑кадрами. Не следует копировать DELAY из другого проекта того же файла после изменения диапазона: заново сохранённый проект даёт значение для нового старта.

Когда Film percentage нельзя принимать на веру

Video Type во время Preview оценивает просмотренную область. DVD может иметь логотип, титры или вставку, закодированные иначе, чем основная часть фильма. Если решение Force Film основано на пяти секундах такого фрагмента, оно может оказаться неверным для остального материала. Лучше выбрать длинный участок основного содержимого и посмотреть стабильность процента.

Высокий Film percentage подходит как индикатор типичного 3:2 pulldown, но не освобождает от визуальной проверки. Гибридный материал способен чередовать источники, а hard telecine не равен набору repeat‑field flags. DGIndex не выполняет полноценный автоматический IVTC всех возможных гибридов; сложные случаи оставляют Honor Pulldown Flags и решают фильтрами после MPEG2Source.

Кадрирование, 1088 и отображаемые 1080 строк

Некоторые HD MPEG‑потоки кодируют высоту, отличающуюся от окончательного display size. Information показывает coded Frame Size и, если сигнализация присутствует, отдельный Display Size. Для кадрового конвейера важно различать эти значения: обрезка служебных строк и реальное изменение геометрии — не одно и то же.

В DGMPGDec clipping хранится как часть D2V и должен согласованно учитываться декодером. Если проект рассчитан на 1080 отображаемых строк при coded 1088, проверяют результат в скрипте до следующего ресайза или деинтерлейса. Не следует механически обрезать восемь строк только по числу 1088, не посмотрев Display Size, уже записанный clipping и реальную картинку.

Что DGMPGDec не делает

DGMPGDec не кодирует H.264, H.265, AV1, VP9 или обычный MP4‑файл, не предлагает пресеты смартфонов и сайтов, не рассчитывает целевой размер и не управляет GPU‑энкодером. У него нет очереди рендеров, многодорожечного монтажного таймлайна, переходов, титров, ключевых кадров эффектов, стабилизации, трекинга, масок и цветовых страниц. Если такая функция требуется, индекс DGMPGDec может быть лишь источником для следующего этапа.

Программа не захватывает экран или камеру, не ведёт трансляцию, не скачивает сетевое видео и не записывает диски. Она не редактирует субтитры и не прожигает их в кадр. DVD‑VOB можно анализировать как MPEG‑источник, но это не инструмент расшифровки защищённого DVD. Разделение обязанностей здесь особенно важно, потому что название категории конвертеров на сайте шире фактической роли DGIndex.

  • Нет обычного экспорта MP4 и выбора видеокодека конечного файла.
  • Нет многосегментной нарезки и монтажа на таймлайне.
  • Нет стабилизации, эффектов, титров и редактора субтитров.
  • Нет аппаратного кодирования: DGMPGDec занимается декодированием и индексом MPEG‑1/2.
  • Нет захвата, стриминга, загрузки роликов и записи дисков.

Практический сценарий: DVD MPEG‑2 для фильтрации

Сначала выбирают VOB одного титула в правильном порядке. В Preview проверяют, что DGIndex видит MPEG2 Program, подходящий Frame Size, частоту и нужные AC3/MPA/DTS дорожки. Field Operation оставляют Honor, пока статистика и содержание не дают оснований для Force Film. Audio Output Method выбирают по задаче: обычно Demux Tracks или Demux All Tracks, если звук нужен отдельно.

Далее сохраняют D2V. Если нужен только источник для фильтров, M2V демультиплексировать необязательно. В AviSynth загружают совместимый DGDecode, открывают D2V через MPEG2Source, отдельно декодируют нужный аудиофайл и учитывают DELAY. После этого выполняют деинтерлейс/IVTC, восстановление, ресайз и кодирование. Такой порядок сохраняет исходный MPEG неизменным и отделяет индексирование от творческой обработки.

Практический сценарий: эфирный MPEG‑2 TS

Для TS сначала выясняют, какую программу нужно извлечь. Detect PIDs: PAT/PMT обычно даёт связанный список video/audio, после чего устанавливают соответствующие PID. Если таблиц нет, используют Raw и проверяют комбинацию через изображение и Information. PCR задают, когда нужен полный timestamp‑log для анализа времени.

После короткой проверки желательно сделать более длинный Preview, потому что эфирный поток может содержать разрывы и переключения. Затем сохраняют D2V и аудио. Если рассчитанный DELAY выглядит абсурдно, включают Log Timestamps и применяют Analyze Sync, вместо произвольного ручного сдвига. При повреждениях самого TS сначала решают транспортную проблему, а затем строят финальный индекс.

Практический сценарий: извлечение M2V без перекодирования

Если другой инструмент требует elementary MPEG‑2 video, после загрузки совместимого source выбирают Save Project and Demux Video. DGIndex создаёт D2V и рядом единый файл с демультиплексированным видео. Битрейт, GOP и качество остаются свойствами исходного MPEG, потому что энкодер не запускается.

Такой M2V удобно использовать при авторинге, сравнении или повторном мультиплексировании, но он не содержит звука. Звуковые дорожки выводятся отдельно по Audio Output Method. Если конечный контейнер должен быть MP4, MKV или иной, мультиплексирование выполняет отдельный инструмент, способный принять соответствующие elementary streams.

Практический сценарий: проверка полей и pulldown

Для диагностики не начинают с Force Film. Сначала Honor Pulldown Flags, затем Preview достаточно длинного фрагмента и чтение Video Type, Frame Rate, Frame Type, Field Order, Frame Rpts и Field Rpts. Если материал уверенно соответствует 3:2 pulldown, можно пересоздать D2V с Force Film и проверить, что кадровая подача идёт в ожидаемой киночастоте без гребёнки на обычных участках.

Если процент нестабилен или материал гибридный, Honor сохраняет предназначенную временную структуру и оставляет сложное IVTC последующим фильтрам. Ignore используют, когда нужен именно анализ закодированных picture без выполненных repeat flags. Это снижает риск получить переменную временную структуру и аудиорассинхрон только потому, что диагностический режим был принят за нормальный выход.

Практический сценарий: короткий образец проблемного MPEG

Чтобы передать специалисту несколько секунд проблемного MPEG‑2 без повторного кодирования, можно открыть поток, перейти к I‑кадру перед дефектом, поставить начало, перейти после дефекта и поставить конец. Save Project and Demux Video создаст элементарный видеопоток выбранной области и D2V. Границы могут включать больше кадров, чем идеально желаемый отрезок, потому что выбор ориентирован на структуру GOP.

Это предпочтительнее записи экрана или перекодированного клипа, когда требуется исследовать исходное MPEG‑сжатие, порядок полей и ошибки битстрима. Вместе с образцом полезно сохранить Information/log, но в сам видеопоток DGIndex никаких подписей и диагностических наложений не добавляет.

Практический сценарий: повторяемая серия D2V

Когда источники действительно однородны, командная строка и AVS Template сокращают ручную работу. Можно заранее определить схему имён, относительные пути, аудиометод и шаблон с MPEG2Source. После каждого запуска проверяется код возврата, наличие D2V, аудиофайла и информационного лога, а уже затем задание передаётся энкодеру.

Но автоматизация должна останавливаться при неожиданных параметрах. Например, другой frame rate, неожиданный PID, отсутствие видео, новый набор дорожек или резкое изменение Film percentage требуют ручной проверки. Правильный пакетный процесс не скрывает диагностику DGIndex, а использует её как контроль входа.

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

Прямое сравнение имеет смысл вести не с универсальными конвертерами, а с индексаторами и source‑фильтрами, которые решают задачу точного доступа к кадрам перед скриптовой обработкой. DGMPGDec выигрывает, когда исходник именно MPEG‑1/2 и нужны D2V, информация о pulldown, выбор PID, встроенный demux и тесная связка с DGDecode. При другом наборе контейнеров или кодеков специализированность становится ограничением.

ПрограммаЛучше подходит дляГлавное ограничение
DGMPGDecИндексирование MPEG‑1/2 в D2V, demux и кадровая подача через DGDecodeРаботает именно с MPEG‑1/2, без обычного видеомонтажа и конечного кодирования
D2V WitchСоздание D2V для MPEG‑1/2, в том числе в кроссплатформенном VapourSynth‑процессеОриентирован на индекс и подготовку потока, а не на полноценный монтаж или энкодинг
FFMS2Индексируемое открытие широкого набора медиа через FFmpeg в AviSynth/VapourSynthНе воспроизводит специализированный DGIndex‑процесс с D2V, его PID‑инструментами и demux‑меню
L-SMASH WorksОткрытие распространённых контейнеров и кодеков как источника для AviSynth/VapourSynthНе предназначен для сохранения DGIndex D2V и его MPEG‑специфической диагностики
DGDecNVИндексирование и декодирование более широкого набора видеокодеков с аппаратным декодированием NVIDIAТребует совместимой NVIDIA GPU и относится к другому рабочему процессу, чем чистый DGMPGDec MPEG‑1/2

Как выбрать между DGMPGDec и D2V Witch

D2V Witch также индексирует MPEG‑1/2 elementary, program, transport и PVA и записывает D2V. Его заметное преимущество — кроссплатформенный сценарий и тесная ориентация на d2vsource/VapourSynth. DGIndex, напротив, даёт проверенный Windows‑интерфейс с отдельными меню Stream, Video, Audio, логами, аудиодемультиплексированием и инструментами анализа D2V.

Если существующий AviSynth‑процесс уже построен вокруг DGDecode и MPEG2Source, переход на другой индексатор должен быть осознанным и проверенным на совместимость D2V. Если же ключевое требование — работа на macOS или Linux и VapourSynth, D2V Witch естественнее. Выбор определяется не количеством кнопок, а тем, какой декодер будет читать индекс и какие диагностические операции нужны до скрипта.

Как выбрать между DGMPGDec, FFMS2 и L-SMASH Works

FFMS2 и L-SMASH Works удобнее, когда нужно открыть много разных контейнеров и кодеков единым source‑фильтром. Они могут создавать собственные индексы или использовать библиотечный анализ, но не повторяют модель DGIndex с D2V, Video Type, ручными transport PID, Save Project and Demux Video и характерными аудиофайлами DELAY.

Для чистого MPEG‑2 DVD/TS DGMPGDec даёт больше специализированной информации о самом MPEG‑процессе. Для MKV с H.264, MP4 с AVC или современного HEVC источник на базе FFmpeg/L-SMASH обычно логичнее. Не стоит конвертировать современный файл в MPEG‑2 только ради того, чтобы открыть его DGIndex: это создаст лишнее поколение потерь и не добавит точности.

Почему DGDecNV нельзя считать той же программой

DGDecNV решает схожую задачу индексирования и кадровой подачи, но рассчитан на иной набор видеокодеков и использует аппаратное декодирование NVIDIA. Его файлы, требования и интерфейсная логика нельзя автоматически переносить на DGMPGDec. Если инструкция относится к DGIndexNV, она не подтверждает наличие той же функции в обычном DGIndex.

Для MPEG‑1/2 на системе без необходимости NVIDIA‑ускорения DGMPGDec остаётся более прямым инструментом. Если источник AVC, HEVC или другой поддерживаемый DGDecNV кодек и есть совместимая GPU, рассматривают DGDecNV отдельно. Такое разграничение предотвращает две распространённые ошибки: ожидание GPU‑декодирования от DGMPGDec и попытку открыть современный видеокодек только потому, что похожее название другого продукта это умеет.

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

DGMPGDec рассчитан на 64‑битный Windows. DGIndex запускается напрямую из распакованной папки и использует соседние документационные и вспомогательные файлы; отдельный мастер установки для базового запуска не нужен. Для кадровой подачи дополнительно требуется настроенная совместимая скриптовая среда и DGDecode.

При переносе папки полезно сохранять структуру файлов, потому что Help открывает документацию по ожидаемым именам рядом с DGIndex.exe. Для AVS Template путь к шаблону тоже может храниться в ini. Если программа запускается, но Help или шаблон перестали работать после перемещения, это не обязательно связано с MPEG‑декодером; нужно проверить наличие файлов и сохранённые пути.

Как безопасно проверить результат перед долгим кодированием

После создания D2V не стоит сразу запускать многочасовой энкод. Сначала открывают короткий скрипт и проверяют начало, несколько произвольных мест, переходы между исходными частями и конец. Для интерлейсного материала отдельно смотрят движение и порядок полей; для Force Film — участки, где возможен переход между film и video; для clipping — все четыре края.

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

Контрольный список перед Save Project

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

  • Порядок файлов в File List соответствует одной непрерывной MPEG‑последовательности.
  • Information показывает ожидаемый Stream Type, размер кадра и частоту.
  • Для transport stream выбран правильный video PID и нужный audio PID.
  • Field Operation определён по типу материала, а не выбран случайно.
  • Если нужен звук, Output Method и список дорожек настроены до сохранения.
  • Границы выделения охватывают нужный участок; лишних внутренних вырезов DGIndex не сделает.
  • Luminance и Cropping включены только если изменения действительно должны попасть в D2V.
  • Пути выбраны полными или относительными с учётом будущего расположения проекта.

Контрольный список после Save Project

После завершения Information должен показать окончание обработки без непонятной ошибки. В папке проверяют наличие D2V, ожидаемых аудиофайлов и, если выбран demux video, M1V/M2V. Затем D2V тестируется реальным DGDecode, а не только повторным открытием в DGIndex.

  • D2V открывается в том скриптовом окружении, где будет идти дальнейшая обработка.
  • Исходные MPEG‑файлы остаются на месте и сохранили свои имена после индексирования.
  • У аудиофайла замечено и учтено значение DELAY, если оно присутствует.
  • Начало и конец клипа соответствуют выбранному диапазону.
  • При Force Film проверены участки движения и смешанного содержимого.
  • При cropping проверены геометрия и отсутствие случайно срезанной полезной области.
  • Если создавались логи, они сохранены рядом с проектом для повторной диагностики.

Диагностика: программа зависла или обрабатывает медленно

Скорость Save Project зависит от объёма потока, декодирования и выбранной аудиооперации. Нормализация AC3 может добавить второй проход, ресэмплинг 48 -> 44,1 кГц на высоком качестве увеличивает вычисления, а Force Open GOPs влияет на случайный доступ уже при подаче. Information показывает скорость и оставшееся время, поэтому сначала стоит отличить медленную работу от полной остановки.

Process Priority может уменьшить или повысить приоритет DGIndex в Windows, но не устраняет физическое повреждение файла и не делает диск быстрее. Если обработка неизменно останавливается на одной позиции, проверяют исходный MPEG в районе этого места и лог ошибок. Для больших файлов на медленном носителе полезно исключить проблемы чтения прежде, чем менять iDCT или другие несвязанные настройки.

Диагностика: аудиодорожка не появилась

Если после Save Project нет ожидаемого аудиофайла, проверяют Output Method. Disable закономерно ничего не выводит; Demux Tracks требует правильного выбора ID; Demux All Tracks не зависит от списка, но может вывести только реально обнаруженные дорожки. Для TS также проверяют audio PID, потому что DGIndex работает с выбранным компонентом транспортной программы.

Если выбран Decode AC3 Track to WAV, входная дорожка должна быть AC3. DTS, AAC и MPEG Audio не декодируются этим пунктом в WAV, хотя могут быть демультиплексированы. При audio-only режиме действует отдельная команда и свои ограничения. Эти проверки полезнее переустановки программы, потому что большинство случаев объясняется режимом и структурой потока.

Диагностика: неправильный размер или соотношение сторон

Frame Size в Information показывает кодированную геометрию MPEG, Display Size — отдельную display‑сигнализацию, если она присутствует, а Aspect Ratio — значение из потока. Окно DGIndex может казаться растянутым или сжатым, потому что оно показывает хранимую матрицу пикселей и не обязано моделировать конечный дисплейный размер так, как медиаплеер.

Поэтому геометрию для финального файла рассчитывают с учётом sample aspect ratio и display aspect ratio в последующем скрипте. Не нужно исправлять кажущееся растяжение случайным cropping. Cropping предназначен для удаления краёв, а не для преобразования анаморфного DVD в квадратные пиксели.

Диагностика: цвет выглядит слишком тёмным или светлым

Сначала выясняют, изменён ли Luminance Filter. Если Gamma или Offset активны, они сохраняются в D2V и действительно меняют подаваемую яркость. Затем отделяют это от YUV -> RGB, который влияет на отображение DGIndex и RGB‑путь, но не является универсальной записью диапазона для DGDecode. Сравнивать нужно одинаковые стадии конвейера.

Если исходник не объявляет colorimetry, Information может показать типичную схему со специальной отметкой. Это не равнозначно тому, что DGIndex перекрасил кадр. Для точного цветового преобразования в финальный RGB или другой YUV‑формат используют фильтр, который явно знает входную матрицу, диапазон и нужный выход, а D2V оставляют как источник MPEG.

Диагностика: неверный PID или странный TS

Симптомы неправильного PID различны: чёрное окно, мусор, отсутствие звука или даже нестабильность. PAT/PMT следует использовать первым, потому что таблицы связывают компоненты программы. Raw — запасной вариант для потоков без таблиц и требует проверки пары. Ручной Set PIDs уместен, когда значения известны из анализатора или документации потока.

Поскольку PID запоминаются между запусками, старое значение иногда вмешивается при загрузке нового TS. Если поведение нелогично, сбрасывают video/audio к нейтральному зарезервированному значению и проводят обнаружение заново. Это безопаснее, чем по очереди вводить случайные шестнадцатеричные числа.

Диагностика: переходы TFF/BFF

Смешение порядка полей может появиться в реальном MPEG‑2 после монтажа или соединения разнородных источников. DGIndex способен обнаружить переход и предложить коррекцию D2V. Решение не следует принимать автоматически: наличие смены флага само по себе не доказывает, что downstream‑фильтр требует исправленного варианта.

Если применяется Fix D2V, сохраняют возможность сравнить исходный и исправленный проект на движении, особенно вокруг места перехода. На материале с frame repeat коррекция не предназначена для использования. Для финального кодирования порядок полей также должен соответствовать тому, что ожидает деинтерлейсер или энкодер.

О производительности и GPU

Основная работа DGMPGDec связана с программным MPEG‑декодированием, индексированием и анализом. Пункта выбора NVIDIA, Intel Quick Sync или AMD VCE для ускорения здесь нет. GPU‑энкодирование также отсутствует, потому что DGIndex не создаёт конечный сжатый видеокодек.

Если дальнейший энкодер умеет работать на GPU, это отдельный этап после кадровой подачи. Аналогично аппаратное декодирование современных кодеков относится к другим решениям, в том числе к DGDecNV, но не должно приписываться DGMPGDec. Такое разделение помогает оценивать производительность честно: скорость D2V и скорость финального H.265‑рендера определяются разными компонентами.

Субтитры, главы и дисковые структуры

DGIndex не извлекает и не редактирует субтитры как отдельный пользовательский рабочий процесс, не показывает текстовую дорожку на таймлайне и не прожигает её в кадр. Его аудио‑ и видеодемультиплексирование относится к тем элементарным потокам, которые документированы для MPEG‑анализа. Если из DVD нужны субтитры, главы или меню, для них требуется отдельный инструмент.

Аналогично, открытие VOB не означает полноценный DVD‑авторинг. DGIndex не создаёт VIDEO_TS, не записывает оптический диск и не проектирует меню. Он берёт доступный MPEG‑содержимый поток, индексирует видео и при необходимости извлекает видео/аудио. Это полезный узкий этап внутри большого дискового процесса, но не замена рипперу, авторингу или прожигу.

Захват и трансляция

В DGIndex нет режима захвата с камеры, платы видеоввода или рабочего стола. Транспортные потоки, полученные с DVB/HDTV, программа открывает уже после того, как они записаны в файл. Она также не принимает сетевой адрес для прямого вещания и не отправляет RTMP, HLS или другой поток зрителям.

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

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

Удобная структура папки содержит исходные MPEG‑части, D2V, демультиплексированный звук, AVS/VapourSynth‑скрипт и диагностические логи. Имена лучше делать стабильными и не менять после индексирования. Если выбираются относительные пути, D2V и исходники располагают так, чтобы каталог можно было перенести целиком без потери ссылок.

Для долгого архива полезно также фиксировать хэш исходного MPEG и используемой DGDecode.dll. D2V сам по себе не доказывает, что файл на диске тот же, для которого вычислялись позиции. Контрольный хэш позволяет обнаружить тихую замену или повреждение, а сохранение точного декодера помогает воспроизвести кадровую подачу спустя время.

Что проверить при работе с редким старым MPEG

Старые VCD, SVCD, PVA и ранние transport captures могут содержать нестандартные границы, обрывы или ошибки, которые современные плееры скрывают. DGIndex полезен тем, что показывает структуру ближе к MPEG, но именно поэтому проблемный файл может потребовать больше ручной диагностики. Начинают с малого участка, Information и логов, а не с пакетной обработки всей коллекции.

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

Счётчики Coded, Playback и повторов в Information

Числа Coded и Playback в панели Information отвечают на разные вопросы. Coded показывает, сколько MPEG‑изображений было реально декодировано во время Save Project, Play или Preview. Playback считает изображения, которые были выведены с учётом выбранной обработки повторов. При Honor Pulldown Flags значение Playback может оказаться больше Coded, потому что один и тот же закодированный материал используется для дополнительных отображаемых полей или кадров. Такое расхождение само по себе не свидетельствует о потерях или дубликатах в исходном файле.

Frame Rpts относится к дополнительным кадрам, полученным из frame repeat, а Field Rpts — к дополнительным полям из repeat field. Если выбран Ignore Pulldown Flags, эти счётчики повторов не увеличиваются, поскольку флаги намеренно не исполняются. Для диагностики это полезнее, чем просто смотреть на движение: можно сопоставить Video Type, Coded, Playback и оба счётчика и понять, вызвана ли разница числом закодированных изображений или правилами отображения.

При анализе гибридного материала лучше запускать Preview на достаточно длинном фрагменте основной программы, а не на заставке или нескольких секундах титров. Тогда накопленные показатели отражают реальный участок, который будет индексироваться. Если показатели неожиданно меняются между фрагментами, это повод оставить Honor Pulldown Flags и переносить решение о IVTC или деинтерлейсе в последующую фильтрацию, а не пытаться заставить DGIndex интерпретировать весь файл как однородный фильм.

ПолеЧто показываетКак применять
CodedКоличество декодированных MPEG‑изображенийСравнивать с Playback при анализе pulldown
PlaybackКоличество изображений, полученных для отображенияУчитывать исполнение повторов полей и кадров
Frame RptsДополнительные кадры из frame repeatИскать материал с повторами кадров
Field RptsДополнительные поля из RFFПроверять действие pulldown

Frame Struct, Frame Type и Field Order: три разных признака

Поля Frame Struct, Frame Type и Field Order описывают разные аспекты MPEG‑2 и не должны сводиться к одной отметке прогрессивности. Frame Struct показывает, закодировано ли текущее изображение как frame picture или как набор field pictures. Frame Type отражает progressive_frame flag и тем самым характеризует способ кодирования текущего кадра. Field Order показывает порядок верхнего или нижнего поля для текущего материала.

Ни один из этих индикаторов по отдельности не доказывает природу самого изображения. Прогрессивное содержание может быть упаковано в структуру, которую MPEG помечает как чересстрочную, а чересстрочное изображение иногда встречается внутри последовательности с иными флагами. Поэтому решение о деинтерлейсе не стоит принимать по одному слову Interlaced в Information. Нужны длительный Preview, покадровая проверка движения и понимание того, как меняются флаги на проблемном участке.

Coding Type, показывающий I, P или B, относится к типу последнего декодированного изображения, участвующего в текущем кадре. При pulldown отображаемый кадр может собираться из полей, относящихся к разным кодированным изображениям, поэтому интерпретация Coding Type становится менее прямой. Для исследования именно кодированной последовательности используют Ignore Pulldown Flags, но такой режим остаётся диагностическим и не превращается автоматически в правильную настройку итогового D2V.

Из каких частей состоит D2V и почему это не видеофайл

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

Раздел параметров содержит сведения о типе потока и MPEG, выбранном iDCT, масштабе YUV‑RGB, Luminance Filter, Clipping, отношении сторон, размере изображения, Field Operation, частоте кадров и начальной позиции. Пункт Cropping в интерфейсе записывается в D2V под именем Clipping. Это нормальное соответствие формата проекта и меню, а не признак того, что кадрирование потеряно.

Индексные строки привязаны к I‑изображениям и описывают позицию в исходном файле, номер файла при многосоставном проекте, сведения GOP и последовательность флагов для следующих изображений до очередного I‑кадра. Такая организация позволяет DGDecode выполнять случайный доступ с учётом зависимостей MPEG. Именно поэтому ручное редактирование основной индексной части без полного понимания формата опасно: неверная позиция или флаг может испортить адресацию даже при неизменных исходниках.

В начале D2V есть номер формата проекта. DGDecode проверяет совместимость этого номера и способен отвергнуть D2V, созданный несовместимой парой компонентов. Если сообщение указывает на obsolete или неподходящий D2V, сначала проверяют, что DGIndex и DGDecode образуют совместимую пару. Подмена одной DLL другой версией в общей папке плагинов — типичная причина, которую легче устранить, чем повторно анализировать MPEG.

Что индекс хранит о GOP и отдельных изображениях

Для каждой индексной точки D2V различает закрытый или открытый GOP, прогрессивную последовательность, начало новой GOP и позицию в конкретном исходном файле. Отдельное поле skip помогает добраться до нужного I‑кадра, когда одна индексируемая единица содержит несколько I‑изображений. Это техническая причина, по которой D2V гораздо надёжнее простого списка временных отметок: он описывает фактическую структуру потока и точки, с которых декодер должен начать работу.

Для DVD в данных могут присутствовать VOB и Cell ID, полученные из навигационной части. Для обычного program stream или transport stream эти значения не имеют того же смысла. В per-picture flags записываются признаки декодируемости без предыдущего GOP, progressive_frame, кодировочный тип I/P/B, TFF и RFF. DGDecode использует совокупность этих данных, а не пытается заново угадать структуру по расширению файла.

Force Open GOPs меняет именно интерпретацию open/closed в D2V, не переписывая исходный MPEG. Поэтому после проверки такой вариант можно удалить и вернуться к обычному индексу без риска для исходника. Аналогично Fix D2V работает с проектом и его флагами поля, сохраняя исходный MPEG нетронутым. Это удобная граница безопасности: диагностические операции можно повторять, пока оригинальные файлы хранятся неизменно.

Unix‑style CLI: основные параметры без GUI

Командная строка предназначена для повторяемого индексирования в batch‑файлах и внешних инструментах. В современном синтаксисе вход задаётся через -i, а -ai используется для последовательного автоматического подхвата файлов. Для -i важно положение: этот параметр должен идти первым среди опций. Несуществующий указанный файл пропускается, поэтому автоматический сценарий должен самостоятельно контролировать список исходников, а не считать отсутствие ошибки доказательством полного набора.

Ключ -o задаёт базовое имя D2V без расширения, а -od одновременно создаёт индекс и включает демультиплексирование видео. -rg задаёт диапазон в терминах файлов и смещений D2V; номера файлов считаются от нуля, смещения записываются в шестнадцатеричном виде. Такой диапазон полезен для автоматизации уже рассчитанных границ, но не является системой многосегментного монтажа: один запуск по-прежнему формирует один проектный диапазон.

Для transport stream существуют -ap, -vp и -pp — аудио, видео и PCR PID в шестнадцатеричной записи. Если PID не указаны, DGIndex может попытаться определить их так же, как при обычной работе. Для стабильного пакетного конвейера лучше явно задавать известные значения после предварительного анализа конкретного источника, особенно если один TS несёт несколько программ.

ПараметрНазначениеПрактический смысл
-iЗагрузка одного или нескольких входных файловФормирует исходную последовательность
-oБазовое имя проектаСоздаёт D2V без демультиплексирования видео
-odПроект и demux videoДополнительно выводит M1V или M2V
-rgГраницы проектаПовторяет заранее заданный диапазон
-ap / -vp / -ppPID для transport streamФиксирует выбранные компоненты программы

CLI для видео, аудио и автоматического завершения

Ключ -ia выбирает iDCT по числовому коду, -fo — Field Operation, а -yr — PC или TV scale для YUV‑RGB преобразования. Эти параметры повторяют существующие настройки DGIndex и не добавляют новых фильтров. В автоматизации особенно важно не переносить -fo 1 на все файлы подряд: Force Film остаётся узким режимом для подходящего 3:2 pulldown, а не универсальным способом получить 23,976 кадра в секунду.

Аудиодорожки перечисляются через -tn, а -om выбирает метод: отключение вывода, Demux Tracks, Demux All Tracks или Decode AC3 to WAV. При AC3‑декодировании доступные параметры включают -drc для Dynamic Range Control, -dsd для Lt/Rt downmix и -dsa для преобразования 48 в 44,1 кГц с выбранным уровнем качества. Если используется режим декодирования AC3, в списке треков должна быть одна дорожка.

-at задаёт AVS Template, пустое значение отключает генерацию скрипта. -exit закрывает DGIndex после сохранения проекта, -minimize запускает работу свёрнутой, -hide — скрытой. -preview обрабатывает первые сто кадров и используется для получения информационного лога. Чтобы такой лог действительно появился, Enable Info Log должен быть включён, а каталог первого исходника должен позволять запись.

Пакетная обработка через CLI не означает очередь заданий внутри GUI. Каждая команда запускает конкретную операцию с явно указанными параметрами; очередь, зависимая последовательность нескольких проектов и реакция на ошибки организуются внешним скриптом. Для надёжности полезно проверять появление D2V и нужных аудиофайлов после каждого запуска, а не только код возврата процесса.

Enable Info Log как машинно‑читаемый отчёт о проверке

Enable Info Log сохраняет сведения из Information в файл с базовым именем первого исходника и расширением log, когда панель Information закрывается. Запись создаётся рядом с первым входным файлом. Если каталог доступен только для чтения, лог не появится, поэтому отсутствие файла нужно отличать от отсутствия обнаруженных параметров MPEG.

В сочетании с -preview эта функция позволяет без ручного просмотра каждого окна собрать первичную характеристику набора источников. Это не медиабаза и не JSON‑интерфейс: формат остаётся текстовым отчётом DGIndex, поэтому внешний скрипт должен осторожно разбирать нужные строки. Зато сам способ получения данных воспроизводит тот же анализ, который пользователь видит в Information, и не требует создавать полноценный D2V для каждого тестового файла.

Для контроля большого архива MPEG удобно сначала запускать короткий preview с логом, отделять файлы с неожиданным типом потока, размером, frame rate или набором дорожек, а уже затем индексировать прошедшие проверку материалы. Такой порядок экономит время при ошибочно подписанных расширениях и TS с несколькими программами. Он не заменяет визуальную проверку pulldown на сложном материале, потому что сто первых кадров могут не представлять структуру всей программы.

Force Fusion‑Style Audio: когда обычный разбор program stream не подходит

В некоторых MPEG program stream аудио на private stream 1 не следует DVD‑соглашению с привычным substream number и сопровождающим заголовком. DGIndex называет такой вариант Fusion‑style audio и предлагает принудительно использовать отдельный способ разбора. Наиболее известный сценарий связан с MPG, созданными некоторыми картами захвата Dvico Fusion. Для обычного DVD‑подобного program stream этот режим не нужен.

Опция относится к разбору аудио, а не к восстановлению повреждённого видео и не к универсальному поиску пропавшей дорожки. Если обычный program stream корректно показывает аудио ID и демультиплексирует дорожки, включать Fusion‑style без причины не следует. Для transport stream от Fusion такой специальный переключатель не требуется: документация DGIndex отмечает, что соответствующие TP обрабатываются обычным транспортным путём.

Настройка запоминается в INI. Поэтому после работы с необычным захватом полезно вернуть её в обычное состояние, прежде чем диагностировать DVD‑VOB или стандартный MPG. Иначе сохраняется скрытая зависимость от предыдущей задачи, которая усложняет сравнение результатов. В систематическом конвейере лучше документировать это значение вместе с PID, Field Operation и методом аудиовывода.

Скрытые в INI параметры расширений MPA и уведомления

Некоторые параметры DGIndex меняются только в INI и не представлены отдельным диалогом. Use_MPA_Extensions управляет расширением демультиплексированного MPEG Audio. При значении 0 DGIndex выбирает mp1, mp2 или mp3 в зависимости от layer; при значении 1 использует общее расширение mpa. Содержимое аудиопотока от этого не перекодируется: меняется только имя результата.

Notify_When_Done определяет поведение после Save Project. Нулевое значение отключает уведомление, единица выводит окно DGIndex на передний план, двойка подаёт звуковой сигнал, тройка сочетает оба действия. Это удобно при длительном индексировании, но не является менеджером очереди. Если один проект должен автоматически запускать следующий, такую логику по-прежнему организует внешний скрипт.

Редактировать INI следует при закрытом DGIndex и только после сохранения резервной копии, если рабочее окружение уже настроено. Причина практическая: файл хранит не только эти два значения, но и ряд параметров GUI, включая PID и другие выбранные режимы. Ошибка в попытке изменить уведомление не должна превращаться в труднообъяснимую смену настроек всего процесса.

Single Step: изучение кадров без обещания кадр‑точной границы

Single Step относится к скорости Play и позволяет выдавать следующий кадр по нажатию кнопки перехода во время активного воспроизведения. Режим удобен для рассмотрения гребёнки, смешанных полей и кратковременных артефактов. Однако он не меняет гранулярность project selection: начало и конец проекта по-прежнему задаются навигационными точками DGIndex, связанными с I‑кадрами.

Во время Single Step нельзя свободно перетащить навигационную позицию в другое место. Чтобы начать изучение с новой области, нужно остановить воспроизведение, перейти по шкале, снова запустить и затем шагать. Первые кадры после старта могут иметь временные блоки из‑за B‑кадров, опирающихся на недекодированный предыдущий контекст. Документация прямо отделяет этот эффект Play от результата кадровой подачи.

Для оценки реальной ошибки полезно сравнить три ситуации: последовательный Preview через участок, Single Step после старта немного раньше нужного места и кадр из DGDecode по D2V. Если дефект присутствует только сразу после произвольного старта Play, не следует пересобирать исходник или включать Force Open GOPs вслепую. Если он повторяется при случайном доступе через DGDecode, тогда проверка open/closed GOP действительно становится уместной.

Логи timestamps и Analyze Sync как связанная процедура

Analyze Sync рассчитан на уже созданный timestamp dump. Сначала включают Log Timestamps и выполняют Save Project, чтобы получить трассу PTS/DTS, а затем инструмент анализирует задержки для возможных стартов на I‑кадрах. Такой порядок важен: Analyze Sync не восстанавливает отсутствующую последовательность временных меток из воздуха и не заменяет предварительный лог.

Если в начале VOB или захвата есть скачок SCR, задержка для первой допустимой точки может получиться явно аномальной, тогда как следующий I‑кадр уже даёт разумное значение. В такой ситуации можно сдвинуть начало проекта к следующей GOP и снова сохранить D2V. При этом численное значение задержки корректно только для той I‑точки, к которой относится расчёт; переносить его на произвольную позицию нельзя.

Для transport и PVA при таком анализе используется выбранная аудиодорожка, а audio id отображается иначе, чем в DVD program stream. Его не следует путать с PID: PID выбирает компонент транспортного потока, тогда как audio ID относится к внутренней логике аудио. Разделение этих терминов особенно важно при записи диагностических заметок, иначе исправление синхронизации легко привязать к не той дорожке.

Практический вывод

DGMPGDec имеет смысл выбирать тогда, когда исходный материал действительно MPEG‑1/2 и нужен точный D2V‑индекс, раздельный demux, диагностика pulldown или transport PID и предсказуемая передача кадров в AviSynth/VapourSynth. Он особенно силён как технический подготовительный этап: пользователь видит, какие MPEG‑параметры были обнаружены, может сохранить логи и контролирует, какие части потока попадут в проект.

Если задача формулируется как быстро открыть современный MP4/MKV, смонтировать несколько сцен, добавить эффекты, стабилизировать, обработать субтитры и сразу экспортировать новый кодек, DGMPGDec не соответствует этой роли. В таком случае выбирают редактор или универсальный source‑filter, а DGIndex оставляют для тех MPEG‑1/2 источников, где его специализированные D2V, PID, pulldown и demux дают реальную техническую пользу.