Рендеринг видео формата PAL с DV камеры и его сжатие в h264

Материал из AlexNook
Перейти к навигацииПерейти к поиску

Время от времени приходится захватывать со старенькой miniDV камеры видео и, отредактировав его в моём любимом Sony Vagas, рендерить его и пережимать для дальнейшего хранения на дисках. Т.к. камера старая то, первые мои видео были не в сравнение хуже по всем параметрам и зачастую даже неправильно захваченные (потеря разрешения) и неправильно сжаты. В общем со временем я получал понемногу новые знания в этой области, появлялись новые кодеки, росла мощь компьютера.

В данном материале делаю себе памятку по рендерингу видеоматериала, подготовленного в Sony Vagas и по его сжатию.

Рендеринг видео в формате PAL в Sony Vegas

Будем считать, что у нас уже создан проект в Sony Vagas, всё нарезано, склеено, наложена музыка или другие аудио эффекты, выполнены все необходимые переходы и другие преобразования. Осталось добавить пару картинок (фотографий), настроить их и указав параметры рендеринга - выполнить его.

Настройка параметров вставленных изображений

Т.к. формат видео PAL подразумеват, что у нас PAR (Pixel Aspect Ratio) не равно 1:1, а фотографии с цифрового фотоаппарата выполнены как раз в формате PAR = 1:1, то использование стандартного разрешение фотографий (стандартное разрешение PAL) не пройдёт.

PAR у стандарта PAL 576i (то есть 576 строк изображения по вертикале с черезстрочной развёрткой) равен , поэтому на каждый пиксель PAL развёртки приходится 1.09259 обычных, квадратных пикселя. Соответственно для того, чтобы наша фотография полностью покрывала собой видеокадр, её разрешение по горизонтали должно быть .

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

Настройка параметров проекта

Не совсем понял важность этих настроек, но по видимому их надо выставлять в самом начале использования Sony Vagas'а, а не в самый последний момент перед рендерингом.

Важно выбрать правильный Pixel Aspect Ratio, ширину и высоту изображения.

Чересстрочная развёртка (гребёнка на видео, расчёска) и её решение в SonyVegas

Note: не лучший по качеству вариант, но удобен своей быстротой, так как работает в SonyVegas из коробки

Видео с камеры поступает в чересстрочном формате (interlaced), что в принципе не так удобно и хорошо в глобальном смысле, но является необходимость для экономии ресурсов. Даже современное вещание HD идёт со спутника в формате 1080i, то есть с гребёнкой. Многие плееры на компьютере и телевизоры автоматом решают эту проблему. Но конечно всегда приятнее иметь полноценные кадры, а не полукадры.

Решить эту проблему можно прямо в SonyVegas. Для этого надо надо обратить внимание на прогрессивный скан изображения, чтобы не было черезстрочной развёртки и не забыть выбрать метод деинтерлейсинга (deinterlace method). Иначе изображение получается из двух полукадров и в моменты активного движения на экрне появляются горизонтальное расслоение картинки.

Для аудио я поставил частоту дискритизации 48 kHz, а битность 24 бита, т.к. при съёмке на камере в меню тоже выбираю всегда для звука 24 бита. Остальное более детально видно из скриншотов.

Чересстрочная развёртка (гребёнка на видео, расчёска) и её решение в YADIF

Не смотря на то, что из коробки SonyVegas решает проблему гребёнки лучше использовать сторонние библиотеки по deinterlacing видео потока, т.к. метод blendfields не очень хорош.

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

Note: Важно отметить, что у обычного PAL/DV первым идёт Lower field (bottom). Для HD DV всё наоборот.

Для моего случая нашёлся даже встроенный в SoneVegas профиль.

Как действовать с готовым отрендеренным чересстрочным видео посмотрим чуть дальше.

Рендеринг прогрессивного (DeInterlaced) видео потока и его настройки

Меню Render As

После того, как все выполнено, то можно приступать к самому процессу рендеринга. Нажимаем file->render as и приступаем к настройкам.

Первым делом выбираю куда сохранить файл с видео, затем формат сохранения. Тут важно выбрать Avi Без сжатия. Убираем галку Strech video to fill output frame size (do not letterbox), если она стояла уже. Затем нажимаем кнопочку Custom для того, чтобы настроить шаблон рендеринга (несжатое видео - uncompressed) более детально.

Здесь как и везде ранее я ставлю настройки на максимальное качество. Больше об этом не повторяюсь. Затем выбираем формат изображения - PAL DV и соответственно размер кадра, частоту кадров - 25/с, прогрессивную развёртку, и формат видео - Не сжатое (video format - uncompresed). Последние две галки, стоящие у меня очень сомнительны. Потому как альфаканала у меня вроде как и не было даже на вставленных в видеоряд фотографиях (формат jpg). Т.к. я отдельно рендерю и готовлю видео и звук, то галочку Include Audio можно убрать. Иначе посоветовал бы использовать приведённые на картинке параметры.

Рендеринг чересстрочного (Interlaced) видео потока и его настройки

В принципе тут всё практически тоже самое, что и с прогрессивной развёрткой - настраиваем все параметры на максимум, ставим несжатое видео, но делаем поправку на interlaced поток.

Меню Render As

Важно обратить внимание на поле Field Order - Lower field first Остальное не отличается от случая удалениея расчёски прямо в SonyVegas на лету. Посмотреть соответствующие картинки можно ниже.

Рендеринг аудио

Для этой операции можно использовать и предыдущий раздел, убрав только галочку у настроек видео - Include Videio и поставив в аудио настройках - include audio. А потом получившееся несжатое аудио выцепить из avi контейнера и обработать как уже будет угодно. Но я не маньяк по поводу аудио и меня вполне устроили варианты сжатия аудио сразу в Sony Vagas.

Использовать шаблоны без потери качества типа flac я не стал. Попробовал сперва AC-3 studio 192 kbps, но в результате окончательной обработки и соединения видео и аудио в одном контейнере тольк VLC стал нормально проигрывать окончательный результат. Для нормальной работы Media Player Classic потребовалась установка AC3 filter. В общем как итог вернулся к старому доброму mp3.

Выбрал 256 kbps при 48 kHz, затем отказался от Joint Stereo и остался на старом добром Stereo варианте. В итоге получил вполне приемлимое качество результата. Аудио у нас теперь полностью готово, срендерино и сразу же сжато уже. Приступаем к сжатию видео потока.

Сжатие видео потока в Windows

Настройки MeGUI для сжатия видео

Для этого я ипользовал програмку x264 (бесплатную реализацию h264 кодека), а для работы с консольной програмкой - бесплатную графическую оболочку MeGUI.

В новой версии значительно упростился вариант выбора настроек, что сильно облегчает работу не эксперту в этом деле (как я). Для максимального качества и жертвуя скоростью выбраем основную настройку в режим Placebo =). Битрейт для формата PAL мне кажется в 4000 очень даже неплохим и перекрывающим все потребности (тут надо ещё учесть, что это не какой-нибудь там DivX или подобное, а h264). Колличество проходов выбираме 3. Тут главное перед финальным стартом протестировать на коротких роликах (срендерить в Вегасе ролики по 10-20 секунд), т.к. перед третьим проходом полученный после первых двух результат перезаписывается (надо не забыть поставить галочку - не спрашивать об этом больше!).

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

AviSynth

После настройки качества сжатия, я выбираю всегда контейнре mp4, (хотя если верить чётким доводам в обсуждениях на том же формуе rutracker.org (бывший torrents.ru), то mkv лучше. Но тут дело не в этом. После сжатия видео при его просмотре мы имеем вполне разумные умолчальные настройки Display Aspect Ratio как 5:4, т.к. формат кадра у нас , однако не будет забывать что пиксели у нас не квадратные и формат кадра должен быть 4:3. Можно в принципе перед просмотром в том же Media Player Classic поменять настройки вывода изображения (View -> Video Frame -> Override Aspect Ratio), но можно это прописать перед сжатием видео файла ещё в AviSynth скрипте (не совсем уверен, что это правильный метод и возможно он где-то не сработает и надо будет всё же руками при просмотре выставлять Display Aspect Ratio как 4:3).

File: AviSynth_for_MeGUI.avs
AVISource("egypt9.avi")
ConvertToYV12()
global MeGUI_darx = 4
global MeGUI_dary = 3
return last

Объединяем видео и аудио в контейнере mp4

Окно программы Yamb

Для этого я использую очень удобную и простую програмку - Yamb (Yet Another MP4Box UI). Пользоваться программой добно и просто. Весь процесс занимает несколько минут, а на выходе мы получаем готовое видео в контейнере mp4. Всё что требуется это выбрать мультимедиа файлы для слияния в контейнере (это наше mp3 аудио файл и mp4 видео файл). Всё остальное программа делает сама.

Ссылки

А теперь несколько полезных ссылочек: