Как я могу получить аппаратный снимок экрана? - PullRequest
3 голосов
/ 21 сентября 2008

В прошлом некоторые из моих проектов требовали от меня создания версии фильма полноэкранного приложения Flash. Самый простой способ сделать это - сделать снимок экрана. Тем не менее, съемка чего-либо более 1024x768 привела к прерывистому видео, что недопустимо. Я понимаю, что существуют аппаратные решения для захвата полноэкранного видео, но я так и не смог выяснить, что это такое. Мой вывод должен быть масштабируемым до 1920x1080 и приводить к несжатому файлу AVI без прерывистости.

Ответы [ 7 ]

3 голосов
/ 21 сентября 2008

Различные профессиональные продукты поддерживают захват Full HD:

http://www.decklink.com/products/hd/

http://www.aja.com/

Есть и другие. Захват полного несжатого цифрового или аналогового потока является довольно сложным требованием.

-Adam

2 голосов
/ 21 сентября 2008

Если приложение Flash не является интерактивным, есть много инструментов, которые могут получить захват не в реальном времени (но полностью плавный и безупречный) в файл AVI или серию PNG.

Если он интерактивный и вам абсолютно необходим захват в реальном времени, FRAPS действительно сможет выполнить эту работу, по крайней мере, в Vista, где обычно нетрудно манипулировать FRAPS для записи различных приложений, не относящихся к DirectShow, с использованием Aero в качестве графический слой.

1 голос
/ 21 сентября 2008

Если вы загружаете фильм в элемент управления Flash ActiveX, вы можете вызвать метод IViewObject::Draw (или вспомогательную функцию OleDraw) в элементе управления, чтобы нарисовать его в DC вашего выбора и цикл по каждому кадру в анимации. Извлечь аудио будет сложнее, но если вы сделали анимацию на месте, это не должно быть слишком сложным.

0 голосов
/ 21 августа 2009

http://rgb.com/ Я смотрел на их продукт раньше - очень качественное / дорогое, но отличное видео, и это аппаратное решение, поэтому оно не сильно загружает процессор на машине, на которой вы пытаетесь сделать демонстрацию.

0 голосов
/ 21 сентября 2008

Если вам не нужно перемещаться в фильме, Flash CS3 поддерживает покадровый экспорт Flash-фильмов (включая сценарии).

Откройте вашу анимацию во Flash, если у вас нет .fla, поэтому должна работать простая обертка, которая загружает ваш SWF. Затем перейдите Файл -> Экспорт -> Экспорт фильма и выберите Quicktime. Установите различные неповторимые биты по своему вкусу, и тогда Flash выполнит анимацию настолько быстро, насколько это возможно, что избавит вас от риска потери кадров и необходимости ждать захвата 1 кадра в секунду.

0 голосов
/ 21 сентября 2008

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

0 голосов
/ 21 сентября 2008

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

Это не даст вам 1920x1080.

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

редактирование:

Кстати - если вы хотите захватывать 1920x1080 в реальном цвете со скоростью 30 кадров в секунду без сжатия, вы должны каким-то образом хранить около 237 мегабайт в секунду . Просто чтобы дать вам представление о том, с какими данными вам приходится иметь дело ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...