LINUX.ORG.RU

Mencoder, XviD, x264, ..., я запарилсо


0

0

Нужно перекодировать 2 часа 45 мин. miniDV пленок в формате DV-avi, чтоб все влезло на DVD болванку.

Пробовал x264, xvid... Результаты расстроили...
Размер картинки - 720x576, cьемки достаточно красочные и динамичные.

Пробовал 2 скрипта с битрейтом 2500:

#*** XviD ***
#!/bin/sh

for i in $@ ; do \
	mencoder \
	$i \
	-o /dev/null \
	-vf yadif \
	-ovc xvid -xvidencopts bitrate=2500:me_quality=6:vhq=1:qpel:gmc:trellis:turbo:threads=3:pass=1 \
	-oac mp3lame -lameopts abr:br=192

	mencoder \
	$i \
	-o /usr/films/foros_2008/res/$i \
	-vf yadif \
	-ovc xvid -xvidencopts bitrate=2500:me_quality=6:vhq=1:qpel:gmc:trellis:turbo:threads=3:pass=2 \
	-oac mp3lame -lameopts abr:br=192 ; done

Результат кошмарный. При быстрой смене обстановки в кадре начинается атака квадратов на вселенную, 
которые постепенно исчезают и картинка нормалтзуется секнд через 5.

#*** x264 ***
#!/bin/sh
	
for i in $@ ; do \
	mencoder \
	$i \
	-o /dev/null \
	-vf yadif \
	-ovc x264 -x264encopts bitrate=2500:turbo=1:threads=3:pass=1 \
	-oac mp3lame -lameopts abr:br=192

	mencoder \
	$i \
	-o /usr/films/foros_2008/res-x264/$i \
	-vf yadif \
	-ovc x264 -x264encopts bitrate=2500:turbo=1:threads=3:pass=2 \
	-oac mp3lame -lameopts abr:br=192 ; done

Немного лучше, квадратов меньше, вместо этого картинка жутко недетализирована, 
все смазано, короче плохо.

Вопрос: каой битрейт и опции нужно указать для нормального результата (качества соизмеримого с оригиналом)? 
Неужели 2500 kbps в 2 прохода это настолько мало для современных кодеков? Я устал от эксперементов...

PS -vf yadif это для удаления черезстрочности (гребешков при движении), на качество не влияет.


>cьемки достаточно красочные и динамичные.

Это как? Бегом с камерой по траве во время листопада? Тогда 2500 может быть маловато...

По поводу XviD советую: а) убрать turbo; б) убрать gmc; в) убрать qpel; г) поставить max_bframes=3, vhq=2 или 4, bvhq=1

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

mky ★★★★★
()

никаких настроек для x264 - мда... вот так должно быть довольно качественно, но омжет занять дофига тайма :)

первый проход:
-x264encopts turbo=1:subq=6:trellis=2:partitions=all:8x8dct:me=umh:frameref=6:bframes=3:b_py ramid:weight_b:threads=2:bitrate=2500:pass=1
второй проход(без турбо, а то хз - оно вроде как и на втором проходе скидывает настройки некоторые)
-x264encopts subq=6:trellis=2:partitions=all:8x8dct:me=umh:frameref=6:bframes=3:b_pyramid:we ight_b:threads=2:bitrate=2500:pass=2

И кста, зачем 3 потока, неуж-то проц на три ядра юзаешь? Если нет, то сделай по количеству ядер, т.к. каждый поток это дополнительное увеличение глобальных шумов PSNR. В общем советую почитать доки по mencoder'у на оф. сайте :)

>>PS -vf yadif это для удаления черезстрочности (гребешков при движении), на качество не влияет.
Еще как влияет, оно иногда довольно таки странно интерполирует строчки и всовывает данные на основе того что оно там предскажет :) Попробуй поиграться с -vf pullup,softskip или добавить между ними pp=l5 или pp=lb. Да и если в файле 30 кадров, то измени на -ofps 24000/1001

Andru ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.