Найти в Дзене
OVERCLOCKERS.RU

Сборка ретро-ПК — часть 7. Захват видеосигнала с VGA-выхода старого ПК

В этой статье постараюсь разобрать основные проблемы получения качественного видео с экрана монитора ретро-ПК и расскажу об одном аппаратном решении, которое может быстро и качественно решить почти все поставленные задачи. Очевидно, что видео, снятое смартфоном или фотоаппаратом непосредственно с экрана монитора, не позволит в полной мере оценить качество происходящего на экране, гарантированно будет иметь отклонение в цветах, резкости и контрастности изображения или, того хуже, мелькающие горизонтальные полосы, если съемка будет производиться с ЭЛТ-монитора. Конечно, многое зависит от подхода к такой съемке — можно использовать качественную камеру или смартфон, использовать штатив, отрегулировать окружающий свет, чтобы избежать бликов от экрана монитора, в общем, подготовительных моментов тут масса. Но истинного качества оригинала все равно достигнуть не получится, да еще и камера на штативе будет собой закрывать монитор и мешать управлять ПК. Недостатки такого подхода вылезают в полн

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

Очевидно, что видео, снятое смартфоном или фотоаппаратом непосредственно с экрана монитора, не позволит в полной мере оценить качество происходящего на экране, гарантированно будет иметь отклонение в цветах, резкости и контрастности изображения или, того хуже, мелькающие горизонтальные полосы, если съемка будет производиться с ЭЛТ-монитора. Конечно, многое зависит от подхода к такой съемке — можно использовать качественную камеру или смартфон, использовать штатив, отрегулировать окружающий свет, чтобы избежать бликов от экрана монитора, в общем, подготовительных моментов тут масса. Но истинного качества оригинала все равно достигнуть не получится, да еще и камера на штативе будет собой закрывать монитор и мешать управлять ПК. Недостатки такого подхода вылезают в полной мере в случае необходимости провести какое-то сравнительное тестирование — например, сравнить качество выводимого изображения, показать какие-то особые эффекты, провести покадровый разбор транслируемого видео и так далее.

При этом практически каждый мало-мальски подкованный пользователь ПК сразу же предложит вполне логичное решение — воспользоваться функцией видеозахвата экрана с помощью соответствующей программы для записи изображения с экрана или с помощью специализированного устройства. И вот тут сразу же отметается первый вариант — вспомним, что мы имеем дело с ретро-ПК, так что, вероятнее всего, мощности ПК может просто не хватить для записи видео с экрана в приемлемом качестве. А может, ПК настолько древний или в чем-то особенный, что для него просто не существует программ для записи с экрана. Тут же можно предложить и второй вариант, более затратный, но вроде как более надежный — использовать специализированное устройство видеозахвата (видеограббер), подключаемое к выходу видеокарты, обычно "в разрыв" между монитором и ПК. И тут снова наталкиваемся на аппаратную проблему — из видеовыходов на видеокарте в ретро-ПК обычно бывает только VGA или максимум DVI с аналоговым трактом. Маленький дисклэймер — проблему видеозахвата решал для себя, а мне важна возможность записи именно с VGA и в редких случаях DVI, так что использование других старых интерфейсов (CGA, EGA и прочих) или более новых типа DVI-D, HDMI не рассматривалось.

Так, а где, собственно, проблема? И вот тут самое главное — устройств видеозахвата, умеющих напрямую работать с VGA, в природе существует буквально несколько моделей. Хорошо, а зачем напрямую, можно же купить на том же АлиЭкспресс конвертер типа VGA>HDMI, а уж видеограбберов для HDMI просто море разливное.

-2

Все верно, но практически все конвертеры, имеющиеся на рынке, имеют массу ограничений в части получаемого изображения, а именно — в большинстве случаев изображение конвертируется либо в FullHD, либо в 4K. Как преобразуется при этом цветовая палитра, тоже большой вопрос — просто получаем какие-то цвета, никак не настраиваемые.

Но самое плохое, что эти конвертеры почти все не умеют работать с нестандартными разрешениями и частотой развертки, что приводит к невозможности "захватить", например, экран POST или интерфейс аппаратного RAID. То есть вы никак не получите оригинальное изображение, что транслируется по VGA интерфейсу. Например, для ПК под управлением Windows 98 использование подобного конвертера может привести к возможности захвата экрана только после загрузки рабочего стола Windows и нарушению пропорций, поскольку разрешение рабочего стола 800 х 600, а вывод идет в FullHD с растягиванием по ширине. Чуть более продвинутые конвертеры, которые могут захватить экран POST, часто грешат серьезными искажениями и помехами, так как некорректно фильтруют аналоговый входной сигнал и не позволяют хоть как-то регулировать этот процесс. По итогу, простенькие конвертеры позволят получить результат с качеством ниже среднего и они точно не подойдут для проведения хоть сколько-нибудь серьезных тестов, требующих захвата качественного изображения в заданном разрешении.

Осознав всю неполноценность китайских конвертеров, оставим их в покое и обратимся к серьезным специализированным видеограбберам. Опытом общения с одним из таких я и хочу поделиться. Встречайте — видеограббер Epiphan DVI2USB 3.0 производства канадской компании Epiphan Systems.

-3

Я уже давно интересовался этой моделью, но отсутствие таких специфических железок даже на известных барахолках и весьма недемократичная цена на них не позволяли мне с ней познакомиться. Но вот однажды очередной поиск дал положительный результат и DVI2USB 3.0 удалось приобрести по приемлемой цене. В комплекте были только само устройство, USB-кабель и переходник DVI-HDMI.

Вот официальные технические характеристики Epiphan DVI2USB 3.0

-5

После установки драйверов и обновления firmware (драйвер, ПО и firmware поставляются одним установочным пакетом "чудовищного" по нынешним временам размера — аж целых 9 Мб) на экране появилось главное и единственное рабочее окно:

-6

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

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

-7

То есть DVI2USB3.0 просто выдает себя за некий монструозный монитор, поддерживающий все эти разрешения и частоты.

-8

Соответственно, практически любое устройство вывода VGA будет способно подать на выход именно оригинальный сигнал с исходными параметрами разрешения и частот. И этот оригинальный сигнал будет "пойман" и оцифрован на выходе DVI2USB 3.0. Например, материнская плата ABIT BX133-RAID выдает на видеокарту GF2GTS экран загрузки POST в разрешении 720х400 и частотой 70,3 Гц.

2. Можно записывать исходный сигнал прямо в программе самого видеограббера, но тут есть некоторые особенности, о которых в конце статьи.

3. Поддержка большого количества кодеков компрессии видео. В инструкции производитель рекомендует установить K-Lite Codec Pack Mega и выбрать x264. Обязательно воспользуйтесь этой возможностью, чтобы получить максимальное качество при минимальном размере выходного файла. Обратите внимание, что установку паков кодеков надо проводить вдумчиво, иначе можно случайно установить пак с настройками "по умолчанию" и потом не найти в системе никаких кодеков, а все потому, что паки по умолчанию в большинстве своем ставят только декодеры, а не сами кодеки, надо об этом помнить.

-9

4. Аппаратные возможности настройки входного сигнала, кроп, смещение и тому подобные полезные вещи.

5. Возможность записывать не видео, а только скриншоты, но при этом со скоростью до 30 кадров/с. Очень нужная функция для проведения сравнительных тестов качества изображения. Беда только в том, что скриншоты записываются в формате BMP, что катастрофически быстро съедает свободное место на диске. Само собой, быстрый SSD тут просто необходим как воздух.

6. Передача захваченного видео в любое DirectShow приложение для дальнейшего редактирования. Я использовал старенький, но удобный и привычный VirtualDub.

-11

И вот тут есть интересная особенность. Источник сигнала бомбардирует видеограббер видеопотоком с часто меняющимися параметрами, а видеограббер это все честно отображает в окне своей программы, при этом размеры окна постоянно "прыгают", показывая RAW-изображения от источника. Но нам ведь нужно записать видео в едином разрешении, поэтому для этого есть функция масштабирования всего потока в единое разрешение для передачи его в DirectShow приложение. Качество масштабирования также можно менять.

7. Можно вставлять заставку на время, когда сигнал с источника не поступает (на моих скринах в качестве заставки выбрал телевизионную настроечную таблицу). Вот как выглядит "нет сигнала" в DirectShow приложении.

-13

Теперь о главном — качестве. Вот так выглядит в оригинале захваченное изображение рабочего стола одной из сборок ретро-ПК под управлением Windows 98SE и переданное в VirtualDub.

-14

Впечатляет? А потом эксперимента ради вывел картинку с разрешением 1600х1200 с далеко не эталонной в плане качества 2D видеокарты GF2GTS и... обалдел. Качество просто зашкаливает. А представьте себе монитор с таким разрешением у вас на столе в далеком 99-м.

-15

Подводя итоги

Казалось бы, идеал достигнут. Но неужели обошлось без недостатков? Увы, но нет, хотя я бы назвал их особенностями.

1. При записи сигнала с источника средствами самой программы видеограббера любая смена видеорежима прерывает запись. То есть записать единым роликом, например, загрузку ПК, в принципе невозможно, запись прервется сразу же, как только экран POST сменится на "рабочий стол". Но для этого существует передача материала сразу в DirectShow приложение.

2. Во время смены видеорежимов возникают артефакты или изображение на секунду "замораживается". На обычном мониторе мы этого обычно не наблюдаем, потому как он не воспринимает такой "переходный" сигнал, а видеограббер честно "ловит" абсолютно все. Это, естественно, попадает на запись, что приводит к необходимости тратить время на допобработку (обрезку) финального видео.

3. Нет встроенного аудиокодировщика для стороннего аудиосигнала. То есть при подключении видеограббера к аналоговому видеоисточнику записывать аудио в любом случае придется сторонним АЦП (например, встроенной в рабочий ПК звуковой картой) и в дальнейшем сводить видео с аудио в любом удобном приложении.

4. Фреймрейт захваченного видео не жесткий, а зависит от множества факторов (разрешение, глубина цвета, кодек, частотные параметры и прочее) и достичь паспортных значений можно только при неких конкретных настройках, найти которые задача непростая. Но достаточные 30 кадров/с вы получите практически на любых стандартных для VGA разрешениях.

5. И последнее — очевидно, это цена. Но ругать профессиональное и весьма специфичного оборудование за высокую стоимость не совсем корректно. Вот если бы появились серьезные конкуренты такому решению, все было бы иначе, но увы, спрос на подобные вещи весьма ограничен, так что конкуренция не особо-то цветет.

На этом, пожалуй, заканчиваю. Нужен такой монстр или нет, решать, конечно, вам самим исходя из необходимости. Брать, чтобы просто "побаловаться" — точно не стоит. Лично для себя я уверился, что DVI2USB 3.0 позволяет решать мои задачи по видеозахвату при "общении" с ретро-ПК более чем достойно, ничего лучше на горизонте пока наблюдаю.

Посмотрите, как выглядит "сграбленное" видео. Жаль, но "тытруба" конвертирует видео по своему усмотрению, оригинальное с нестандартным видеорежимом сохранить, к сожалению, невозможно, но общие впечатления получить можно.

И сам процесс захвата на рабочем ПК в динамике

За сим откланиваюсь, до следующих встреч.

📃 Читайте далее на сайте