вторник, 16 февраля 2016 г.

Ещё раз о сжатии с видеокассет...

В mencoder есть прямая работа с форматами сжатия, к примеру xvid:
mencoder example.mpg -oac mp3lame -ovc xvid -xvidencopts bitrate=1200:quant_type=mpeg -lameopts abr=128 -vf crop=685:560:8:8,scale=688:528,pp=h1/v1/d,harddup -o example.avi
Здесь важно отметить, в приведённом примере командой отсекаются "чёрные полосы до 685 строк вокруг значимой части кадра, и затем несколько расширяется до 688, что чревато апскейлом, то есть растягиванием картинки, чтобы этого не произошло необходимо учитывать обстоятельство:
В рипе не может быть больше точек чем в исходнике.
То есть, чтобы не получилось "апскейла", произведение 688x528=363264 не может больше аналогичного произведения для исходного видео, растягивание по одной оси, автоматически должно убавлять по другой оси... И, да: дя изменения размера видео в формате Xvid годятся числа, по горизонтали, кратные 32, и по вертикали, кратные 16. Строго говоря, можно придерживаться и вдвое меньшей кратности (16x8), но лучше, всё-же 32x16. Но любые другие размеры не кратные 16 и 8, приведут к том, что программа сожмёт видео, но сделает его "анаморфным", то есть растягиваемым до нужных размеров. Для h264  и других (mkv,mp4) размер можно ставить любой, хотя, наверное, лучше придерживаться общепринятых стандартов

Особо следует уделить внимание опциям pp и hardup - первая устраняет артефакты  недостаточного битрейта, что особенно важно,  при наличии VHS помех: на каждый цветовой риск затрачивается всё больший объём данных на помеху, и требуется всё больший избыточный битрейт для сохранения полезного видео, чтобы этого избежать опция должна идти с такими параметрами:  pp=h1/v1/d

Вторая же опция harddup принудительно синхронизирует звук, избавляясь от тех кадров видео, которые не попадают с синхронизацию со звуком, опция тоже очень актуальная для оцифровки видеокассет...

Для linux важно ещё одно обстоятельство: mencoder может работать с кодерами напрямую, но тогда надо запоминать опции и параметры каждого, отдельно взятого, кодера. В man (то есть справочных материалах по операционной системе), эти опции и параметры либо "спрятались" либо очень слабо отражены, гораздо проще, при составлении команды, использовать прослойку lavc которая отражена в системных доках гораздо лучше, и, самое важное, лучше запоминается в силу большей логичности:
mencoder example.mpg -ovc lavc -oac lavc -lavcopts vcodec=mpeg4:vbitrate=1200,acodec=libmp3lame abitrate=128(или vbr=4):aq=2 -vf pp=h1/v1/d,harddup -o example.avi

Ярлыки: ,

Комментарии: 0:

Отправить комментарий

Примечание. Отправлять комментарии могут только участники этого блога.

Подпишитесь на каналы Комментарии к сообщению [Atom]

<< Главная страница