-Я - фотограф

 -Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в gifin

 -Интересы

комрунет

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 23.10.2006
Записей:
Комментариев:
Написано: 4354


Кодируем в h264, шаг за шагом. (MeGUI, AVISynth, h264, mpeg AVC)

Воскресенье, 02 Марта 2008 г. 23:28 + в цитатник
Небольшое отступление или зачем нужен h264.


Видеосъемка мероприятий в Москве

Визуально качество потока 800-1000кб/с вполне хватает для выкладывания в инете.
Качество визуально кажется мне лучше чем DivX 6.
x264 на сколько я помню является развитием стандарта mpeg (это и не плюс и не минус).

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

Идеология кодирования через AviSynth и meGUI мне понравилась, создаем однажды файл с настройками, и потом только меняем названия файлов.

Видео файл в формате DV 1.avi (как кодировать mpeg допишу позже)
Звуковая дорожка к нему 1.wav

1. Первым делом нам надо получить файл avi, с внутренним форматом dv с нашей монтажки что бы пережатий было как можно меньше.
2. И подготовить WAV, тоже желательно без сжатия.
3. Затем что бы могли его открыть надо поставить Direct Show кодек ДВ, писали мы скорее всего используя внутренний кодек, а что бы глюков не было ставим отсюда http://www.nodevice.ru/codecs/video-codecs/89.html Или ищем, DV codec, Panasonic DV codec и тд.
4. Далее ставим AviSynth 2.5 скачать можно отсюда http://www.avisynth.org/
5. Далее идем на сайт http://sourceforge.net/projects/megui и качаем, если попасть не можете ищем альтернативные источники на данный момент версия у меня MeGUI 0.2.6.1044

Итак подготовительную работы мы выполнили, наверно работать можно и лучше, быстрее, правильнее, веселее (нужное подчеркнуть), я описываю как мне удобно. Кодируя в mpeg я использую CCE encoder, но это уже отдельный разговор

В простом текстовом редакторе создаем файл 1.avs
Внутрь добавляем строчки

LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\dgbob.dll")
AviSource("D:\retro2.avi")
#deinterlace
DGBob(0,0)
#crop
LanczosResize(320,240) # Lanczos (Sharp)


Итак быстренько разберем что значит каждая строка
1 - LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\dgbob.dll")
2 - AviSource("D:\retro2.avi")
3 - #deinterlace
4 - DGBob(0,0)
5 - #crop
6 - LanczosResize(320,240) # Lanczos (Sharp)


1. Это мы загружаем в ависинт библиотеку деинтерлейса (через строчное видео конвертируем в прогрессив), соответственно библиотека должна быть совместимая с установленной версией ависинта.
2. Выбираем исходный файл
3. 3 и 5 строка, это комментарии
4. Соответственно, используем фильтр загруженный в первой строчке (параметры смотрите в хелпе), фильтры есть и лучше, но начинается геморрой с преобразованием YUY YUY2 RGB. Как с ним справиться напишу как разберусь сам. А качество этого фильтра для инета вполне.
6. Масштабирование, грузить картинку 720x576 смысла нет, во время масштабирования поднимаем резкость, что бы не замыливалась (расплывалась картинка).

И так запускаем программку meGUI.

Маленькое отвлечении нажав Ctrl+B или зайдя через меню Tools->Bitrate Calculator, запускается как вы уже поняли из названия простой калькулятор видео-потока, задаем продолжительность, частоту кадров, или задав количество кадров в общем. Мы можем выбрать считать занимаемое место по потоку (битрейту) или среднюю скорость потока чтобы уместить в заданный размер.

Внешний вид показан на картинке внизу.

 Кодирование в megui - input



1) Загрузим созданный нами скрипт. Нажмем Ctrl+O или кнопку справа от надписи AviSynt Script Найдем и выберем созданный нами ранее файл 1.avs, нажмем открыть.
2) Далее выберем кодек x264 видео профайл HQ-Slowest
3) Выберем настройки кодированием скопом))) HQ-Slowest
4) Спустимся ниже и укажем путь к звуковой дорожке 1.wav
5) Средний битрейт для звука поставим 128
6) Кодек укажем lame mp3 можно и другой, но вероятность воспроизведения mp3 я считаю будет больше.
7) Жмем кнопу AutoEncode

 Кодирование в megui - Automatic Encoding


8) Указываем Container AVI (тип результирующего файла)
9) Выходной файл
10) Указываем размер или битрейт, я для кодирования на ли.ру указываю File Size 75 MB всегда пролезает и максимальное качество.
11) Жмем кнопку Queue (появляется маленькое окошко с кнопкой Ок, жмем ее)
12) Переходим на закладку Queue появляется окно следующего вида


 Кодирование в megui - queue


И жмем старт, ждем-с минут так дцать…
Вуаля, мы получили файл в прогрессиве в внутренним кодеком h264 и звуком в формате mp3

ps. Если у кого возникнут вопросы спрашивайте, заметите очепятки пишите.
А если вам помогла данная статья поставте на нее ссылку, из своего дневника или сайта, мне будет приятно и буду писать еще.
Метки:  

Процитировано 1 раз

gifin   обратиться по имени Пятница, 14 Марта 2008 г. 13:55 (ссылка)
Q>Что такое h264 ?
Процитирую википедию.
H.264, MPEG-4 Part 10, или AVC (Advanced Video Coding) — стандарт сжатия видео, предназначенный для достижения высокой степени сжатия видеопотока при сохранении высокого качества.
если кратко то один из кодеков, типа DivX, Xvid QuickTime и тп.

Q>Разве "кодирование" и "сжатие" - это одно и тоже?
эээ... ну это вопрос терминологии,
Нам надо получить из формата DV (это то что с кассет сливаем) формат Mpeg 2 (то что на DVD).
исходных данных 12гб/час получаем 4 гб/час (битрейт и тонкости опускаем)

Итого мы сменили формат, то есть закодировали другим кодеком (КОДИРОВАНИЕ)
и уменьшили размер в три раза (СЖАЛИ).

кодирование без сжатия и наоборот, обычно не используются (хотя нет используется довольно часто, но пока об этом рано)



Q>Рябь же появляется из-за того, что я уменьшаю объем, а не перевожу из одного формата в другой, наверно... или... ?

При просмотре исходного материала, ты тоже можешь увидеть эти деффекты изображения, но смотреть надо правильным плеером который не производит деинтерлейс в реальном времени.
Рябь у тебя появляется из-за того, что видеокамера у тебя снимает через строчное видео, а монитор показывает прогрессив и соответственно два кадра складываются, и если в кадре было движение то ты увидишь эту рябь (гребенку, расческу).
и как ответ на твой вопрос, нет не зависит от того сжимаешь ты или нет.
Ответить С цитатой В цитатник
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку