Статьи 

Paper

Кодирование АМВ в x264+AAC+mp4 с помощью meGUI

Пятница, 24 Август 2007

В этом руководстве мы постараемся рассказать, как правильно подготовить только что сделанный амв-клип к публикации. Точнее, речь пойдёт о финальном кодировании полной версии. Нашей целью является получение видео хорошего качества при объёме около 9 мегабайт на минуту. Для этого видео сжимать будем с помощью кодека x264, а аудио с помощью Nero AAC. Всё это положим в контейнер mp4. Мы не будем касаться тонких настроек, так как, во-первых, и со значениями по умолчанию результат должен быть как минимум удовлетворительным, а во-вторых, чем тоньше настройки, тем они индивидуальней, и подбирать их лучше для каждого отдельного случая.

Нам понадобится:

  • Подключение к Интернету, чтобы скачать или обновить всё необходимое.
  • Файл с самим видеоклипом. Это тот файл, который получается, когда вы экспортируете (рендерите) свой клип из вашего видеоредактора ( Adobe Premiere, Sony Vegas, Adobe After Effects и т.п.). Отрендерить нужно не абы во что, а в Uncompressed (оно же None)или один из беспотерьных (lossless) кодеков (например, Huffyuv). В качестве контейнера использовать, конечно, старый добрый avi. Кстати говоря, если у вашего видео есть чёрные полосы сверху и снизу или по бокам, что встречается реже, то вы в самом начале неправильно задали настройки проекта в вашем видеоредакторе. Такого допускать нельзя, но в крайнем случае, если исправить в редакторе уже не получается, можно добавить в скрипт, который нам ещё предстоит написать, функцию Crop. Также в этом файле не должно быть гребёнки (интерлейса), неправильного соотношения сторон, и любых других дефектов. И ещё. Разрешение вашего видео должно быть кратно 16 по вертикали и горизонтали.
  • Файл со звуком от клипа. Звук тоже сжимать не надо, оставить PCM. Можно включить его в один файл с видео, но в данном руководстве мы предлагаем экспортировать звук в отдельный файл, то есть надо получить wav, в котором будет несжатый звук PCM.

Таким образом, у нас должен быть один видеофайл «avi» размером около 4-5 гигабайт для 4 минутного клипа в разрешении 640x480, если использовался Uncompressed, или 1-1,5 гигабайта, если использовался lossless-кодек и один аудиофайл «wav» размером около 40-50 мегабайт. Размеры приведены для примера, чтобы легче было сориентироваться. В конкретном случае, при другом разрешении и продолжительности видео размеры файлов, конечно же, могут быть другие.

Качать будем:

  1. AviSynth
  2. Кодек Nero AAC
  3. Если у вас не Windows Vista, то надо скачать Microsoft .NET Framework 2.0
  4. meGUI
  5. Всё, что попросит meGUI


  1. Итак, идём на SourceForge, скачиваем и устанавливаем AviSynth (желательно не бету, т.к. их поддержка не гарантируется разработчиками meGUI, а нормальную версию).
  2. Идём на Неро, скачиваем Nero AAC. Распаковываем его, куда нам удобно.

Install MEGui


Запускаем meGUI. Наверняка он скажет, что много чего можно (точнее, нужно) обновить.

Updates Available


Соглашаемся, все галочки оставляем на месте, пусть даже нам не всё понадобится в этот раз. Жмём Update, обновляемся. Это может занять некоторое время.

Update Window


Под конец обновления нас раза три спросят, импортировать ли профайлы для видео- и аудиокодеков. Выберем всё предложенное, нажмём Import.

Profile Importer


Обновление, наконец заканчивается, meGUI просит себя перезапустить. Раз просит, перезапустим. Если сам meGUI по какой-либо причине не перезапустился, запускаем его сами. Видим примерно следующую картину:

MeGUI Main Window

Не так чтобы очень дружелюбно, но нас это не остановит.

Заканчивая подготовительный этап, пойдём в Tools->Settings->Program Paths и в строке neroAacEnc укажем, где он находится. А находится он там, куда мы распаковали то, что скачали с nero.com, в подпапке win32. Жмём Save.

Tools - Settings - Program Paths

В дальнейшем план действий следующий. Мы должны указать исходный видеофайл, выставить настройки для его сжатия, потом добавить задание на его сжатие в очередь. То же самое с аудиофайлом. Потом выполняем эти задания и получаем вдобавок к тому, что имели, один файл со сжатым видео, один файл со сжатым аудио. И, наконец, скажем meGUI, в каком контейнере мы хотим получить результат, добавим и это задание в очередь, а потом выполним его.

Так. Указать исходный видеофайл. Тут есть одна хитрость. meGUI не работает напрямую с видеофайлами, он работает со скриптами AviSynth’a. Благодаря этому можно использовать и все богатые возможности по обработке видео, которые предоставляет AviSynth. Нам богатые возможности пока не нужны, поэтому создадим скрипт попроще. В meGUI есть Tools->AviSynth Script Creator, но он любит падать, поэтому сделаем скрипт сами. Открываем Блокнот, пишем в нём: AVISource("<путь к нашему 4-гигабайтному видеофайлу>")
Например: AVISource("C:megaAMVmegaAMV.avi")

Notepad

Если надо отрезать края, то следует дописать ещё одну строку: Crop(<сколько отрезать слева>,<сколько отрезать сверху>,<сколько отрезать справа>, <сколько отрезать снизу>)
Получится тогда примерно так:
AVISource("C:megaAMVmegaAMV.avi")
Сrop(4,0,-4,0)
Сохраняем написанное как обычный текстовый файл.

Save as...

Теперь переименовываем его из megaAMV.txt в megaAMV.avs.

Rename file

Будут стращать адскими муками – не поддавайтесь, смело жмите Yes!

Rename procedure

Возвращаемся к meGUI. В поле AviSynth Script указываем только что сделанный megaAMV.avs.

MeGui - open AVS file

Выскакивает превью.

MeGUI - Preview Window


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

В основном окне meGUI ставим:
Codec – x264
File format - mp4
Video Profile – HQ-Insane
После этого жмём на кнопку Config.

Video Configuration Dialog

В открывшемся страшно привлекательном окне ставим:
Mode – Automated 3pass
Bitrate – 1000 (Это самый главный параметр, играться в первую очередь надо с ним. Только от него зависит размер сжатого видео на выходе. Обычно для полной версии с разрешением 640x480 хватает битрейта в 1000 kbps. Может и не хватить. Или наоборот оказаться излишним. Чем больше разрешение, тем больше нужен битрейт и тем объёмнее будет результат. Попробуйте сделать версии с разными битрейтами и сравнить, в какой лучше соотношение размер/качество.)
Всё! :) Можно было бы прогуляться по вкладкам, покрутить настройки, но в данном руководстве мы эту возможность проигнорируем, чтобы неподготовленная голова не опухла от нескольких десятков красивых терминов и кучи галочек, отдача от проставления которых может оказаться совершенно незаметной.

Жмём OK. Профайл обновлять, пожалуй, не стоит.

Profile Update

Me GUI - Main Window

Переходим к аудио. Указываем в Audio Input наш 40-меговый wav-файл. После чего меняем в Audio Output имя выходного файла на какое-нибудь другое, например megaAMV-audio.mp4, а то он нам затрёт видеофайл.

MeGUI - Audio Config

Теперь в главном окне meGUI ставим для аудио:
Codec - ND AAC
Container – MP4-AAC
После этого нажимаем Config.

Audio Configuration Dialog

В открывшемся окне выбираем Variable Bitrate при Q = 0,5. Q изменяется ползунком, обычно оптимальные значения находятся где-то от 0,4 до 0,5. Окошко в итоге должно выглядеть примерно как на картине. Жмём ОК.

Profile Update

Профайл и в этот раз обновлять не станем.

Теперь наше главное окно выглядит вот так.

Me GUI - Main Window

Замечательно. Теперь добавим задания в очередь. Жмём сначала на Enqueue разделе видео.

Enqueue Video

Нас предупреждают, что наш большой видеофайл закодирован в неподходящем цветовом пространстве, и предлагают добавить в написанный нами скрипт (в тот самый текстовый файлик megaAMV.avs) преобразование из RGB в YV12.

YV12 - Dialog


Дело в том, что кодек x264 на входе хочет иметь именно такое цветовое пространство, а не такое, какое мы получили на выходе нашего видеоредактора. Вообще-то, у нас, скорее всего, была возможность рендерить сразу в нужном пространстве, но мы не хотели ненароком получить никаких лишних искажений в нашем большом файле, лучше мы сделаем конвертацию сейчас. Жмём Yes. И ОК тоже. :)

Press OK

Теперь в главном окне ждём Enqueue в разделе аудио. Один раз. Кажется, что ничего не произошло, но если всё идёт как надо, это не так. Сейчас проверим.

Enqueue Audio

Открываем вкладку Queue. Здесь мы видим очередь, в которую только что добавляли задания. Заданий должно быть 4 штуки. Почему четыре, если кнопки нажимали всего две и по одному разу? Потому что в настройках видеокодека мы выбрали автоматическое трёхпроходное кодирование. По одному заданию на каждый проход. И ещё одно задание для аудио.
Если всё так, даём Start.

Queue Window

Началось кодирование. Это занимает ощутимое количество времени. ;-)

Coding Status

После второго прохода будут спрашивать, перезаписать ли существующий файл. Да, перезаписать.

File Already Exsists! Press Replace

После окончания кодирования, когда напротив каждого задания появится статус “done”,

Queue Done

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

2 New Files

Осталось положить их в один контейнер.
Возвращаемся в meGUI, выбираем в меню Tools->Muxer->MP4 Muxer.
Ещё одно окно! :)
Выбираем в Video Input наш сжатый видеофайл megaAMV.mp4,
в Audio Input - наш сжатый аудиофайл megaAMV.mp4,
в Muxed Output пишем, как будет называться и где лежать наш самый конечный файл с готовым клипом.
Жмём Queue.

MUX Window

Видим, что в очереди появилось ещё одно задание. Очень хорошо. Жмём Start!

Queue с пятым заданием

Вылетает снова окошечко с прогрессбаром, но надолго не задерживается.
Все работы вновь выполнены,

Queue Done

а в нашей рабочей папке нас ждёт… готовый клип!

Клип закодирован успешно

Свои предложения и поправки оставляйте в комментариях.

Автор описания: Lirinis


Прочитана: 91083 раза
Распечатать

Комментарии (13)
Вы не авторизованы! Комментарии могут оставлять только зарегистрированные и авторизованные пользователи!

-5-   User profile
  07.02.2012 16:12
спасибо за ценный гайд )
viktor790   User profile
  19.11.2011 01:03
Default Avatar
отличная программа! мощная и быстрая, мне понравилась. сделал в ней видеоклип с двумя звуковыми дорожками.
Error_0001   User profile
  13.08.2010 14:38
Наконец-то меня хоть кто-нибудь чему-нибудь научит!
sokrat   User profile
  09.08.2009 00:45
последняя версия 0.3.1. Интерфейс немного поменялся, для порядку обновить бы статью.
Профиль "Unrestricted 2pass Insane" взамен указанного
и "Nero AAC: NDAAC-HE-MultiChannel-128kbps" вместо "ND AAC" + "MP4-AAC" пойдет, если их донастроить так как показано на скринах закладок ниже пойдет?
А то в новой версии профилей с указанным названием - нету.
При использовании кодеков сжатия без потерь в AVS нужно использовать DirectShowSource вместо AVISource.
Или у меня что-то не доставлено и поэтому ругается на неспособность распознать исходник (.avi)?
Uchiha Robert   User profile
  02.08.2009 12:47
слишком тяжелая для понимания схема конвертирования
я тут попробавал с этой прогой разобраться и впал в ступор
легче уж удавиться, хорошо что AMVsimple существует.
ManoD   User profile
  30.07.2009 16:22
тут берется расширение 640х480 ? где поменять настройки на 720х480 ? или оно будет делать это в автомате ?
Turbo   User profile  Video channel
  01.07.2009 11:49
Xiaoyu, заменил ссылку на рабочую.
Xiaoyu   User profile
  01.07.2009 11:19
я пытаюсь через ссылку на этой странице скачать Nero AAC, не получается, пишет нет такой странице :((что делать?
ToniFlex   User profile
  10.11.2008 15:07
Всё они дружелюбны! Это x264 c avi не в ладах. Качество теряет. А с mp4 он отличнодружит! Зайди на МН и посмотри есть ли х264 в mp4 с плохим качеством! Везде отличное!
Guk   User profile
  19.04.2008 21:58
В Video profile Config ,почему выбирать Mode – Automated 3pass ?
он три раза рендерит один и тот же фаил, чтом меняется с каждым разом ?
+ былбы очень благодарен еслибы в обьяснение добавили какими настройками делать привью
Endymion   User profile
  28.08.2007 13:47
а в чем проявляется недружелюбность?

Если посмотреть со стороны обычного юзверя, который пользуется паками.
-для того, чтобы проиграть vp7 - нужен установленный декодер. он есть а Клайте, но его нет в CCCР
-для того, чтобы проиграть h264/AVC - тоже нужен декодер, который есть в обоих кодек паках

Конечно есть и другие паки, но это одни из самых популярных. А если бы я был обычным зрителем, у меня бы на компе вп7 вообще небыло, потому что я бы пользовался одним FFDShow+CoreAVC
Turbo   User profile  Video channel
  25.08.2007 15:14
Ну VP7 не самый популярный кодек, а x264 даже некоторые DVD плееры берут.
Gaurry   User profile
  24.08.2007 20:10
на самом деле, лучше бы учить кодировать через vp7 и в avi. уж слишком x264 и mp4 недружелюбны.

 Интересное на CreaSpace