Реклама на сайте Advertise with us

Конвертирование контента из DV/HDV в mp4 при помощи ffmpeg ?

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 16.02.01
Сообщения: 443
Рейтинг: 269

Ссылка на сообщениеДобавлено: 22/06/10 в 18:02       Ответить с цитатойцитата 

Если есть опыт работы с ffmpeg.
Может кто-нибудь поделится параметрами кодирования для ffmpeg по сабжу с наилучшим по вашему мнению ратио качество/размер ?
Заранее благодарен!

0
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 22/06/10 в 19:04       Ответить с цитатойцитата 

Смотря что ты хочешь получить на выходе, какого качества. Тебе под бытовой плеер какой-нибудь, или на тубе в плеере играть?

0
 



С нами с 21.10.04
Сообщения: 19
Рейтинг: 19

Ссылка на сообщениеДобавлено: 22/06/10 в 19:56       Ответить с цитатойцитата 

Нам надо получить:

1. Видео для мемберки (например с width=720)
2. Видео для embedded promo video(например с width=640). Тут качество может быть похуже и размер файла поменьше.
3. Всякую экзотику, типа под iPad/iPhone и прочие АЙ устройства. Ну с этими установками, вроде бы, проще.

4
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 22/06/10 в 20:23       Ответить с цитатойцитата 

Последний - чем проще-то? Там все так же сложно, как и везде.

Кодирование в h.264 напоминает чОрную магию, так что разбираться самим все равно сложно будет, рецепта одного нет. В общем случае вот тебе строка для x264 части кодека, которая для веба, пожалуй, наиболее оптимальна.. в общем случае.

Код:
-vcodec libx264 -threads 0 -r 25 -g 50 -vpre normal -crf 34 -refs 6 -me_method hex -subq 4 -trellis 0 -partitions +parti8x8+parti4x4-partp8x8+partp4x4+partb8x8 -flags2 +dct8x8+wpred+bpyramid+mixed_refs+fastpskip -bf 16 -directpred auto


С размерами уже сами разберетесь, там все по мануалу четко понятно. Что точно нужно будет менять - это параметр -crf 34. Чем он ниже - тем лучше качество. Это, собственно, основной параметр, который качество и определяет. 16 - это на уровне HD 1080, 34 - это вот невысокого качества для веба. У вас будет где-то в диапазонах 26-34, в зависимости от разрешения. Остальные - тьюнинг баланса скорости кодирования vs размер файла. Их вам, возможно, и трогать не стоит.

Это для аудио, вот там реально просто:

Код:
-acodec libfaac -ar 44100 -ab 96k


Битрейт (ab) можно менять, если хайфай хотите получить. Для низких битрейтов AAC лучше качество дает, чем MP3, почему его и советую.

4
 



С нами с 21.10.04
Сообщения: 19
Рейтинг: 19

Ссылка на сообщениеДобавлено: 23/06/10 в 01:58       Ответить с цитатойцитата 

Спасибо за подробный ответ. Да, абсолютно согласен про чёрную магию. Колдую уже не первый день, но что-то всё-равно не так - то качество плохое, то размер файла большой. Правда, я без пресетов (-vpre normal) пробовал что-то подбирать, а так очень похоже всё. Правда, без некоторых мелочей типа вот этого +dct8x8+wpred+bpyramid+mixed_refs+fastpskip icon_smile.gif

Завтра попробую найти время и прогнать с твоими установками - посмотреть что получится.

А имеет ли смысл пытаться кодировать в два прогона? Или качество за счёт этого не вытащить?

Ещё раз спасибо.

ZipDriver.

4
 

programmer

С нами с 08.12.02
Сообщения: 7607
Рейтинг: 5752

Ссылка на сообщениеДобавлено: 23/06/10 в 10:05       Ответить с цитатойцитата 

в два прохода имеет смысл кодировать только при хорошем исходнике

крипта на ByBit

4
 

Чингачгук, вождь красноглазых

С нами с 14.05.04
Сообщения: 4744
Рейтинг: 1824

Ссылка на сообщениеДобавлено: 23/06/10 в 10:46       Ответить с цитатойцитата 

ZipDriver писал:

А имеет ли смысл пытаться кодировать в два прогона? Или качество за счёт этого не вытащить?


CRF - это как раз альтернатива двухпроходному кодированию. Оно работает в один проход. Я пробовал двухпроходное кодирование - но его настраивать куда труднее, потому что приходится балансировать _сразу_ между тремя параметрами - качеством, временем кодирования, размером файла. И поэтому результаты куда хуже получаются все равно, чем с CRF. В CRF ты сразу задаешь одной цифрой качество, которое хочешь получить. И все. А остальное - баланс между временем кодирования и размером файлов. К примеру, если ты поменяешь "-partp8x8" на "+partp8x8" (партиции p8x8 медленно отрабатывают, поэтому я их и отключил), то визуально качество не изменится - а вот время кодирования увеличится. При этом размер файлов станет меньше. Поэтому маеты намного меньше, ты быстро получаешь нужный результат по качеству и там уже выбираешь, что для тебя важнее - время кодирования или размер файла. Битрейт через -b -bt указывать при CRF не нужно! Оно - как раз альтернатива указанию битрейта. x264 вычисляет битрейт нужный сам в этом случае, и, надо сказать, справляется очень хорошо. Ты получаешь предсказуемое, стабильное визуальное качество - а это, имхо, именно то, что и надо в первую очередь при кодировании для веба. То, что тебе нужно будет добавить к строкам, которые я привел - это только размеры экрана, и все.

4
 



С нами с 21.10.04
Сообщения: 19
Рейтинг: 19

Ссылка на сообщениеДобавлено: 27/06/10 в 13:07       Ответить с цитатойцитата 

Спасибо за подробный ответ. Попробовал твои параметры. С -crf 34 качество явно оставляет желать лучшего, но уменьшая параметр - можно получить что-то близко к желаемому.

Долго мучался, почему у меня не запускается кодировка с пресетом normal. Пока не перенёс все параметры в коммандную строку. Оказалось, что "тошнит" его на -wpredp . Что это такое, я так и не смог найти внятной информации. Все тестовые кодировки делал без него. Может он всё-таки нужен ? icon_smile.gif

Думаю, что win binary у меня не слишком хорошие. Пытался брать их из http://ffmpeg.arrozcru.org/autobuilds/ , но там они вообще кривенькие IMHO. Поэтому заюзал:

FFmpeg version SVN-r18709, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --enable-memalign-hack --prefix=/mingw --cross-prefix=i686-mingw32- --cc=ccache-i686-mingw32-gcc --targ
et-os=mingw32 --arch=i686 --cpu=i686 --enable-avisynth --enable-gpl --enable-zlib --enable-bzlib --enable-libgsm --enabl
e-libfaac --enable-libfaad --enable-pthreads --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame
--enable-libopenjpeg --enable-libxvid --enable-libschroedinger --enable-libx264
libavutil 50. 3. 0 / 50. 3. 0
libavcodec 52.27. 0 / 52.27. 0
libavformat 52.32. 0 / 52.32. 0
libavdevice 52. 2. 0 / 52. 2. 0
libswscale 0. 7. 1 / 0. 7. 1
built on Apr 28 2009 04:04:42, gcc: 4.2.4

Может подскажешь, где можно взять win binary нормальные, желательно версии 0.6 (по release notes вроде как улучшили радикально работу с h264).

И второй вопрос по watermark. -vhook поддержку разработчики убрали, а как пользоваться libavfilter ?

Заранее благодарен.

4
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »