Dave_Scream
По порядку обработки:
1. исходник в Lagarith (900x720 @ 60 - после SVP)
Зачем? Если затем применяется функция MFlowBlur, которая строит много промежуточных кадров и смешивает их между собой. Надо оставить исходные 30 к/сек, сложность обработки сразу снизится в 2 раза. Кроме этого отпадет необходимость в последнем вызове SelectOdd.
2. Я думаю, Вы прочитали описание функции MFlowBlur и понимаете, что blur=100 самый затратный способ получения размытия движения, интервал смаза равен одному межкадромому интервалу, т.е. 1/60 сек для 60 к/сек. Далее вызов ConvertFPS(Framerate*2).SelectOdd.SelectOdd дает смешивание двух соседних кадров, выкидывает исходные и выкидывает половину смешанных кадров. Остается 30 к/сек с интервалом смаза 1/60+1/60 = 1/30 сек. Требуется именно такое размытие движения?
3. загружено на 100% только 1 ядро процессора вместо двух
Все верно. В скрипте не указано разделение обработки на потоки для использования многоядерности процессора.
Насчет вопросов:
задача, которую выполняет SVP более сложная
та же самая, только MFlowBlur выполняет намного больше вычислений: SVP считает один-два промежуточных кадра, а MFlowBlur считает пачку таких кадров и еще и смешивает их друг с другом, чтобы получить один кадр на выходе.
может можно как-то переписать этот скрипт, чтобы он использовал более свежие и оптимизированные функции из svp-шных dll
Наверняка можно. Видеокарта ведь имеется? Вроде бы GTX260. Тогда можно еще и ее задействовать. Самостоятельно справитесь?