motofan logo
3 страниц V  1 2 3 >        
> 

Конвертирование Видео Для Просмотра На Телефоне, С помощью свободного ПО

blackbox
сообщение 28.6.2006, 18:44


Control Freak
******

Группа: Разработчики
Сообщений: 838
Регистрация: 23.9.2005
Пользователь №: 52 431
Модель телефона: iPhone
Прошивка: 2.2.1

Рейтинг: 627.5



Представляю способ качественного конвертирования видео в MPEG4 со звуком AAC с использованием open source программ.

Скачать мануал с картинками в формате CHM для просмотра в оффлайне:
Прикрепленный файл MPEG4_AAC_coding.zip   ( 199.38 килобайт ) Кол-во скачиваний: 2275



Шаг 0.

Перед тем, как что-либо делать, убеждаемся в наличии следующего:
  1. VirtualDub (версия 1.6.14 или выше)
  2. XviD (версия 1.2 beta или выше)
  3. FAAC (версия 1.24.1 или выше)
  4. Yamb (версия 1.5 или выше)
  5. Понимание терминов: кодек, контейнер, битрейт, частота дискретизации, ресемплирование, мультиплексирование, командная строка
  6. Прямые руки
При отсутствии чего-либо из пунктов 1-4 качаем недостающий софт по приведенным ссылкам. Если не хватает пункта 5 - в Google. Если проблемы с последним пунктом - вы попали не по адресу. Если вы находитесь в танке, то рекомендую из него вылезти, прежде чем приступать к изучению данной инструкции.


Шаг 1.

1.1. Запускаем VirtualDub, открываем исходный файл.
1.2. В меню Audio выбираем Full processing mode - в этом режиме становятся доступны опции ресемплирования и изменения числа каналов (моно/стерео).
1.3. Открываем окно конвертера: Audio > Conversion...
1.4. Рекомендуемые настройки:
Прикрепленное изображение
Sampling rate: 22050Hz, High quality
Precision: No change (16-bit)
Channels: Mono
1.5. Экспортируем звуковую дорожку: File > Save WAV...
1.6. Поскольку звук нам больше не нужен, выбираем Audio > No audio.


Шаг 2.

2.1. Сжимаем WAV файл, полученный на предыдущем шаге, с помощью энкодера FAAC. Эта программа похожа на LAME и работает в командной строке.
Запускаем процесс командой
faac -w [-b bitrate] sound.wav
Прикрепленное изображение
Если не указывать битрейт, FAAC определит его автоматически. Для звука 22050Hz mono это будет примерно 48 кбит/с, однако если в исходном файле преобладает речь, а не музыка, битрейт можно спокойно понизить до 32-24 кбит/с. Имейте ввиду, что речь идет о среднем, а не постоянном битрейте, поэтому результат может немного отличаться от заданного значения.
2.2. На выходе получаем файл sound.m4a - это AAC в контейнере MP4 (тот же формат, который использует iTunes).
Не мешает прослушать полученный файл и убедиться в отсутствии явных звуковых артефактов - при наличии оных повторяем п.2.1 с бóльшим битрейтом до достижения желаемого результата.


Шаг 3.

3.1. Возвращаемся в VirtualDub и переходим к самому ответственному этапу - кодированию видео.
Вначале нужно определить разрешение исходного видео и выяснить, имеются ли у него черные бордюры по бокам. Если таковые имеются, их желательно обрезать, иначе на кодирование контрастной границы кадр-бордюр уйдет много места, что приведет к ухудшению качества.
3.2. Выбираем Filters в меню Video, нажимаем кнопку Add... и добавляем фильтр resize (internal).
3.3. Если не требуется обрезка бордюров, переходим к п.3.5; если обрезка нужна - просто нажимаем OK, временно соглашаясь с настройками по умолчанию.
3.4. В окне фильтров нажимаем Cropping...
Прикрепленное изображение
Ползунком перемотки находим подходящий кадр с достаточно светлыми краями, чтобы было легко определить края кадра. Затем обрезаем бордюры, перетаскивая границы видео окна (можно также пользоваться полями X1, X2, Y1, Y2 offset).
Жмем OK и возвращаемся в окно фильтров.
3.5. Теперь необходимо рассчитать разрешение выходного файла (а именно высоту) с целью соблюдения пропорций.
Для этого вооружаемся калькулятором (или ручкой и бумагой для любителей считать в столбик).
Предположим, исходное видео имело разрешение 320*240. В результате мы хотим получить разрешение 176*x.
Из пропорции 320 / 240 = 176 / x находим x = 176 * 240 / 320 = 132.
Если проводилась обрезка бордюров, то подставляем разрешение после обрезки.
Полученную высоту x округляем до ближайшего значения, кратного 4. Например, вместо 99 используем 100.
3.6. Нажимаем Configure... и вводим требуемые значения высоты и ширины кадра.
Прикрепленное изображение
В поле Filter mode выбираем алгоритм ресемплинга.
Nearest neighbor - самый быстрый и тупой алгоритм. Не рекомендуется, поскольку приводит к появлению "ступенек" вместо диагональных линий.
Bilinear - относительно быстрый алгоритм. Дает побочный эффект в виде небольшого "размазывания" картинки, что, как ни парадоксально, может уменьшить количество артефактов сжатия в конечном файле (мягкие контуры требуют меньшего битрейта).
Lanczos3 - самый качественный (и медленный) алгоритм.
Кнопкой Show preview можно включить предпросмотр и оценить качество ресемплинга.
3.7. Жмем OK, OK и возвращаемся в главное окно VirtualDub.


Шаг 4.

4.1. Настраиваем частоту кадров. Как известно, рекомендуемая частота кадров для E398 и E1 - 15 кадр/с.
Однако, если кодируется ролик без звука, то телефон способен воспроизводить и 30 кадров в секунду. Если аудио в формате AMR, то в некоторых случаях максимальная частота может быть до 25 кадр/с.
Если же звук в формате AAC (как предполагается в этой инструкции), то желательно ограничиться 15 кадрами.
В VirtualDub жмем Video > Frame Rate..., выбираем опцию Convert to fps и в соседнем поле вводим значение желаемой частоты кадров.
Прикрепленное изображение
Внимание, для тех кто по-прежнему сидит в танке: выбирать нужно именно опцию Convert to fps, находящуюся в группе Frame rate conversion, а не Change to __ frames per second в группе Source rate adjustment.
Если выбрать второе, то изменится частота кадров, но их количество останется прежним. Это приведет к эффекту замедленного движения и рассинхронизации аудио и видео ряда (звук будет опережать изображение).
4.2. Жмем OK.


Шаг 5.

5.1. Осталось только настроить видео кодек.
Идем в Video > Compression... и выбираем "XviD MPEG-4 Codec". В списке их будет два - нужно выбрать тот, у которого FOURCC = xvid.
Прикрепленное изображение
Для конфигурации кодека жмем кнопку Configure (логично, да?).
Прикрепленное изображение
5.2. В первый раз не мешает нажать Load Defaults, чтобы вернуть все настройки по умолчанию.
После этого устанавливаем следующие параметры:
Profile @ Level: Simple @ L1
Encoding type: Single pass
5.3. Теперь разберемся с битрейтом. XviD при кодировании в один проход (single pass) имеет два режима контроля битрейта: Target quantizer (кодирование с постоянным качеством) и Target bitrate (кодирование со средним битрейтом). Эти режимы переключаются соответствующей кнопкой.
Выбор оптимального варианта зависит от исходного видео. Target quantizer предпочтительнее, так как дает постоянное качество на протяжении всего видео, однако на особо динамичных сценах битрейт может превышать возможности телефона. В этих случаях можно увеличить значение квантизатора, установить алгоритм ресемплинга bilinear (см. п.3.6.), или использовать режим Target bitrate.
Для примера, трейлер Ледникового Периода 2 я кодировал с q=6.0.
5.4. Перед тем как закрыть настройки XviD, можно нажать Other Options... и отключить опцию Display encoding status - тогда во время кодирования не будет вылазить окно с дополнительной информацией.
Прикрепленное изображение
5.5. OK, OK, OK.
5.6. Начинаем собственно процесс кодирования.
В меню File жмем Save as AVI..., выбираем файл и ждем окончания процесса.


Шаг 6.

6.1. Если у вас хватило сил дочитать до этого места, можете радоваться - основная работа позади, осталось только мультиплексирование видео и аудио в контейнер MP4.
Эту операцию будем делать с помощью YAMB (Yet Another Mp4Box UI) - это графический интерфейс к консольной программе mp4box.
Прикрепленное изображение
6.2. Кнопкой Add добавляем в список потоков видео файл (.avi), а затем аудио (.m4a).
6.3. Нажимаем Mux и получаем готовый .mp4 файл.
6.4. Заливаем его в телефон и смотрим!



[OFF]P.S. Несмотря на кажущуюся объемность инструкции, на самом деле все ручные операции занимают всего несколько минут.

P.P.S. Этот способ пригоден как для коротких роликов, так и для полнометражных фильмов. Я успешно кодировал двухчасовые фильмы, которые проигрывались на телефоне без притормаживаний.

P.P.P.S. Загрузка процессора телефона зависит от трех величин: частоты кадров, битрейта видео и битрейта аудио. Если процессор при просмотре работает на пределе своих возможностей, то нажатия клавиш будут отрабатываться со значительным запаздыванием.

P.P.P.P.S. Archy на основе этой инструкции написал скрипт, который автоматизирует большинство перечисленных операций.[/OFF]
Прикрепленный файл MPEG4_AAC_coding.zip   ( 199.38 килобайт ) Кол-во скачиваний: 2275
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
AlexKooper
сообщение 7.7.2006, 11:42


Авторитет
********

Группа: Почетные МотоФаны
Сообщений: 2 838
Регистрация: 27.7.2005
Из: Йошкар-Ола
Пользователь №: 47 140
Модель телефона: E398
Прошивка: AlexKooper mod v.47

Рейтинг: 1337



Хороший фак. Вот бы его приложить виде архива *.doс или *.mht или *.chm или *.htm+*.files/*.jpg.
Чтоб скачать себе на комп и там смотреть в развернутом виде рисунки на своем месте.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
blackbox
сообщение 7.7.2006, 14:37


Control Freak
******

Группа: Разработчики
Сообщений: 838
Регистрация: 23.9.2005
Пользователь №: 52 431
Модель телефона: iPhone
Прошивка: 2.2.1

Рейтинг: 627.5



AlexKooper,
Добавил архив с CHM.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DMC
сообщение 16.8.2006, 13:39


Новичок
*

Группа: Пользователи
Сообщений: 2
Регистрация: 16.8.2006
Пользователь №: 95 268
Модель телефона: E398
Прошивка: R 373 G 0E.30.48R

Рейтинг: 0



Я так и не понял насчёт FAAC обьесни поподробней , я делал как у тебя в инструкции но программа так и не конвертировала в m4a , тогда я наводил сохранённый звук на FАAC.exe и он конвертировал его в ACC , ну я подумал что так и надо и продолжал работать , после того как у меня на рабочем столе оказались два файла видео в формате AVi и звук в формате ACC я перешел к программе Yamb , программа всё сделала быстро и вот у меня оказалось видео в формате mp4 тут можно и обрадыватся НО на компе видео идёт со звуком а вот в мобиле звука НЕТ , ВООБЩЕМ ПОМОГИ !
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
f0f
сообщение 16.8.2006, 14:28


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 1.12.2005
Пользователь №: 60 407
Модель телефона: .

Рейтинг: 8



DMC,
у тебя наверно R372? Там нет поддержки ААС
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
DMC
сообщение 16.8.2006, 14:32


Новичок
*

Группа: Пользователи
Сообщений: 2
Регистрация: 16.8.2006
Пользователь №: 95 268
Модель телефона: E398
Прошивка: R 373 G 0E.30.48R

Рейтинг: 0



Цитата(f0f @ Среда, 16 Августа 2006, 18:28)
DMC,
у тебя наверно R372? Там нет поддержки ААС
*



R373G0E.30.48R
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
blackbox
сообщение 17.8.2006, 19:59


Control Freak
******

Группа: Разработчики
Сообщений: 838
Регистрация: 23.9.2005
Пользователь №: 52 431
Модель телефона: iPhone
Прошивка: 2.2.1

Рейтинг: 627.5



DMC,
Файл с расширением .aac - в контейнере MPEG2. Yamb не поддерживает такие файлы.
Нужно использовать контейнер MPEG4 (расширение m4a).

Делай, как написано в мануале.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
aligatro
сообщение 17.8.2006, 22:11


Мотоблуджекер
******

Группа: Пользователи
Сообщений: 849
Регистрация: 14.4.2005
Пользователь №: 40 684
Модель телефона: Нокиа

Рейтинг: 155



blackbox,
Очень хороший мануал. :)
Вот переделал в два формата(PDF и Doc)
правда слегка коряво. :(
Прикрепленный файл Конвертирова.doc.rar   ( 202.55 килобайт ) Кол-во скачиваний: 645
Прикрепленный файл Конвертирова.pdf.rar   ( 285.37 килобайт ) Кол-во скачиваний: 449
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
nazar
сообщение 3.9.2006, 18:25


Новичок
*

Группа: Пользователи
Сообщений: 9
Регистрация: 14.2.2006
Из: Архангельск
Пользователь №: 70 363
Модель телефона: V360(08.А0)
Прошивка: mpxV360

Рейтинг: 0



blackbox, Как уже писал DMC не понятно в чём проблема. У меня лично тоже самое с файлом wav. А вообще то окно ком.строки при запуске FAAC должно открываться или нет? У меня появляется и тут же закрывается. Пробовал открыть окно ком.строки набираю как в мануале С:\Motorola\faac -w -b 32 sound.wav программа не видит файла wav, хотя он лежит в этой же папке. WinXP SP2
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
SOle
сообщение 6.9.2006, 17:36


Новичок
*

Группа: Пользователи
Сообщений: 2
Регистрация: 13.12.2005
Пользователь №: 61 954
Модель телефона: V635
Прошивка: MOTOInmovement_01

Рейтинг: 0



Цитата(DMC @ Среда, 16 Августа 2006, 17:39)
Я так и не понял насчёт FAAC обьесни поподробней , я делал как у тебя в инструкции но программа так и не конвертировала в m4a , тогда я наводил сохранённый звук на FАAC.exe и он конвертировал его в ACC , ну я подумал что так и надо и продолжал работать , после того как у меня на рабочем столе оказались два файла видео в формате AVi и звук в формате ACC я перешел к программе Yamb , программа всё сделала быстро и вот у меня оказалось видео в формате mp4 тут можно и обрадыватся НО на компе видео идёт со звуком а вот в мобиле звука НЕТ , ВООБЩЕМ ПОМОГИ !
*


Такая же проблемка.. Тел не воспроизводит звук.. :( Отличие от описанной ситуации - файл m4a был успешно создан и проигрывается на компе.. Полученное видео (mp4) на компе идет также со звуком. :(
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Конвертирование Видео Для Просмотра На Телефоне, С помощью свободного ПО · Видео. Video · Forum
 

3 страниц V  1 2 3 >
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 28.11.2021, 2:24

Форум живёт: