Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: gargamel60, julien-64, Milou54 et 23 invités

Tout ce qui concerne les logiciels lié au HC sur ordinateur (PC, Mac, Linux...)
Règles du forum
Avant de poster, merci de prendre connaissance des règles du forum : à lire avant de poster

Optimisation AviSynth

Message » 08 Jan 2013 0:21

McGayver a écrit:Bon , moi j'avance : le script avisynth qui est forcé par SVP me sort une image au moins ausi bonne que tout mes calls réunis . Je comprends quasiment rien au script mais ce qui est sur c'est que ça marche du tonnerre :o La carte graphique est sollicité et fait un sacré boulot autant pour la charge que la qualité d'image : j'ai plus de bruit sur mes films de reférences et plus de flou sur les travelings !

Quand je penses à la prise de choux que je me tapes depuis......longtemps et quandje vois le résultat rien quand changeant de carte et de call Avisynth via SVP c'est trop top .

J'ai bien fait de ne pas prendre la 650 . 3 fois moins puissante elle aurait pas tenue la route vu le script de SVP .

Tu peux le donner ton script ??? 8)
Goldfinger67
 
Messages: 6932
Inscription Forum: 18 Nov 2008 15:34
Localisation: Aveyron
  • offline

Message » 08 Jan 2013 12:22

pando2 a écrit:Tu peux le donner ton script ??? 8)


Ah là là je me suis tromper de topic hier........:zen:

Donc SVP est d'excellente qualité et paramétrable à souhait . C'est la carte graphique qui se tape tout le boulot de resize et chez moi c'est aussi bien que le spline144 . Plus besoin non plus du LSFmod : je n'ai plus de flou sur les travelling (à tester sur le projo quand même) La GTX660 tiens pour moi toutes mes attentes : le test que j'avais trouvé sur les filtres mettait les ATI loin dérriére mais je n'arrivais pas à transposer les trés bon graphiques pour la Nvidia sur un film . Je ne voyais vraiment pas comment cela pouvait se traduire .

Ben là je vois le résultat et je suis bluffé :o

Pour le script c'est assez space . Voilà le contenu du fichier dont SVP se sert :

# This script was generated by SmoothVideo Project (SVP) Manager.
# Check http://www.svp-team.com for more details.

SetMemoryMax(1024)

global svp_scheduler=true
global threads=8
global svp_cache_fwd=threads+2

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

SetMTMode(3,threads)
ffdShow_source()
SetMTMode(2)

global crop_params=""
global resize_string=""
global super_params="{scale:{up:0},gpu:1,rc:true}"
global analyse_params="{main:{search:{coarse:{distance:-10},bad:{sad:2000}}},refine:[{thsad:65000}]}"
global smoothfps_params="{rate:{num:5,den:2},algo:13,scene:{}}"

global demo_mode=0
stereo_type=0

########## BEGIN OF MSMoothFps.avs ##########
# This file is a part of SmoothVideo Project (SVP) 3.1.3
# This is NOT the full AVS script, all used variables are defined via
# JavaScript code that generates the full script text.

function interpolate(clip src)
{
input = crop_params=="" ? src : eval("src.crop("+crop_params+")")
input = resize_string=="" ? input : eval("input."+resize_string)

super=SVSuper(input, super_params)
vectors=SVAnalyse(super, analyse_params, src=input)
smooth=SVSmoothFps(input, super, vectors, smoothfps_params, mt=threads, url="www.svp-team.com")

return demo_mode==0 ? smooth : demo(input,smooth)
}

input=last

stereo_type==0 ? eval(""" interpolate(input)
""") : stereo_type==1 || stereo_type==3 ? eval("""
lf = interpolate(input.crop(0,0,input.width/2,0))
rf = interpolate(input.crop(input.width/2,0,0,0))
StackHorizontal(lf, rf)
""") : stereo_type==2 || stereo_type==4 ? Eval("""
lf = interpolate(input.crop(0,0,0,input.height/2))
rf = interpolate(input.crop(0,input.height/2,0,0))
StackVertical(lf, rf)""") : input

########### END OF MSMoothFps.avs ###########
distributor()


Et voilà ce qui apparait dans la fenêtre d'Avisynth dans FFDshow :

global svppath="C:\ProgramData\SVP 3.1\"
Try {
import(svppath+"AVS\ffdshow.avs")
delim=":"
WriteFileStart(svppath+"Logs\SAR.txt", "ffdshow_sar_x","delim","ffdshow_sar_y")
WriteFileStart(svppath+"Logs\avsFPS.txt", "FramerateNumerator()", "delim", "FramerateDenominator()")
}
Catch(err_msg) {
ffdShow_source().Subtitle(err_msg)
WriteFileStart(svppath+"Logs\AVSError.txt", "err_msg")
}


Pour l'installer y a rien de plus facile : tu télécharges la version Lite ici : http://www.svp-team.com/wiki/Download et tu l'installes . Une fois fait copier tu fait clic de driote sur l'icone SVP Manager et tu coches Load automaticaly with Windows .

Mais attention je ne sais pas ce que ça donne sur une autre carte graphique que la 660 parce qu'elle se tape tout le taff niveau qualité d'image , le reste c'est tout au CPU . Je découve SVP donc je n'ai pas encore trouvé comment on modifier le script qui est employé .
McGayver
 
Messages: 22166
Inscription Forum: 12 Déc 2005 1:23
Localisation: Perdu au fin fond du Gers
  • offline

Message » 08 Jan 2013 12:54

kazuya a écrit:Avisynth 2.6.0.2
Sinon tu vas dans system32 ou 64 et tu passes ta souris au dessus de la dll avisynth, ça te donne la version.


Ah ok d'accord, et elle s'appelle avisynth.dll ?

Et donc, du coup ça me résoud pas mon pb de SetMTMode qui n'existe pas ?
sierramike
 
Messages: 2175
Inscription Forum: 01 Aoû 2006 12:05
Localisation: Bas-Rhin
  • offline

Message » 08 Jan 2013 14:46

Faut un bon cpu....et encore......

J'arrives pas à fusionner les 2 scripts . Celui de SVP efface systématiquement celui qu'on mets dans FFDshow . Perso j'ai ce que je voulais . Je ne suis pas passé par le chemin que je croyais mais le résultat est là c'est l'essentiel ; Ah oui je viens de découvrir un truc : faut regler dans SVP le Artifacts masking sur Strongest sinon dans les mouvements rapide de caméra ou ceux des acteurs il y a des patés de pixels qui apparaissent furtivement .
McGayver
 
Messages: 22166
Inscription Forum: 12 Déc 2005 1:23
Localisation: Perdu au fin fond du Gers
  • offline

Message » 08 Jan 2013 15:41

sierramike a écrit:
kazuya a écrit:Avisynth 2.6.0.2
Sinon tu vas dans system32 ou 64 et tu passes ta souris au dessus de la dll avisynth, ça te donne la version.


Ah ok d'accord, et elle s'appelle avisynth.dll ?

Et donc, du coup ça me résoud pas mon pb de SetMTMode qui n'existe pas ?


Va ici : http://forum.hardware.fr/hfr/VideoSon/T ... 8425_1.htm

Tu choppes la dll avisynth du 1er post, tu vires la dll du dossier SYSWOW64 si tu es en 64bits (garde la de côté au cas où) et tu mets celle la à la place...

Ensuite, tu vas dans la config de ffdshow vidéo, onglet avisynth et tu fais ca :

Décochez "Add ffdshow video source". Dans "Input color space" ne cochez que "YV12". Cochez "Buffer back/ahead" et mettez 0 / 6.


Ensuite, tu me dis si ça marche... :wink:
Squall777
 
Messages: 11169
Inscription Forum: 04 Mai 2006 21:21
Localisation: 91
  • offline

Message » 08 Jan 2013 16:22

Squall777 a écrit:
sierramike a écrit:
kazuya a écrit:Avisynth 2.6.0.2
Sinon tu vas dans system32 ou 64 et tu passes ta souris au dessus de la dll avisynth, ça te donne la version.


Ah ok d'accord, et elle s'appelle avisynth.dll ?

Et donc, du coup ça me résoud pas mon pb de SetMTMode qui n'existe pas ?


Va ici : http://forum.hardware.fr/hfr/VideoSon/T ... 8425_1.htm

Tu choppes la dll avisynth du 1er post, tu vires la dll du dossier SYSWOW64 si tu es en 64bits (garde la de côté au cas où) et tu mets celle la à la place...

Ensuite, tu vas dans la config de ffdshow vidéo, onglet avisynth et tu fais ca :

Décochez "Add ffdshow video source". Dans "Input color space" ne cochez que "YV12". Cochez "Buffer back/ahead" et mettez 0 / 6.


Ensuite, tu me dis si ça marche... :wink:


Ca j'ai déjà fait (la dernière citation), donc je vais tester cette histoire de DLL ce soir et je te dis ! En tous cas merci pour ton aide !
Ton lien est très instructif je suis en train de le parcourir vite fait j'approfondirai ces prochains soir (je doute qu'une soirée me suffise, y'a marqué au début qu'il faut pas faire en fin de soirée ;) )

J'ai encore une question à ce sujet, comme McGayver parle toujours de passer des calls via le GPU, la raison pour laquelle il a investi dans un grosse CG, comment fait-on pour faire passer un filtre par le GPU ? De base c'est par le CPU que ça passe si j'ai bien compris ?
sierramike
 
Messages: 2175
Inscription Forum: 01 Aoû 2006 12:05
Localisation: Bas-Rhin
  • offline

Message » 08 Jan 2013 16:27

Mac avait posté ceci:

McGayver a écrit:Ca dépend du script :

- Par le CPU : InterFrame(FlowPath="C:\Program Files (x86)\AviSynth 2.6\plugins\")

- Par le GPU : InterFrame(GPU=true, FlowPath="C:\Program Files (x86)\AviSynth 2.6\plugins\")

Il y a une variante si le script est encore trop lourd via le GPU on mets celui-là en perdant il parait au passage un peu de qualité . Perso sur le moniteur j'en ai vu aucune mais sur le vp surement que ça doit se voir :

- InterFrame(Preset="Very Fast", GPU=true, FlowPath="C:\Program Files (x86)\AviSynth 2.6\plugins\")
lucadoc
 
Messages: 730
Inscription Forum: 27 Fév 2007 22:13
Localisation: 95
  • offline

Message » 08 Jan 2013 16:31

Ouais . Par exemple pour l'Interframe pour le passer par le CPU c'est ça :

InterFrame(FlowPath="C:\Program Files (x86)\AviSynth 2.6\plugins\")

Et par le GPU c'est ça :

InterFrame(GPU=true, FlowPath="C:\Program Files (x86)\AviSynth 2.6\plugins\")

Bon , le chemin d'accés peut être différent .

Perso je ne suis pas arriver à le passer via le GPU sur la 660 mais sur la 9500 oui . Y a un truc qui m'échappe là :hein: Bon du coup vu les perfs en qualité d'image de la 660 je laisse tombé les scripts que j'avais et je me sert de SVP à la place de l'Interframe . Pour tout ce qui est resize je laisse faire la carte graphique avec MADvr au taquet dérriére . L'air de rien j'ai une charge GPU de 50% quand même , ce qui est trés bien mais j'oses pas imaginé si j'avais pris une 650...

Le CPU est à 50% de charge maxi aussi . Bref , j'ai encore un peu de marge pour bidouiller les filtres 8)
McGayver
 
Messages: 22166
Inscription Forum: 12 Déc 2005 1:23
Localisation: Perdu au fin fond du Gers
  • offline

Message » 08 Jan 2013 16:35

pando2 a écrit:Franchement Resize+SVP ...j'ai de gros doutes . :roll:


Bah si, largement même.
Pour ça par contre, faut éviter l'installateur d'SVP, qu'est un nid à emmerdements, et utiliser simplement les .dll.
C'est nettement plus complexe, par contre.

Code: Tout sélectionner
SetmtMode(3,X)
ffdshow_source()
SetMTMode(2) 
#SVP
svp_flow_lib="c:\XXX\AviSynth2.5\plugins\libflowgpu.dll" 
super=SVSuper("{pel:2,gpu:1,scale:{up:0,down:4}}")
vectors=SVAnalyse(super, "{gpu:1,block:{w:16,h:16,overlap:2},main:{search:{distance:0,satd:true,coarse:{type:4,distance:-10,satd:true,trymany:true,bad:{sad:1000,range:24}}},penalty:{lambda:20.0,plevel:4.0,lsad:16000,pnew:50,pglobal:50,pzero:100,pnbour:50,prev:0}}}")
SVSmoothFps(super, vectors, "{rate:{num:60,den:1,abs:true}, algo:13,block:false,cubic:1,mask:{cover:100,area:0,area_sharp:1.0},scene:{mode:3}}",
\ url="www.svp-team.com", mt=X)
#Algorithm [Robidoux]
dispWidth = 2560
dispHeight = 1440
mWidth = float(last.width)
mHeight = float(last.height)
ratio = (mWidth/mHeight)
newHeight= round((dispWidth/ratio)/8)*8
newHeight > dispHeight ? Eval("""
newHeight=dispHeight
newWidth=round((newHeight*ratio)/8)*8
""") : Eval("""
newWidth=dispWidth
""")
Bicubicresize(b=0.3782,c=0.3109,newWidth,newHeight)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last


On peut gagner en vitesse d'exé en passant les block à 32/32.
Ainsi, on peut rajouter un denoiser avant et un sharpen après le resize si nécessaire.
Dernière édition par _Eyldebrandt_ le 08 Jan 2013 16:38, édité 1 fois.
_Eyldebrandt_
 
Messages: 27
Inscription Forum: 31 Déc 2012 15:15
  • offline

Message » 08 Jan 2013 16:37

Salut Eyldebrandt, merci pour ta contribution ! :)
C'est quelque chose qu'il va falloir que je teste... :mdr:

La configuration dans mon profil


Etude et réalisation de Cinémas Privés, Calibration A/V, conception enceintes et Config Kaz 9 pour PCHC.
NEW nov 2024 :
Nouvelles pages à découvrir sur mon site: Isolation acoustique et correction acoustique ;-)
Avatar de l’utilisateur
kazuya
Pro-Divers.
Pro-Divers.
 
Messages: 19442
Inscription Forum: 19 Oct 2004 16:37
Localisation: Région Parisienne
  • offline

Message » 08 Jan 2013 16:39

_Eyldebrandt_ a écrit:
pando2 a écrit:Franchement Resize+SVP ...j'ai de gros doutes . :roll:


Bah si, largement même.
Pour ça par contre, faut éviter l'installateur d'SVP, qu'est un nid à emmerdements, et utiliser simplement les .dll.
C'est nettement plus complexe, par contre.

Code: Tout sélectionner
SetmtMode(3,X)
ffdshow_source()
SetMTMode(2) 
#SVP
svp_flow_lib="c:\XXX\AviSynth2.5\plugins\libflowgpu.dll" 
super=SVSuper("{pel:2,gpu:1,scale:{up:0,down:4}}")
vectors=SVAnalyse(super, "{gpu:1,block:{w:16,h:16,overlap:2},main:{search:{distance:0,satd:true,coarse:{type:4,distance:-10,satd:true,trymany:true,bad:{sad:1000,range:24}}},penalty:{lambda:20.0,plevel:4.0,lsad:16000,pnew:50,pglobal:50,pzero:100,pnbour:50,prev:0}}}")
SVSmoothFps(super, vectors, "{rate:{num:60,den:1,abs:true}, algo:13,block:false,cubic:1,mask:{cover:100,area:0,area_sharp:1.0},scene:{mode:3}}",
\ url="www.svp-team.com", mt=X)
#Algorithm [Robidoux]
dispWidth = 2560
dispHeight = 1440
mWidth = float(last.width)
mHeight = float(last.height)
ratio = (mWidth/mHeight)
newHeight= round((dispWidth/ratio)/8)*8
newHeight > dispHeight ? Eval("""
newHeight=dispHeight
newWidth=round((newHeight*ratio)/8)*8
""") : Eval("""
newWidth=dispWidth
""")
Bicubicresize(b=0.3782,c=0.3109,newWidth,newHeight)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last


On peut gagner en vitesse d'exé en passant les block à 32/32.
Ainsi, on peut rajouter un denoiser avant et un sharpen après le resize si nécessaire.

:thks:

Bon je viens de tester.
Déjà ça fonctionne, en 60hrz chez moi. Pour ma part les compliments s’arrête là . :oops:
Je ne suis définitivement pas très fan d'interpolation.
Là j'ai de "bon gros pâtés" autour des objets ou personnes en mouvement, mais j'imagine qu'il y a moyen d'y remédier. J'ai quand même rajouté un sharp d'ffdshow parce que là c'est vraiment flou. :wink:
Dernière édition par Goldfinger67 le 08 Jan 2013 17:03, édité 1 fois.
Goldfinger67
 
Messages: 6932
Inscription Forum: 18 Nov 2008 15:34
Localisation: Aveyron
  • offline

Message » 08 Jan 2013 16:40

Ouaip merci pour les infos j'avais bien vu mais on ne parle que de interframe là, ou est ce que le "GPU=true" s'applique à n'importe quel filtre ?

Parce que par exemple FineSharp ou Seesaw, ou encore UnsharpHQ, DeGrainMedian, FluxSmoothST, Flash3kyuu_deband etc., on peut aussi les passer via le GPU au choix quand le CPU arrive au taquet ou c'est uniquement CPU pour ces calls ?
sierramike
 
Messages: 2175
Inscription Forum: 01 Aoû 2006 12:05
Localisation: Bas-Rhin
  • offline

Message » 08 Jan 2013 22:24

kazuya a écrit:Avisynth 2.6.0.2
Sinon tu vas dans system32 ou 64 et tu passes ta souris au dessus de la dll avisynth, ça te donne la version.


Euh, question : pourquoi le répertoire s'appelle AviSynth 2.5 ?
sierramike
 
Messages: 2175
Inscription Forum: 01 Aoû 2006 12:05
Localisation: Bas-Rhin
  • offline

Message » 08 Jan 2013 23:00

C'est parce que l'installateur à mal configurer : au lieu de mettre 2.6 on a 2.5 mais c'est bien la 2.6 que tu as . Chez moi c'est la même chose .
McGayver
 
Messages: 22166
Inscription Forum: 12 Déc 2005 1:23
Localisation: Perdu au fin fond du Gers
  • offline

Message » 09 Jan 2013 0:03

McGayver a écrit:C'est parce que l'installateur à mal configurer : au lieu de mettre 2.6 on a 2.5 mais c'est bien la 2.6 que tu as . Chez moi c'est la même chose .


Ok c'est bon, ça marche !

Squall777 a écrit:
sierramike a écrit:
kazuya a écrit:Avisynth 2.6.0.2
Sinon tu vas dans system32 ou 64 et tu passes ta souris au dessus de la dll avisynth, ça te donne la version.


Ah ok d'accord, et elle s'appelle avisynth.dll ?

Et donc, du coup ça me résoud pas mon pb de SetMTMode qui n'existe pas ?


Va ici : http://forum.hardware.fr/hfr/VideoSon/T ... 8425_1.htm

Tu choppes la dll avisynth du 1er post, tu vires la dll du dossier SYSWOW64 si tu es en 64bits (garde la de côté au cas où) et tu mets celle la à la place...

Ensuite, tu vas dans la config de ffdshow vidéo, onglet avisynth et tu fais ca :

Décochez "Add ffdshow video source". Dans "Input color space" ne cochez que "YV12". Cochez "Buffer back/ahead" et mettez 0 / 6.


Ensuite, tu me dis si ça marche... :wink:


Voilà donc comme dit : ça marche !

Bon mon CPU est bien à la ramasse pour passer des calls ...

Sur source DVD, je peux juste passer FluxSmoothST, FIneSharp et UnsharpHQ. Je voulais débloquer avec SmoothD2 mais même tout seul il ne passe pas ... Pareil, je voulais débander (mouarf !!!) avec Flash3kyuu_deband, et ça passe pas non plus ... Par contre avec mes 3 calls je suis à 50% de CPU et 50% de GPU. Vais essayer d'ajouter un upscale dans avisynth pour voir si ça passe ;-)


Par contre j'ai trouvé THE application pour surveiller l'occupation système, tout compris : voltages températures, utilisation CPU par cores, utilisation mémoire, swap, utilisation GPU, mémoire vidéo etc., transmission réseau, occupation disques, la totale, en plus c'est gratuit, et SURTOUT : y'a un petit soft "serveur" qui s'installe sur le PC, et l'application de visualisation qui s'installe sur Android, donc smartphone ou tablette, du coup assis dans le canapé avec juste la télé sous les yeux, tu fais tes modifs sur tes calls, tu fais "appliquer" et tu vois direct sur la tablette ce que ça change en occupation ressources ! Pas besoin de double écran, pas besoin de faire tourner en arrière plan et après regarder les courbes, c'est du live !!!

McGayver chuis sûr que ça va te plaire : https://play.google.com/store/apps/details?id=com.trigonesoft.rsm&hl=fr
sierramike
 
Messages: 2175
Inscription Forum: 01 Aoû 2006 12:05
Localisation: Bas-Rhin
  • offline


Retourner vers Logiciel PC Home-cinéma

 
  • Articles en relation
    Dernier message