lalex
Воскресенье, 20 Марта 2005, 18:57
В связи с развитием темы хотел бы внести некоторые свои коррективы в данный гайд.
1. С появлением Avisynth 2.55 в него был включен новый чудесный метод ресайза (
Lanczos4Resize), который дает лучшие результаты, чем предыдущие методы (
BicubicResize, LanczosResize) . Привожу выдержку из официального фака:"LanczosResize is an alternative to BicubicResize with high values of c about 0.6 ... 0.75 which produces quite strong sharpening. It usually offers better quality (fewer artifacts) and a sharp image.
Lanczos was created for AviSynth because it retained so much detail, more so even than BicubicResize(x,y,0,0.75). As you might know, the more detail a frame has, the more diffiult it is to compress it. This means that Lanczos is NOT suited for low bitrate video, the various Bicubic flavours are much better for this. If however you have enough bitrate then using Lanczos will give you a better picture, but in general I do not recommend using it for 1 CD rips because the bitrate is usually too low (there are exceptions of course).
Lanczos4Resize is closely related to LanczosResize (correct name: Lanczos3Resize). The latter uses 2*3=6 lobes and the former 2*4=8 lobes to do the resizing. The result is that Lanczos4Resize produces sharper images. Especially usefull when upsizing a clip.
"For upsampling (making the image larger), the filter is sized such that the entire equation falls across 4 input samples, making it a 4-tap filter. It doesn't matter how big the output image is going to be - it's still just 4 taps. For downsampling (making the image smaller), the equation is sized so it will fall across 4 *destination* samples, which obviously are spaced at wider intervals than the source samples. So for downsampling by a factor of 2 (making the image half as big), the filter covers 2*4=8 input samples, and thus 8 taps. For 3x downsampling, you need 3*4=12 taps, and so forth.
Thus the total number of taps you need for downsampling is the downsampling ratio times the number of lobes (thus Tx downsampling and LanczoskResize results in T*2*k taps). And practically, one needs to round that up to the next even integer. For upsampling, it's always 4 taps."
Таким образом можно сделать вывод, что при использовании хорошего и чистого лицензионного источника использование Lanczos4Resize вполне оправданно, если же мы имеем немного "грязный" источник для кодирования, то нужно пользоваться BicubicResize который дает меньшую степень детализации кадра в целом.
2. При использовании BicubicResize можно увеличить скорость обработки кодером вашего видеоматериала за счет оптимизации некоторых действий фрейм-сервера. Можно в скрипте использовать комбинированные значения, т.е. BicubicResize(320,240,0,0.3,160,0,160,120), где первая пара цифр - это конечное разрешение, которое мы хотим получить, последние 4 значения - это значения вашего кропинга, 3-е значение (0) менять никогда не нужно, а 4-е значение (0.3) - это значение Sharpena при кодировании. Значения Sharpen-а лучше всего использовать из диапазона 0.25-0.35 (только не нужно увлекаться, потому что вместо увеличения четкости вы получите ухудшение качества картинки за счет появления "песка"). В среднем увеличение скорости обработки составляло 5%
В конечном счете в простейшем случае в скрипте вы должны получить что-то напоминающее это"
LoadPlugin(D:\DGMPGDec\DGDecode.dll")
mpeg2source("D:\DVD\neudergimie\neudergimie.d2v")
crop(22,72,676,432)
Sharpen(0.3)
Lanczos4Resize(640,288)3. В качестве
калькулятора битрейда отлично подойдет
GordianKnot, в нем можно прекрасно выбрать конечное разрешение и подобрать параметры кропинга. не кодируйте ничего в GordianKnot-е используйте только
VirtualDubMod. В GordianKnot-е так-же вы подберете величину bits/(pixel*frame), которая характеризует качество вашего материала.
4.При использовании кодека DivX (а я надеюсь, вы его используете

) желательно использовать самый медленный алгоритм кодирования. Еще как показывает практика использование проходов больше 2-х дает лучшие результаты в конечном закодированном материале. Для придания картинке большей четкости в самом последнем проходе мог бы порекомендовать подвинуть бегунок Modulation в правую сторону (low-motion) на 0.01-0.05 едениц, но не более. В среднем при bits/(pixel*frame) до 0.3 можно бегунок Modulation можно подвинуть на 0.01-0.02, при bits/(pixel*frame) от 0.3 можно и до 0.04-0.05
5. Так-же для улучшения качества вашего закодированного видеоматериала я б рекомендовал кодировать титры отдельно от фильма. При кодировании в
VirtualDubMod нужно выбрать диапазон фреймов от начала фильма (кнопка на клавиатуре Home) и до начала титров (кнопка End) и посмотреть сколько фреймов имеет конечный материал, после возвращаясь к
GordianKnot ввести полученное количество фреймов и отнять 7-8 мб от конечного размера файла (т.е. 1392-1393 Мб или 2037-2038 Мб). В результате вы получите битрейд на 5-7% больший нежели при ваших первых расчетах. Этот самый битрейд вы в итоге и потратите на улучшение четкости картинки. А титры можете закодировать точно таким же способом, но используя 1-проходное кодирование с битрейдом около 150 кбит/сек, не переживайте на счет такого низкого битрейда. титры будут прекрасно читабельны. После этого вам предстоит всего лишь склеить 2 части фильма и присоеденить к ним звук.
P.S. коментарии и пожелания принимаются