DAAO
Что за сторонняя прога?

himspb
Поздравляю. Было обычное несовпадение частот, которое давало накапливающуюся регулярную ошибку, приводившую к повтору кадра каждые 15 сек.

Размер экрана и частота обновления: 1920x1080 pixels, 60.005 Hz
Результирующая частота видеокадров: 59.94 fps
Повтор 1 кадра каждые 15 сек (без ReClock)

ReClock дотягивает частоту кадров до точного совпадения с частотой обновления экрана, тем самым исключая эту регулярную ошибку.

himspb
Такое вполне может быть, если не используется ReClock.
Что пишет madVR в статистике по Crl-J?
Интересует точная частота экрана и строчка про регулярный пропуск или повторение кадра. Можно скриншотом.
Эта же информация есть в SVP - показать - дополнительную информацию.

Добавлю объективности к выше сказанному.
Написал небольшой скрипт определения количества дублей в файле. Посчитал для имеющихся трех файлов.

Итак, Цифры, характеризующие качество работы вышеприведенных скриптов:
В исходном файле BF4_720p60.mp4 1142 одиночных выпавших кадра и 56 двойных.
В файле BF4_720p60_DropsFixed.mkv 318 одиночных выпавших кадра и 84 двойных.
В файле BF4_720p60_DropsFixed_v2.mkv 189 одиночных выпавших кадра и 96 двойных.

Видно, что число одиночных выпавших кадров во второй версии сокращено еще почти вдвое. Причину, по которой растет число двойных выпавших кадров я пока не знаю, но найду. А вот что самое главное, раз я теперь умею считать эти кадры, то смогу и заменить их, не пропустив ни одного. wink

Исправил несколько ошибок в предыдущем скрипте, переназвал вставляемые кадры по-правильному: как они соотносятся во времени к заменяемому:
fix50 - взять кадр между текущим и следующим по середине (+50%);
-fix50 - взять кадр между текущим и предыдущим по середине (-50%);
-fix33 & fix33 - всегда идут парой друг за другом с той же логикой: (-33% и 33%);

Картинки-диаграммы движения с выпавшим кадром, которые умеет восстанавливать скрипт:

http://www.svp-team.com/forum/misc.php?item=2470
http://www.svp-team.com/forum/misc.php?item=2471
http://www.svp-team.com/forum/misc.php?item=2472

Скрипт GameDropFix_v2

SetMemoryMax(1024)
global svp_scheduler=true
global threads=3
global svp_cache_fwd=threads+2

LoadPlugin("C:\Program Files (x86)\SVP 3.1.4\plugins\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\SVP 3.1.4\plugins\svpflow2.dll")

SetMTMode(3,threads)
DSS2("G:\Downloads\Game_60fps_trailer\BF4_720p60.mp4").ConvertToYV12()
SetMTMode(2)

global super_params_mini="{scale:{up:0},gpu:1}"
global analyse_params_mini="{block:{w:16,h:16}}"

mini=BicubicResize(width/2,height/2)
super_mini=mini.SVSuper(super_params_mini)
vectors_mini=SVAnalyse(super_mini, analyse_params_mini)
vectors_Forward=SVConvert(vectors_mini, false)
HorizontalSpeed_luma=mini.MMask(vectors_Forward, kind=3).convertToRGB32().PointResize(width/32, height/32).PointResize(width/8, height/8).ConvertToYV12().mt_lut(y=2, u=128, v=128)

global super_params="{scale:{up:0},gpu:1}"
global analyse_params="{main:{search:{coarse:{distance:4,bad:{sad:2000}},type:2,distance:4},penalty:{lambda:1,pglobal:10000}},refine:[{thsad:65000}]}"
global smoothfps_params_2_1="{gpuid:21,rate:{num:2,den:1},algo:13,scene:{limits:{blocks:50}}}"
global smoothfps_params_3_1="{gpuid:21,rate:{num:3,den:1},algo:13,scene:{limits:{blocks:50}}}"

super=SVSuper(super_params)
vectors=SVAnalyse(super, analyse_params)
global fix50 = SVSmoothFps(super, vectors, smoothfps_params_2_1, mt=threads, url="www.svp-team.com").SelectOdd()
fix_3_1 = SVSmoothFps(super, vectors, smoothfps_params_3_1, mt=threads, url="www.svp-team.com")
global fix33 = fix_3_1.SelectEvery(3,1).Subtitle("fix33", align=3, size=12)
global fix66 = fix_3_1.SelectEvery(3,2).Subtitle("-fix33", align=3, size=12)

global min_move=0.02
global move_idx=10
global debug=0
global spc=" "
global fmt="% 1.2f"
global star="*"
global fix50t="fix50"
global fix50nt="-fix50"
last.ScriptClip("
    luma_lft=HorizontalSpeed_luma.crop(0,0,width/32,0)
    luma_rgh=HorizontalSpeed_luma.crop(width/32+width/16,0,0,0)
    AvgLuma_lft=128-luma_lft.AverageLuma
    AvgLuma_rgh=128-luma_rgh.AverageLuma
    AvgLuma_lft_prev=128-(luma_lft.trim(1,1)+luma_lft).AverageLuma
    AvgLuma_rgh_prev=128-(luma_rgh.trim(1,1)+luma_rgh).AverageLuma
    AvgLuma_lft_next=128-luma_lft.trim(1,0).AverageLuma
    AvgLuma_rgh_next=128-luma_rgh.trim(1,0).AverageLuma
    AvgLuma_lft_next2=128-luma_lft.trim(2,0).AverageLuma
    AvgLuma_rgh_next2=128-luma_rgh.trim(2,0).AverageLuma

    Max_lft=max(abs(AvgLuma_lft_prev),abs(AvgLuma_lft),abs(AvgLuma_lft_next))
    Max_rgh=max(abs(AvgLuma_rgh_prev),abs(AvgLuma_rgh),abs(AvgLuma_rgh_next))
    A_prev= (Max_rgh>Max_lft) ? AvgLuma_rgh_prev : AvgLuma_lft_prev
    A_cur= (Max_rgh>Max_lft) ? AvgLuma_rgh : AvgLuma_lft
    A_next= (Max_rgh>Max_lft) ? AvgLuma_rgh_next : AvgLuma_lft_next
    drop_lft= (AvgLuma_lft_prev*AvgLuma_lft_next>0 && abs(AvgLuma_lft*move_idx)<Max_lft && abs(AvgLuma_lft_prev)>min_move && abs(AvgLuma_lft_next)>min_move && abs(AvgLuma_lft)<=min_move) ? 1 : 0
    drop_rgh= (AvgLuma_rgh_prev*AvgLuma_rgh_next>0 && abs(AvgLuma_rgh*move_idx)<Max_rgh && abs(AvgLuma_rgh_prev)>min_move && abs(AvgLuma_rgh_next)>min_move && abs(AvgLuma_rgh)<=min_move) ? 1 : 0
    drop = drop_lft*drop_rgh
    drop = (drop==0 && A_cur==0 && abs(A_prev)>min_move && abs(A_next)>min_move) ? 1 : drop
    
    Max_lft2=max(abs(AvgLuma_lft),abs(AvgLuma_lft_next),abs(AvgLuma_lft_next2))
    Max_rgh2=max(abs(AvgLuma_rgh),abs(AvgLuma_rgh_next),abs(AvgLuma_rgh_next2))
    A_prev2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh : AvgLuma_lft
    A_cur2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh_next : AvgLuma_lft_next
    A_next2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh_next2 : AvgLuma_lft_next2
    drop_lft2= (AvgLuma_lft*AvgLuma_lft_next2>0 && abs(AvgLuma_lft_next*move_idx)<Max_lft2 && abs(AvgLuma_lft)>min_move && abs(AvgLuma_lft_next2)>min_move && abs(AvgLuma_lft_next)<=min_move) ? 1 : 0
    drop_rgh2= (AvgLuma_rgh*AvgLuma_rgh_next2>0 && abs(AvgLuma_rgh_next*move_idx)<Max_rgh2 && abs(AvgLuma_rgh)>min_move && abs(AvgLuma_rgh_next2)>min_move && abs(AvgLuma_rgh_next)<=min_move) ? 1 : 0
    drop2 = drop_lft2*drop_rgh2
    drop2 = (drop2==0 && A_cur2==0 && abs(A_prev2)>min_move && abs(A_next2)>min_move) ? 1 : drop2

    drop2==1 \
    ? abs(A_prev2)/1.3>abs(A_next2) \
      ?  (fix50.trim(1,1)+fix50).Subtitle(fix50nt, align=3, size=12) \
      : (abs(A_prev2)/1.3<=abs(A_next2) && abs(A_prev2)>=abs(A_next2)/1.3) \
        ? fix66.trim(1,1)+fix66 \
        : last \
    : last
    
    drop==1 \
    ? abs(A_prev)<abs(A_next)/1.3 \
      ?  fix50.Subtitle(fix50t, align=3, size=12) \
      : abs(A_prev)/1.3<=abs(A_next) \
        ? fix33 \
        : last \
    : last

    debug==1 ? Subtitle(x=10,y=10,string(AvgLuma_lft_prev,fmt)+spc+string(AvgLuma_rgh_prev,fmt)) : last
    debug==1 ? Subtitle(x=10,y=30,string(AvgLuma_lft,fmt)+spc+string(AvgLuma_rgh,fmt),text_color=$FF8888) : last
    debug==1 ? Subtitle(x=10,y=50,string(AvgLuma_lft_next,fmt)+spc+string(AvgLuma_rgh_next,fmt)) : last
    debug==1 ? Subtitle(x=10,y=70,string(AvgLuma_lft_next2,fmt)+spc+string(AvgLuma_rgh_next2,fmt)) : last
    debug==1 ? Max_rgh>Max_lft ? Subtitle(x=70,y=90,star) : Subtitle(x=20,y=90,star) : last
    debug==1 ? Subtitle(x=10,y=110,string(drop_lft)+spc+string(drop_rgh)+spc+string(drop)) : last
    (debug==1 && drop==1 && abs(A_prev)/1.3>abs(A_next)) ? Subtitle(x=10,y=130, star+star+star+star+star+star) : last
")

trim(0,framecount-10)
Distributor()

Результат работы скрипта стал лучше:
BF4_720p60_DropsFixed_v2.mkv (1,22 ГБ)

3,481

(153 replies, posted in Эксплуатация SVP)

danila_112
есть неиспользуемые резервы CPU в размере 30%
Их не надо использовать. Иначе в погоне за качеством получите подергивания и тормоза. 30% - это минимально необходимый резерв.

3,482

(153 replies, posted in Эксплуатация SVP)

danila_112
могу сказать определенно сейчас плавность супер и загрузка процессора не более 70%
Я рад, что получилось. Мои поздравления! smile

Kanade
If you have any antivirus software then you need to disable virus check in this folder. You need add to exception list your folder: C:\Users\Eric\AppData\Roaming\SVP 3.1\Logs
Error appears because avisynth can not write to file just created by him. AV soft is taking this file for some time. It is unexpected to avisynth.

Подкинул тут Булат95 ссылку на плавный трейлер игрушки BattleField 4.
Трейлеры 720p и 1080p и правда имеют 60 к/сек, но вот только во многих сценах присутствуют выпавшие кадры. Мне это дело не очень понравилось, поэтому решил попытать свои силы в задаче повышения плавности игровым трейлерам. smile
Заодно развить алгоритм замены выпавших кадров.

Вышел довольно сложный, но мощный скрипт: GameDropFix

SetMemoryMax(1024)
global svp_scheduler=true
global threads=7
global svp_cache_fwd=threads+2

LoadPlugin("C:\Program Files (x86)\SVP 3.1.4\plugins\svpflow1.dll")
LoadPlugin("C:\Program Files (x86)\SVP 3.1.4\plugins\svpflow2.dll")

SetMTMode(3,threads)
DSS2("G:\Downloads\Game_60fps_trailer\BF4_720p60.mp4").ConvertToYV12()
SetMTMode(2)

global super_params_mini="{scale:{up:0},gpu:1}"
global analyse_params_mini="{block:{w:16,h:16}}"

mini=BicubicResize(width/2,height/2)
super_mini=mini.SVSuper(super_params_mini)
vectors_mini=SVAnalyse(super_mini, analyse_params_mini)
vectors_Forward=SVConvert(vectors_mini, false)
HorizontalSpeed_luma=mini.MMask(vectors_Forward, kind=3).convertToRGB32().PointResize(width/32, height/32).PointResize(width/8, height/8).ConvertToYV12().mt_lut(y=2, u=128, v=128)

global super_params="{scale:{up:0},gpu:1}"
global analyse_params="{main:{search:{coarse:{distance:4,bad:{sad:2000}},type:2,distance:4},penalty:{lambda:1,pglobal:10000}},refine:[{thsad:65000}]}"
global smoothfps_params="{gpuid:21,rate:{num:2,den:1},algo:13,scene:{limits:{blocks:50}}}"
global smoothfps_params3366="{gpuid:21,rate:{num:3,den:1},algo:13,scene:{limits:{blocks:50}}}"

super=SVSuper(super_params)
vectors=SVAnalyse(super, analyse_params)
global fix50 = SVSmoothFps(super, vectors, smoothfps_params, mt=threads, url="www.svp-team.com").SelectOdd().Subtitle("fix50", align=3, size=12)
fix3366 = SVSmoothFps(super, vectors, smoothfps_params3366, mt=threads, url="www.svp-team.com")
global fix33 = fix3366.SelectEvery(3,1).Subtitle("fix33", align=3, size=12)
global fix66 = fix3366.SelectEvery(3,2).Subtitle("fix66", align=3, size=12)

global min_move=0.02
global move_idx=10
global debug=0
global spc=" "
global fmt="% 1.2f"
global star="*"
last.ScriptClip("
    luma_lft=HorizontalSpeed_luma.crop(0,0,width/32,0)
    luma_rgh=HorizontalSpeed_luma.crop(width/32+width/16,0,0,0)
    AvgLuma_lft=128-luma_lft.AverageLuma
    AvgLuma_rgh=128-luma_rgh.AverageLuma
    AvgLuma_lft_prev=128-(luma_lft.trim(1,1)+luma_lft).AverageLuma
    AvgLuma_rgh_prev=128-(luma_rgh.trim(1,1)+luma_rgh).AverageLuma
    AvgLuma_lft_next=128-luma_lft.trim(1,0).AverageLuma
    AvgLuma_rgh_next=128-luma_rgh.trim(1,0).AverageLuma
    AvgLuma_lft_next2=128-luma_lft.trim(2,0).AverageLuma
    AvgLuma_rgh_next2=128-luma_rgh.trim(2,0).AverageLuma

    Max_lft=max(abs(AvgLuma_lft_prev),abs(AvgLuma_lft),abs(AvgLuma_lft_next))
    Max_rgh=max(abs(AvgLuma_rgh_prev),abs(AvgLuma_rgh),abs(AvgLuma_rgh_next))
    A_prev= (Max_rgh>Max_lft) ? AvgLuma_rgh_prev : AvgLuma_lft_prev
    A_cur= (Max_rgh>Max_lft) ? AvgLuma_rgh : AvgLuma_lft
    A_next= (Max_rgh>Max_lft) ? AvgLuma_rgh_next : AvgLuma_lft_next
    drop_lft= (AvgLuma_lft_prev*AvgLuma_lft_next>0 && abs(AvgLuma_lft*move_idx)<Max_lft && abs(AvgLuma_lft_prev)>min_move && abs(AvgLuma_lft_next)>min_move) ? 1 : 0
    drop_rgh= (AvgLuma_rgh_prev*AvgLuma_rgh_next>0 && abs(AvgLuma_rgh*move_idx)<Max_rgh && abs(AvgLuma_rgh_prev)>min_move && abs(AvgLuma_rgh_next)>min_move) ? 1 : 0
    drop = drop_lft*drop_rgh
    
    Max_lft2=max(abs(AvgLuma_lft),abs(AvgLuma_lft_next),abs(AvgLuma_lft_next2))
    Max_rgh2=max(abs(AvgLuma_rgh),abs(AvgLuma_rgh_next),abs(AvgLuma_rgh_next2))
    A_prev2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh : AvgLuma_lft
    A_cur2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh_next : AvgLuma_lft_next
    A_next2= (Max_rgh2>Max_lft2) ? AvgLuma_rgh_next2 : AvgLuma_lft_next2
    drop_lft2= (AvgLuma_lft*AvgLuma_lft_next2>0 && abs(AvgLuma_lft_next*move_idx)<Max_lft2 && abs(AvgLuma_lft)>min_move && abs(AvgLuma_lft_next2)>min_move) ? 1 : 0
    drop_rgh2= (AvgLuma_rgh*AvgLuma_rgh_next2>0 && abs(AvgLuma_rgh_next*move_idx)<Max_rgh2 && abs(AvgLuma_rgh)>min_move && abs(AvgLuma_rgh_next2)>min_move) ? 1 : 0
    drop2 = drop_lft2*drop_rgh2

    drop2==1 \
    ? abs(A_prev2)/1.3>abs(A_next2) \
      ?  fix50.trim(1,1)+fix50 \
      : (abs(A_prev2)/1.3<=abs(A_next2) && abs(A_prev2)>=abs(A_next2)/1.3) \
        ? fix66.trim(1,1)+fix66 \
        : last \
    : last
    
    drop==1 \
    ? abs(A_prev)/1.3<=abs(A_next) \
      ?  fix50 \
      : abs(A_prev)<=abs(A_next)/1.3 \
        ? fix33 \
        : last \
    : last

    debug==1 ? Subtitle(x=10,y=10,string(AvgLuma_lft_prev,fmt)+spc+string(AvgLuma_rgh_prev,fmt)) : last
    debug==1 ? Subtitle(x=10,y=30,string(AvgLuma_lft,fmt)+spc+string(AvgLuma_rgh,fmt),text_color=$FF8888) : last
    debug==1 ? Subtitle(x=10,y=50,string(AvgLuma_lft_next,fmt)+spc+string(AvgLuma_rgh_next,fmt)) : last
    debug==1 ? Subtitle(x=10,y=70,string(AvgLuma_lft_next2,fmt)+spc+string(AvgLuma_rgh_next2,fmt)) : last
    debug==1 ? Max_rgh>Max_lft ? Subtitle(x=70,y=90,star) : Subtitle(x=20,y=90,star) : last
    debug==1 ? Subtitle(x=10,y=110,string(drop_lft)+spc+string(drop_rgh)+spc+string(drop)) : last
    (debug==1 && drop==1 && abs(A_prev)/1.3>abs(A_next)) ? Subtitle(x=10,y=130, star+star+star+star+star+star) : last
")

Distributor()

Это пока предварительный вариант в стадии работающего прототипа. Настройки максимальной подвижности при интерполировании взяты такие же, как для повышения плавности видео с видеорегистратора. Т.к. характер движений в таком видео очень схож.

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

Случай 1. Классический. Дроп, затем скачок.

http://www.svp-team.com/forum/misc.php?item=2468

Перед выпавшим кадром движение обычной амплитуды, на самом выпавшем кадре движений нет, на следующем за ним кадре - движение в два раза больше из-за пропуска фазы движения. Такой дроп лечится классической заменой кадра-дропа интерполированным кадром, взятого посередине длинного движения. На картинке обозначен: fix50.

Случай 2. Обратный. Скачок, затем дроп.
Перед выпавшим кадром по какой-то причине игровой движок показывает кадр из будущего. Выглядит как скачок. А за ним следует дроп. Видимо движок игры неровно тратит время на отрисовку кадров и если предыдущий кадр ему дался легко, то со следующим он провозился так долго, что не успел подготовить кадр до следующего синхроимпульса монитора, пришлось повторить имеющийся, т.е. вывести дроп. Такой дроп лечится хитро. Вторая копия кадра оставляется нетронутой, а первая заменяется на fix50.

Случай 3. Пропуск кадра из-за низкой частоты рендера кадров игровым движком.
И перед выпавшим кадром и после него нет скачков. Кадра просто не считалось игрой изначально. Если заменить такой дроп на один интерполированный по середине с соседом кадр, то получим два кадра с уполовиненным по скорости движением. Я пока решил интерполировать оба кадра, которые ограничивают кадровый интервал. Первый кадр интерполирую с левым, получая положение 66%: fix66, второй кадр - с правым до положения 33%: fix33.
Таким образом получаю вместо дропа серию из трех замедленных на 33% но равномерно двигающихся кадров. Выглядит уже лучше, чем дерганный исходник.

Все желающие могут скачать и посмотреть результат:
BF4_720p60_DropsFixed.mkv (1,21 ГБ)

jkauff
If simple then go to reset profiles dialog and select lighter profile from the list than current.

3,486

(4 replies, posted in Using SVP)

jkauff
Yes. Thank you for reminding. smile
One-frame DVD menu is hard thing for me. I tried several times, but I could not fixed it a once.
I will be try again. I had a good rest for that wink

3,487

(466 replies, posted in Эксплуатация SVP)

Почемучкин
Правой кнопкой по окну плеера во время воспроизведения файла.

MPC-HC:
http://www.svp-team.com/forum/misc.php?item=2466

PotPlayer:
http://www.svp-team.com/forum/misc.php?item=2467

Kanade
Do you mean as in seek slowly and not fast?
No. I mean programmers trincks. Just released in SVP. You can see them in "SVP menu - Turn off on seek" option.

One more thing, to update any components (for example: SVP lite, fddshow and avisynch) do I download the latest installers and just run them?
Or do I have to delete everything first and than install?

If you advanced user and use a lot of software that uses avisynth/ffdShow then install them separately manually. Otherwise just douwnload and install SVP_full. Last version of SVP usually contains all last versions of used compinents.

3,489

(153 replies, posted in Эксплуатация SVP)

danila_112
Нет.

Включенный GPU - это галка в меню SVP, которая включает использование GPU-ускорения.
Профили с буквами g/c - это только наборы настроек подобранные с учетом того, что GPU-ускорение забирает (или нет) на себя часть нагрузки с процессора. Буква g/c - это только название, которое никак не влияет на GPU-ускорение. Поэтому после включения/отключения GPU-ускорения рекомендуется сбрасывать профили, чтобы выбрался соответствующий набор профилей под текущую конфигурацию.

3,490

(466 replies, posted in Эксплуатация SVP)

Почемучкин
Что там в меню по правой кнопке при отключенном SVP?
Интересует список DS-фильтров.

Если использовать только рекомендуемые фильтры (устанавливаемые пакетом SVP_full), то никаких ошибок и зависаний. Давайте выяснять, что у Вас нестандартного в списке фильтров.

3,491

(153 replies, posted in Эксплуатация SVP)

danila_112
всё это при использовании расчётов GPU?
Да. При процессорном построении точность расчетов пиксельная и полу-пиксельная. В зависимости от настройки в профиле.

OpenCL выключен, если всё так оставить, то после обновления SVP станут движения плавнее?
Нет, без OpenCL все останется как было.

судя по выводам скорости SVP не добавилось, и я опять буду иметь затыки\рассинхроны звука и видео
На 13-м шейдере скорость прибавилась. Я могу у себя смотреть 720p с пиксельным шейдером повышения резкости sharpen complex2, SVP-шейдером 13. И все это на Intel HD Graphics 4000.

Почемучкин
Поздравляю!
Значит, MPC-HC плеер использует встроенный декодер, который оказался лучше совместим с SVP, чем тот, который использовался у Вас в системе до этого.

3,493

(466 replies, posted in Эксплуатация SVP)

Почемучкин
выводится окошко с сообщением об ошибке
Привести текст ошибки полностью.

R4Zi3L
The error tell about lack of graphic memory.

Error preparing smooth playback! Script error:
SVSmoothFps: unable to init FlowLib [code 0x3FFFA]
(C:\Users\DESKTOP\AppData\Roaming\SVP 3.1\AVS\ffdshow.avs, line 38)
(C:\Users\DESKTOP\AppData\Roaming\SVP 3.1\AVS\ffdshow.avs, line 53)

It is because of old graphic card with low memory size.

detected graphics (OpenCL) adapter: 11. GeForce 9600 GT (264). Duration: 16 ms

You need to optimize video memory use.
Look at video memory use by enabling/changing/disabling of these components:
- CUDA decoder;
- SVP GPU-calculations;
- video renderer.

You can use GPU-Z to monitor used memory size.

Additional topic to read: Out of video memory (0x3FFFA error) on madVR

3,495

(153 replies, posted in Эксплуатация SVP)

В новой версии драйверов Intel наконец-то исправлена ошибка, не позволявшая использовать субпиксельную точность расчетов промежуточных кадров. Это делало движения не достаточно плавными. Ступенчатыми. Теперь после установки драйвера 9.18.10.3071 плавность становится идеальной, такой же, как и на остальных GPU-ускорителях от NVIDIA и AMD.

Модификация SVP 3.1.4 добавляющая субпиксельную точность для ускорителей Intel HD Graphics 2500 / 4000.

- Скачать и установить драйвера 9.18.10.3071
- Скачать: SVPMgr314.912_HD_Graphics_subpixel_mod.zip

1. Закрыть SVP Менеджер
2. Распаковать в папку SVP 3.1.4 c заменой файлов
3. Запустить SVP Менеджер
4. Включить галку "GPU-ускорение", если выключена

Скорость новых драйверов Intel в среднем стала немного выше. Картина следующая. Результаты синтетических тестов упали, а реальных тестов где-то возрасли, где-то упали.

Результаты SVPmark 3.0.3
Процессор: Core i7-3570, GPU-ускорение: Intel HD Graphics 4000

http://www.svp-team.com/forum/misc.php?item=2465

Увеличилась скорость реальных тестов на простых и средних настройках плавности (fastest, simple 1, good, simple 2). Результаты реальных тестов на максимальных настройках упали (high, highest). Скорее всего из-за того, что объективно уменьшилась скорость работы видеокарты: видно по синтетическим тестам. Скорость передачи данных с GPU на CPU упала аж на 33%.
Отчего же наблюдается прирост в целом и на слабых/средних настройках повышения плавности? Скорее всего из-за того, что оптимизированы были только некоторые простые команды, выполняющиеся на GPU. В результате чего SVP шейдеры 1 и 13 стали быстрее, а тяжелый SVP-шейдер 23 стал работать медленней (см. настройки подтестов SVPmark).

Это надо взять на заметку пользователям Intel HD Graphics.

3,496

(5 replies, posted in Форумные вопросы)

agorava
В форуме Эксплуатация SVP создать новую тему.

Kanade
Did you try change option "SVP menu - Turn off on seek"?

I see previous frames all flashing
It can be only if you selected "Dont turn off". It is ffdShow buffer's work. All we can do is to make some tricks.

BTW. I preparing additional solution to "SVP menu - Turn off on seek" menu. You will see it in next SVP version.

3,498

(29 replies, posted in Using SVP)

flashmp3
ASUS UX32VD R4002
Oh. It is laptop. Sorry. Then I think it have not direct output from integrated video to monitor. Only Virtu can help.
Trick works with Desktop PC.

flashmp3
Do you think i could force the soft to use both GPU at the same time ?
I think you need to contact Serato developers. As I can see on YouTube such on-the-fly video FX can work only with hardware acceleration. But hardware acceleration may have limits to framerate. You need to ask developers does Serato Video (or Video LS) supports 1080p60 or 720p60 video clips? You need maximum smoothness on 60 Hz monitor.
In demo clips I saw only about NVIDIA support, nothing about Intel Graphics support.

3,499

(29 replies, posted in Using SVP)

jkauff
If trick done properly then you will get menu choice of GPU-acceleration in SVP: NVIDIA or Intel HD Graphics 4000.
Without Virtu.

Kanade
There are two causes of dragonfly artifacts:
1. Some objects have wrong vectors (vectors of background). Error of vector search algo. It is because big vectors grid size and small search radius.
2. Some objects have very small or thin size that smaller than grid size. Such objects can not be interpolated correctly by current SVP algo. It is lack of current frame interpolation algo.

Try to decrease Motion vectors grid step from 24 to 16 or to 8.
Try to encrese Search radius.

In simple cases it ill help. But in hard cases SVP will give artifacts on any settings. By now dragonfly artifacts can not be removed completly.