Домашняя фабрика грез. Часть 4.
АрхивТехнологизмы (архив)Создание цифрового видео. Разбор программы FLY 2000 TV
Читатель наверняка уже задается вопросом, – а где собственно видеомонтаж? После продолжительной артиллерийской подготовки можно приступать к главному – созданию цифрового видео.
Программная часть
Для захвата видео и его дальнейшего монтажа существует достаточно много программ, которые можно разделить на три категории:
Профессиональные и полупрофессиональные программные пакеты
Программное обеспечение, идущее в комплекте с TV Tunerами, видеокартами и контроллерами FireWire
Freeware и Shareware программное обеспечение
С первой категорией все понятно – программы могут практически все, требуют мощного компьютера и приличных денег (разговор начинается с 500 американских рублей), достаточно тяжелы в освоении и для домашнего монтажа избыточны.
Хорошо известными программами этого семейства являются Adobe Premiere и Ulead MediaStudio Pro.
Вторая категория.
Я всегда задавался вопросом – на кого рассчитано программное обеспечение которое входит в комплект большинства коробочных версий видеокарт, TV Tunerов, сканеров и тому подобных вещей. Такое впечатление, будто покупатель, который приобретает устройство за 70 – 100 американских денег полный дебил, оставшийся на уровне семилетнего ребенка.
Интерфейс может быть для кого-то и красивый, но буйство красок как будто используется для того, чтобы сделать Вас косым. Зачастую нелогичное расположение управляющих элементов. И самое противное – программы по большому счету могут выполнять несколько базовых функций, да и те с минимальными возможностями управления процессом со стороны человека (В нашем конкретном случае – оцифровка видео, склейка фрагментов, наложение какой-то статической картинки, причем минимальный выбор кодеков, форматов аудиосжатия и точной настройки параметров).
Третья категория.
Это наше, родное. Мы ведь по определению бедные, но честные (обратное пусть докажут :-)). Здесь выбор не очень богат. Монтаж видео достаточно специфичная область, трудная для программирования, а массового интереса до последнего времени не наблюдалось. В результате – небольшое количество программ, обычно – программы для приема телеизображения, способные производить захват видео с TV Tunerа или видеовхода, с возможностью использования различных кодеков. И парочку программ для собственно видеомонтажа. Это что касается операционной системы Windows.
С Linux полегче – порядка полутора десятков бесплатных программ для видеомонтажа, и приблизительно столько же – для захвата видео.
Для ознакомления со списком и возможностями программ под Windows рекомендую воспользоваться сайтом http://tuner.ixbt.com/ – сайт посвящен TV и FM карточкам, программному обеспечению для них. Для ознакомления со списком и возможностями программ под Linux рекомендую воспользоваться сайтом http://www.freshmeat.net/ – сайт посвящен программам для Linux. Как Вы понимаете, тема достаточно обширна – посему я напишу обзор пары программ для Windows и пары-тройку – для Linux
FLY 2000 TV
Программа ShareWare написана Андреем Золотаревым, Веб сайт программы – http://auzol.narod.ru
Программа полнофункциональна в течение 30 дней, после чего захват видео становится невозможным.
Стоимость программы – 6 евро.
Программа предназначена для просмотра телевизионных передач, приема FM радиостанций и захвата видео. Ее неоспоримое преимущество перед аналогичными программами – поддержка чипов Conexant и Philips – семейства Bt848(Bt878) и SAA7130HL (SAA7134HL).
Давайте посмотрим, что может программа по словам ее автора:
– принимать телевизионные программы в диапазоне 48.75 – 855.5 МГц, что особенно актуально для сетей кабельного телевидения
– прослушивать FM радио в диапазоне 65–190 МГц
– позволяет запоминать для каждого телевизионного канала настройки яркости, контрастности, оттенка (PAL), насыщенности, четкости, ТВ аудиорежима (Моно, Стерео, MTS), видеоформата (PAL/SECAM/NTSC), аудио баланса левого и правого канала
– запоминание для режимов Вход Composite и Вход S–Video видеоформата (PAL/SECAM/NTSC), а также яркости, контрастности, оттенка (только PAL), насыщенности, четкости
– поддержка пульта дистанционного управления
– многоязыковая поддержка интерфейса – английский, русский
– возможность изменять в большом диапазоне размер кадра в формате видеопотока (до 768x576) при просмотре
– возможность делать Deinterlace (удаление эффекта расчески) и Denoise (удаление шума) при просмотре
– захват отдельных кадров в формате BMP, JPEG вручную и по таймеру
– захват и сжатие звука в WAV формате с применением ACM кодеков по технологии Microsoft ACM, а также по технологии DirectShow отдельно от изображения
– захват видео в формате AVI (до 768x576) и сжатия на лету с помощью установленных в системе кодеков, с отображением подробной информации о процессе захвата
– захват видео с разбиением на сегменты заданного размера
– возможность синхронизации аудио и видео потока по отметкам времени
– захват видео на лету в MPEG1 формат с размером кадра до 384x288
– захват видео на лету в MPEG2 формат с размером кадра до 720x576
– запуск программ и запись в заданное время
– декодирование телетекста с поддержкой английского, немецкого, французского, итальянского, испанского, шведского, чешского, русского языков
Как видите – список очень внушительный, и что самое интересное – он полностью соответствует действительности.
Поскольку этот цикл статей посвящен видеозахвату – я только вкратце пробегусь по другим возможностям этой программы.
Главная панель программы изображена на рисунке:
Как видите – достаточно аскетично – четыре кнопки для переключения каналов и регулирования громкости, панелька, отображающая название принимаемого канала, текущее время и источник сигнала (TV, FM, видеовход) и три кнопки – захват видео, настройки программы и кнопка вызова планировщика задач.
Тем не менее – такой с первого взгляда минимализм вполне оправдан – глаза не разбегаются, все что надо в первую очередь – под рукой (посмотрите на свой пульт к телевизору – самые затертые кнопки – переключение каналов и регулировка громкости звука).
Получив первое впечатление от программы, перейдем к следующему шагу – настройке каналов.
Как видите, ничего сложного, тем не менее настроить каналы можно идеально. Слева находится список настраиваемых параметров.
Подробно я остановлюсь только на настройке телевизионных каналов, поскольку это напрямую касается видеозахвата.
Для облегчения настройки мы можем выбрать страну, в которой мы находимся. Это подразумевает что программа автоматически подберет стандарт кодирования телепрограмм, выберет тип звукового сопровождения (моно, стерео), количество и шаг сканируемых телеканалов. Для тех, кто принимает телепередачи на наружную антенну, в большинстве случаев выбор региона и дальнейшее сканирование каналов достаточно для настроек. Однако для счастливых телезрителей кабельного телевидения (например, меня :-)) такой номер не пройдет.
Кабельщики имеют свое представление о нарезке частотного диапазона, в результате чего половина каналов ранее описанной методикой настройки не обнаруживается.
Для этого случая существует специальная кнопочка – автосканирование, которая позволяет пройтись по диапазону 48.75 – 855.5 МГц с шагом 0,25 МГц и найти все наличествующие телевизионные программы. После того, как Вы просканируете весь диапазон в поисках телевизионных каналов можно переходить ко второй части настройки. Как Вы видите, в верхней части окна настройки находится таблица найденных каналов. Можно пройтись по этой табличке и настроить каждый телевизионный канал отдельно, вплоть до его удаления.
Можно выбрать стандарт кодирования сигнала, тип звукового сопровождения, настроить яркость, контрастность цветовой баланс изображения.
Настройка FM радио происходит аналогично.
Займемся захватом видео. За захват видео отвечает кнопочка в виде киноленты, расположенная на основной форме. Но перед этим необходимо выбрать источник сигнала. Нас интересует либо телевизионный сигнал либо композитный или S-Video вход.
После нажатия на кнопку, появляется окно:
Как Вы видите, окно содержит шесть закладок. Рассмотрим их по порядку.
Первая закладка отвечает за захват видео и аудио потока в файл формата AVI. Настройки AVI находятся на пятой закладке, что несколько нелогично, но так захотел автор.
Итак, начнем с настроек AVI. В левой части окна мы должны определить параметры AVI файла:
Кодек для видеопотока. Выбирается из списка кодеков, установленных на вашем компьютере. Если кодек позволяет – можно задать качество сжатия видеопотока и интервал между ключевыми (P) кадрами.
Ниже находится кнопка, нажав на которую можно задать тип аудиосигнала (моно, стерео), частоту квантования, глубину дискретизации (8 бит, 16 бит) и кодек.
Небольшое отступление.
При видеозахвате мы имеем 2 потока данных:
видео
аудио
Самое противное, эти два потока не синхронизированы между собой. Видеопоток живет своей жизнью и частота следования кадров зачастую переменна (если оцифровывается аналоговый видеопоток). В результате мы получаем наши 25 кадров в секунду в виде 24,97.... кадра в секунду. Для аудиопотока все строго – есть частота дискретизации, задаваемая генератором на звуковой карте. Обычно используется частота дискретизации 44100 герц. Если Вы оцифруете ваш фильм с сжатием видео и аудио – приготовьтесь наблюдать интересный эффект – чем дольше идет фильм – тем ощутимее рассинхронизация видео и аудиопотоков.
Для борьбы с этим эффектом необходимо сделать несколько вещей:
1) При захвате видеоданных не использовать сжатие для аудиопотока – используйте кодирование PCM (Pulse Code Modulation)
2) Если у Вас звуковая карта SB Live!, используйте частоту дискретизации 48000 герц (это связанно с аппаратными особенностями этой звуковой карты)
3) Если позволяет программа захвата видео – используйте ее опции синхронизации видео и аудио потоков
Снизу слева присутствует панель, в которой Вы можете выставить параметры видео, такие как размер кадра, формат кодирования видеосигнала, частота кадров в секунду.
Панель справа определяет специфические параметры для захвата аудио и видео потоков.
Режим "Interleaving" – режим по чередованию аудио и видео потоков. Под Windows XP доступен режим "WinXP buffered", который позволяет выполнять буферизированную запись, что снижает нагрузку на систему, на жесткий диск и уменьшает вероятность пропуска кадров.
Главный поток AVI – определяет поток, относительно которого будет проистекать синхронизация данных. Возможные варианты – Аудио, Видео, Отсутствует.
Совместимость с форматом AVI 1.0 – используется для обратной совместимости с Video for Windows. Из основных ограничений – формат AVI 1.0 не поддерживает размер файла более 1 гигабайта.
Делать AVI сегменты по... – этот параметр позволяет, при оцифровке длительного по времени видеофрагмента разбивать захваченный видеопоток на несколько файлов указанного размера. Обратной стороной медали является потери кадров на стыках файлов, но на современных компьютерах они небольшие.
Следующая закладка, которая нам необходима – закладка общие (6 закладка).
На этой закладке определяются параметры видеозахвата, общие для захвата в формат AVI, MPEG и захват звукового потока, а также некоторые параметры видеозахвата.
Параметр Просмотр при захвате позволяет одновременно с захватом изображения контролировать его на мониторе визуально. Однако, если у Вас слабая машина, рекомендуется по возможности эту опцию отключать, поскольку просмотр видео потребляет часть процессорных ресурсов.
Порог включения фильтра SmartTee – Данный параметр определяет количество пикселей по вертикали у кадра (288 для PAL, 240 NTSC), при превышении которых будет задействован фильтр Smart Tee, позволяющий делать захват и просмотр одновременно при полноформатном кадре (четные и нечетные кадры). Проблема в том, что драйверы saa713x и Bt8x8 не поддерживают просмотр и захват видео одновременно, при размере кадра, превышающем размер одного поля. Фильтр Smart Tee позволяет обойти данное ограничение, однако за это вы платите следующим:
– Повышается загрузка процессора
– Повышается вероятность рассинхронизации видео и аудио потоков
– Формат видео при просмотре становится таким же, как и формат захвата.
Параметры Путь для файлов AVI и MPEG и Путь для WAV файлов определяют, куда будут сохраняться захватываемые данные
Параметр Приоритет при захвате AVI позволяет повысить приоритет программы, что положительно сказывается на видеозахвате исчезновением или уменьшением количества потерянных кадров. Правая часть закладки отвечает за настройки уровня звука и синхронизацию.
Параметр связать каналы позволяет синхронно изменять уровень записи для левого и правого каналов. Это удобно на хороших, студийных видеозаписях и при оцифровке видео с монофоническим звуком. Если эту отметку убрать – можно регулировать уровни записи по отдельности.
Параметр Синхронизация по отметкам времени – эта опция заставляет FilterGraph Manager подбирать автоматически величины задержек для устройства аудио и видеозахвата, основываясь на отметках времени прохождения аудио и видео потоков через каждый фильтр, что позволяет синхронизировать аудио и видео потоки. Можно задать максимальную временную разницу между синхроотметками. Еще одна закладка, отвечающая за захват видео – Захват в MPEG 1/2 (2 закладка).
В отличие от AVI, для которого настройки и собственно захват разнесены на две закладки, за настройки и захват MPEG отвечает одна единственная закладка. На ней находится панель Настройки фильтра MPEG 1/2 и панель статистика захвата MPEG 1/2, а также кнопки начала записи, окончания записи, воспроизведения захваченного видео и кнопка сброс. С панелью Статистика захвата – все просто и понятно:
сколько захватили кадров, сколько пропустили кадров (чем меньше, – тем лучше), длительность захваченного видеопотока, свободное место на жестком диске, файл, в который записывается видео.
Настройки фильтра вещь, напрямую отражающаяся на качестве и объеме захваченного видео. Что же нам предлагает автор программы:
Выбрать кодек (в терминологии автора – MPEG filter) – Honestech или InterVideo. Первый кодек входит в состав программного обеспечения TVtunerа FlyVideo начиная с версии драйвера 2.40, второй необходимо доставать самостоятельно. В предыдущей части статьи была ссылка на сайт с различными кодеками.
Какой кодек выбирать – решать Вам. Субъективно – кодек InterVideo дает несколько лучший результат. После того, как Вы определились с кодеком, нужно задать параметры кодирования, объединенные в группу Качество MPEG.
Режим определяет, в каком стандарте будет происходить кодирование – MPEG1 или MPEG2. Далее, мы должны задать размер кадра. Чем больше размер кадра, тем сильнее происходит нагрузка на процессор. Как видно из рисунка 15 – текущая загрузка процессора составляет 40 процентов при размере кадра 384Х288 (процессор – Pentium 2GHz, объем памяти 256 МБ). На рисунке 16 вы можете увидеть, что будет если оцифровывать с размером кадра 720Х576
Как видите, все параметры неизменны, за исключением размера кадра. Загрузка процессора – 100 процентов за 13 секунд записи – четыре потерянных кадра.
Как справедливо заметил Автор программы, "Никто не захватывает в разрешении 384x288 и с битрейтом 7500. Обычно битрейт 7500 для 720x576, а для 384x288 битрейт ставят 2000 – 2500. "Спешу оправдаться – моей задачей в данном случае было показать, как сильно влияет величина кадра и битрейта на загрузку центрального процессора.
Следующий параметр – кадры в секунду. Здесь все просто – для СНГ 25 кадров в секунду для США 30 кадров в секунду.
Следующий параметр – Битрейт. Вообще-то чем он выше, – тем качественней полученный результат. Однако необходимо подобрать оптимальный для вашего компьютера битрейт (так называемый показатель цена/качество :-))), поскольку данный параметр очень любит кушать ресурсы компьютера.
Параметр Сегмент. Очень нужный параметр при захвате больших фрагментов видео. Позволяет разбивать большие файлы на несколько сегментов.
Качество MPEG – некий синтетический параметр, скрывающий за собой множество тонких настроек кодера. Этот параметр может получать значения из списка, который содержит что-то типа обычное качество, качественный, очень качественно, превосходное качество.
Опять же – рекомендую самостоятельно подобрать параметр, удовлетворяющий Вас как по производительности так и по качеству оцифрованного материала.
Параметр определяет векторы движения (Motion Vectors). Чем больше вектор, тем меньше артефактов будет получено на быстродвижущихся объектах. Чем выше настройка "Качество MPEG", тем больше Motion Vectors. Достаточно сильно увеличивает нагрузку на процессор
Рассмотрим еще две закладки. Закладка Запись WAV
:
Назначение – захват аудиопотока отдельно от видео.
Закладка Снимок:
Здесь и без объяснения все понятно – с помощью этой закладки можно делать снимки, причем можно сделать слайд-шоу, задав интервал между снимками.
Вот и все о программе FLY 2000 TV.
Следующая часть статьи будет посвящена программе Virtual Dub