Как красиво убрать интерлейсинг с помощью mencoder’а
Добавьте такие опции: -vf yadif=1 -fps _fps_оригинала*2_. FPS оригинала можно посмотреть в выводе mplayer’а на консоль.
Горизонтальные полосы пропадут, а количество кадров в секунду возрастет вдвое. Сравнить можно на семплах.
Пример — скрипт для двухпроходного кодирования в x264, которым я пользуюсь для кодирования домашнего видео:
123456789101112131415161718
#!/bin/shsource=$1output=$2nice ionice -c3 \mencoder \-ovc x264 -x264encopts subq=1:frameref=1:pass=1 \-aspect 4:3 \-nosound \-vf yadif=1 -fps 50.0 \$source -o /dev/null || exit 1nice ionice -c3 \mencoder \-of lavf \-ovc x264 -x264encopts bitrate=3000:subq=6:frameref=3:pass=2 \-aspect 4:3 \-oac mp3lame -lameopts preset=studio \-vf yadif=1 -fps 50.0 \$source -o $output || exit 1
А вообще
Откройте, во-первых, man mencoder. Это будет справочник. Затем откройте документацию по mencoder’у на его сайте, можно даже на русском. Это будет наглядное руководство.
Кое-какие грабли, на которые я наступил
-yadif=1увеличивает количество кадров в секунду вдвое. Если не поменять fps вручную (с помощью-fps), то видео получается «тормозным».- Иногда по каким-то причинам возникают проблемы с индексом. То перемотка не работает, то еще что-то. Решается с помощью
-forceidx. Чтобы застраховаться от такого, можно добавить-idx— тогда индекс пересчитывается только в том случае, если видео поломано. - mplayer умеет применять «крутой» деинтерлейсинг и во время проигрывания, так что для одноразового просмотра не надо ничего конвертировать. Вот скриншот, показывающий, как это делается в smplayer’е.