В началоСоздание DVD → Кодирование видео в формате DVD
Gentoo-doc HOME Пред.: Создание DVDВ началоУровень выше: Создание DVDСлед.: Создание структуры директорий (authoring) с использованием dvdauthor

2. Кодирование видео в формате DVD

2.1. Использование transcode для декодирования видео произвольного формата и кодирования его в формат MPEG2, совместимый с DVD

Хотелось бы заметить, что если вы не любители программ с кучей непонятных опций, то вам следует попробовать программу dvdrip, которая является неплохим фронтендом для transcode с понятным интерфейсом.

Transcode, пожалуй, лучший инструмент для нашей задачи. Вам, возможно, придётся заглянуть в man страницу по transcode, чтобы понять те команды, которые используются здесь. Также вам могут пригодиться и другие инструменты для декодирования и кодирования вашего формата, так что не поленитесь заглянуть и в их man странички. Здесь будет приведен пример того, как конвертировать стандартный divx файл в широэкранный формат (без черных полос сверху и снизу). Затем мы конвертируем все это в формат letterbox 1.5:1. Зачем, спросите вы. Затем, что изначально широкоэкранный формат имеет соотношение 1.73 (16:9) с разрешением 720x416. DVD в свою очередь поддерживает размеры изображения только 720x480, 704x480, 352x480 и 352x240 (возможно это не все). Поэтому самое простое и качественное решение здесь — это привести наше видео к формату 720x480 (соотношение 1.5), добавив по 32 черных полоски сверху и снизу к изображению.

transcode -i test-divx.avi -V -y mpeg -F d -Y -32,0,-32,0 -E 44100 -b 128 -o showgirls-dvd

Отрицательные значения для параметра -Y сообщают transcode о том, чтобы добавить нужное количество черных полосок сверху и снизу. Если использовать положительные значения, то полоски будут соответственно убираться сверху и снизу. Часто вам может попасться видео уже в формате 720x480 или еще каком-то "хорошем" формате, тогда не нужно изменять его размеры, то есть просто не используйте опцию -Y.

Here's what some of those command line arguments mean: Вот, что означают остальные опции:

-V     использовать YV12/I420 в качестве встроенного видео кодека [выключено изначально]

       Это, как правило, намного быстрее чем RGB процессинг, но

       некоторые импортированные модули могут не поддерживать этот формат.

       Используйте эту опцию всегда, когда это возможно.

-y vmod[,amod]

       видео[,аудио] модули для эксопртирования [отсутствуют изначально].  

       Если опустить, то transcode не будет кодировать никаким модулем.

       Полностью установленный transcode имеет следующие модули:

 <вырезано>

 mpeg — (видео) MPEG 1/2 | (аудио) MPEG 1 Layer II

     nasm должен быть доступен во время компиляции. Этот модуль не имеет

     зависимостей.  Этот модуль хорошо поддерживается.

         Инетрфейс к библиотеке bbmpeg (включена в transcode). Может

         кодировать в mpeg1, VCD, SVCD, MPEG2 и DVD видео форматы.

         Кодированое видео является отдельным файлом, который следует объединить

         с соответствующим аудио файлом после кодирования.

-F codec_string

       параметры енкодера [зависят от модуля].

       Параметр -F имеет разные значения для разных модулей.

<вырезано>

        -y mpeg:

          Синтаксис: -F "<base-profile>[,<resizer-mode>[,user-profile]]"

            <base-profile> может быть одним из:

              '1' = MPEG 1 (по умолчанию)

              'b' = big MPEG 1 (экспериментальный)

              'v' = VCD

              's' = SVCD

              '2' = MPEG2

              'd' = DVD совместимый

            <resizer-mode> может быть одним из:

               0 = выключить resizer (по умолчанию)

               1 = 352x288

               2 = 480x480

               3 = 480x576

               4 = 352x240

            <user-profile> Имя файла профиля. Вы можете

        можно указать как абсолютный путь так и относительный

        (относительно директории из которой запускаете transcode).

-Y top[,left[,bottom[,right]]]

       определить (для енкодера) рамку по котрой будет обрезано изображение.

       Отрицаельные значения будут добавлять рамку [отключено изначально].

-E r[,b[,c]]

       частота сэмплирования выходного аудио [Гц], битов на сэмпл и каналы

       [входящие данные]. Опция "-J resample" должна быть передана

       не совместимым с ресэмплингом.

-B n[,m[,M]]

       изменить размеры до высота-n*M горизонтальных полосок

       [,ширина-m*M] вертикальных полосок [отключено изначально,32].

       M должно иметь одно из значений 8, 16 или 32. Неважно какое M

       вы используете. Также взгляниет на флаг fast опции -Z если

       не хотите считать n и m вручную.

-b b[,v,[q,[m]]]

       битрейт аудио енкодера кБит/с [,vbr[,quality[,mode]]] [128,0,5,0]

       Параметр mode оперделяет какие модули будет использовать lame

       при кодировании.  Возможные значения для mode:

          0    Joint Stereo (по умолчанию)

          1    Full stereo

          2    Mono

-o file

       имя выходного файла, по умолчанию [/dev/null].

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

transcode -i showgirls-divx.avi -V -y mpeg -F d -B 1,1,8 -E 44100 -b 128 -o showgirls-dvd

Также обратитесь к опции -X для того, чтобы увеличить размеры видео.

2.2. Использование tcmplex для объединения аудио и видео данных

Transcode должен был создать *.m2v (mpeg-2 видео) и *.mpa (аудио) файлы в текущей директории. Теперь мы их объединим так:

tcmplex -o showgirls-dvd.vob -i showgirls-dvd.m2v -p showgirls-dvd.mpa -m d

2.3. Использование kino (альтернатива transcode+tcmplex)

Kino используется для получения видео с dv камер. Эта программа имеет возможности простейшего видеомонтажа (вырезать сцену, вставить, поменять местами). Она имеет удобный интерфейс для захвата видео (хотя вы можете использовать dvgrab для этой цели). Она использует фомат qt4linux mov по умолчанию для захвата.

Для более продвинутого монтажа cinelerra, пожалуй, пока единственный выбор под Linux. Это достаточно мощная, но достаточно долгая в освоении и пока что нестабильная (сохраняйтесь как можно чаще) программа. Вы можете просто импортировать тот же .mov полученный с помощью kino (dvgrab) в cinelerra (на самом деле, она падает при работе с большинством других форматов). Затем вы можете использовать cinelerra, чтобы привести оконченный фильм обратно к формату mov.

Как только вы наконец получите тот .mov файл, какой вы хотели, загрузите его опять в kino и перейдите в закладку export. Здесь вы уже можете экспортировать video в формат vcd, svcd или dvd. Формат DVD потребует достаточно много времени для конвертирования (желателен мощный процессор).

2.4. Использование replex (подготовка DVB записей с цифрового телевидения (Digital Television))

"Эти инструкции были испробованы на записях формата DVB-C, сделанных в Финляндии"

Примечание: пожалуй, для России эта глава абсолютно бесполезна, но если есть большое желание, то я переведу и её. Мало ли, кто где живет ;)

Digital television streams are transmitted as MPEG2-TS in which the TS stands for Transport Stream. This means that extra information, such as multiple audio streams, could be transferred along with the actual video. Quite fortunately, the video stream is already suitable for DVD without re-encoding which is both time consuming and stupid as it lowers the quality. Enter replex. First use czap for tuning into some channel:

czap -r -n 3

This tunes the DVB card to channel number 3. Now, record some data by typing:

cat /dev/dvb/adapter0/dvr0 > stream.ts

This simply writes raw data from the first tuner card into a file. After awhile press CTRL-C to stop recording.

Now, you should have a blob of data which could be played with e.g. mplayer. Next, you should use replex to transform TS format suitable for DVD. Enter following command:

replex -k -i TS -t DVD -o stream.dvd stream.ts

This command ignores possible errors in original stream (-k), assumes that input file is in TS format (-i TS), outputs format suitable for DVD (-t DVD), writes to a file called stream.dvd (-o stream.dvd) and reads its input from the file entered as a last parameter (stream.ts).

After a moment a file called stream.dvd should appear in the same directory where above command was entered. Now just follow the instructions from the next chapter onwards to burn this baby on a DVD.

Пред.: Создание DVDВ началоУровень выше: Создание DVDСлед.: Создание структуры директорий (authoring) с использованием dvdauthor
В началоСоздание DVD → Кодирование видео в формате DVD