Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Jigsaw et 9 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 » 20 Mar 2014 14:04

Emmanuel Piat a écrit:Autrement dit "c" est mis en 1er param dans le 1er appel à spline144resize. Ensuite "c" ne doit plus être mis en 1er param du deuxième appel spline144resize car par défaut un filtre avisynth traite tjrs la dernière image processée, donc ici celle fournie par le 1er spline144resize (variable implicite last).

C'est justement pour user de cet appel implicite à "last" que les deux scripts commencent par la ligne "c".
La syntaxe comme tu la proposes n'a pas d'incidence sur l'exécution, mais ajoute le risque qu'on oublie de remettre "c" en premier paramètre du premier filtre d'un autre scrit qu'on souhaiterait etudier ;).

Mettre un return à la fin est aussi préférable en terme de coding.

"return last" du coup, pour être vraiment rigoureux :).
Avatar de l’utilisateur
Dialhot
Supervision Technique Forum
Supervision Technique Forum
 
Messages: 30653
Inscription Forum: 25 Aoû 2005 13:26
Localisation: Doral, FL
  • offline

Message » 20 Mar 2014 14:46

Bonjour Emmanuel et merci pour tes conseils.

Mettre un return à la fin est aussi préférable en terme de coding.

Dès que je le mets, avisynth le supprime donc je n'ai pas trop le choix... J'essaye toujours de faire mes codages le plus lisible possible mais apparemment ffdshow reformate le code à sa façon.
Le spline144 génère énormément de ringing et n'est vraiment pas propre. Je le déconseille. Voir ici des appariements up/down qui sont quasiment artefact-free (il suffit ensuite d'adapter les valeurs de sharpness proposées à son propre diffuseur)

D'après toi, quel est le meilleurs algo d'upscaling sachant que je traite le downscaling via madvr (lanczcos + AR + LL).
Lanczos3? En mode 2 tu utilises le blackman4, tu le conseilles également pour un videoprojecteur?
Il faut cependant vérifier que ffdshow ne permet pas d'emblée de faire cela en cochant la boite processing half image qu'on a sur tous les filtres me semble t'il (je ne peux pas vérifier car je n'ai pas ffdshow sur mon portable...).

J'avais déjà pensé à cela mais ffdshow ne propose pas une telle option. Tu as seulement "Process whole image".
Dernière édition par Francois76l le 20 Mar 2014 16:22, édité 3 fois.
Francois76l
 
Messages: 915
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • offline

Message » 20 Mar 2014 16:11

Hello Emmanuel,

peut-on considerer un plasma dans la categorie "high ANSI" ? Autrement dit, ton script NaturalFullHD est-il applicable tel quel ou bien faut-il renforcer la puissance des sharpen ? D'ailleurs plus naivement :oops: , un plasma a-t-il besoin de d'autant de post-traitement sur l'image ? En utilisant le script avisynth de comparaison de francois76l Je n'ai pas l'impression que ceux que j'ai essayé jusqu'à present modifient "sensiblement" l'mage meme sur un 65"...
mike525914
 
Messages: 375
Inscription Forum: 03 Juin 2004 16:58
Localisation: Calvados
  • offline

Message » 20 Mar 2014 19:12

Emmanuel Piat a écrit:L'idée de faire un petit script qui coupe l'image en deux et la duplique avec le post traitement appliqué sur une moitié est sympa. Il faut cependant vérifier que ffdshow ne permet pas d'emblée de faire cela en cochant la boite processing half image qu'on a sur tous les filtres me semble t'il (je ne peux pas vérifier car je n'ai pas ffdshow sur mon portable...).


Salut Emmanuel,

Merci d'avoir pris un peu de ton précieux temps pour nous répondre.
Concernant ffdshow, c'est effectivement le 1er réflexe que j'ai eu, malheureusement l'option process "only right half" image est disponible pour les filtres ffdshow mais grisée pour avisynth. Mon but était de faciliter le peaufinage de mes scripts et avoir une comparaison immédiate à l'écran sur une même portion de l'image et en mouvement, car certains défauts n'apparaissent pas toujours sur une image figée.
D'où la 1ère étape : écriture d'un script avisynth visant à comparer en direct (écran splitté) le rendu de 2 scripts de post-traitement. Cette 1ère étape a été franchie.
La seconde étape était de pouvoir travailler sur des images en mouvement, et pas sur une image figée. MPC-HC ne le permettant pas, j'ai donc cherché un player capable de fournir les mêmes fonctionnalités que MPC-HC (renderer madVR, ffdshow, avisynth) avec la fonctionnalité "Repeat A-B".
J'ai retenu PotPlayer (il y en qq autres).

Ainsi, je trouve plus aisé de régler finement par exemple un réglage de sharpen en direct live, en mouvement, sur différentes vidéos.

La 3ème étape sera de compiler une vidéo avec des extraits de passages de différents films afin d'éviter que le script ne soit valable que pour une vidéo donnée.

Je pense ensuite créer plusieurs variantes de scripts en fonction de la qualité de la vidéo.
Je réfléchis quant à une méthode de pouvoir choisir automatiquement un script (preset) en fonction de la qualité vidéo mais je n'ai pas vu de méthode de détection automatique de la qualité d'un film (bruit, résolution, etc).
Je pense donc pour le moment, classifier moi-même mes films, en les visualisant rapidement par exemple à l'aide de VLC, puis en les suffixant par exemple avec une chaîne de caractère représentatif de la qualité observée (liée au traitement à effectuer).

Par exemple :

B pour bruit suivi d'un chiffre
B0 pour pas ou très peu de bruit
B1 pour un peu de bruit
B2 pour bruit modéré
B3 pour bruit élevé

Idem ensuite pour la netteté
N pour Netteté suivi d'un chiffre
N1 pour netteté faible
N2 pour netteté moyenne
N3 pour netteté élevée

Donc je pensais suffixer mes vidéos par un truc du genre :

BxNy
où Bx est le bruit constaté dans la vidéo
où Ny est la résolution / netteté constatée dans la vidéo

Et donc écrire les scripts qui tiennent compte de BxNy

Qu'en penses-tu de tout cela ?

Merci
A+
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 20 Mar 2014 21:11

mike525914 a écrit:Hello Emmanuel,

peut-on considerer un plasma dans la categorie "high ANSI" ? Autrement dit, ton script NaturalFullHD est-il applicable tel quel ou bien faut-il renforcer la puissance des sharpen ? D'ailleurs plus naivement :oops: , un plasma a-t-il besoin de d'autant de post-traitement sur l'image ? En utilisant le script avisynth de comparaison de francois76l Je n'ai pas l'impression que ceux que j'ai essayé jusqu'à present modifient "sensiblement" l'mage meme sur un 65"...


Oui les plasma sont des high ANSI. Ensuite pour les réglages des param, c'est à chacun de voir en fonction de ses goût, je n'ai aucun conseil à donner car c'est ultra dépendant du diffuseur et des goûts de l'utilisateur. Par exemple, je ne pourrais jamais regarder une vidéo avec des settings aussi poussés que ceux de Francois76l car d'après des snapshots qu'il a posté sur un autre forum, si la source a déjà du EE, celui-ci est vraiment renforcé.
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10429
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 20 Mar 2014 21:21

D'après toi, quel est le meilleurs algo d'upscaling sachant que je traite le downscaling via madvr (lanczcos + AR + LL).
Lanczos3? En mode 2 tu utilises le blackman4, tu le conseilles également pour un videoprojecteur?


Au delà du blackman4, spline36 et lanczos3, j'estime que les artefacts de ringing deviennent trop forts et il vaut mieux compenser en poussant davantage le LSFHC qui a une action plus "intelligente" en terme de sharpness que l'algo d'upscaling (en donc engendrera moins d'artefacts).
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10429
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 20 Mar 2014 21:30

Je suis pourtant modéré par rapport aux scripts que je peux voir ci et là. Sur une base de 2,44m si je ne pousse pas autant je trouve l'image bien fade. Je sais que tu préconise un lsfhc à 20 maxi et un unsharhq à 0,4 max mais je trouve cela beaucoup trop léger (je suis à 40 et à 1.2 respectivement). Après je ne regarde pas l'image au pixel près. Je cherche juste à me faire plaisir. Sur mon plasma de 50" je n'ai pas besoin de pousser autant mais sur un 110" c'est une autre histoire :-)
Je n'ai pas la sensation d'avoir une image dure, ça reste naturel selon moi. Les goûts et les couleurs...
:)

Sinon j'ai remplacé mon algo d'upscaling par le blackman4 et je suis très satisfait du résultat (merci!). Je laisse madvr faire le downscaling.
Francois76l
 
Messages: 915
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • offline

Message » 20 Mar 2014 21:34

Emmanuel Piat a écrit:
mike525914 a écrit:Hello Emmanuel,

peut-on considerer un plasma dans la categorie "high ANSI" ? Autrement dit, ton script NaturalFullHD est-il applicable tel quel ou bien faut-il renforcer la puissance des sharpen ? D'ailleurs plus naivement :oops: , un plasma a-t-il besoin de d'autant de post-traitement sur l'image ? En utilisant le script avisynth de comparaison de francois76l Je n'ai pas l'impression que ceux que j'ai essayé jusqu'à present modifient "sensiblement" l'mage meme sur un 65"...


Oui les plasma sont des high ANSI. Ensuite pour les réglages des param, c'est à chacun de voir en fonction de ses goût, je n'ai aucun conseil à donner car c'est ultra dépendant du diffuseur et des goûts de l'utilisateur. Par exemple, je ne pourrais jamais regarder une vidéo avec des settings aussi poussés que ceux de Francois76l car d'après des snapshots qu'il a posté sur un autre forum, si la source a déjà du EE, celui-ci est vraiment renforcé.


Merci pour ton retour. Je vais continuer a expérimenter jusqu’à trouver ce qui me plait le plus.
mike525914
 
Messages: 375
Inscription Forum: 03 Juin 2004 16:58
Localisation: Calvados
  • offline

Message » 20 Mar 2014 21:43

Olivier, perso je trouve que si un algo de post-traitement n'est pas passe-partout ds 95% des cas, c'est le début de l'enfer... Il n'y a rien de plus pénible que d'avoir à ajuster la gradation des post-traitements en faisant des tests... (par ailleurs, ton idée n'est pas applicable aux BRD). Et lorsque tu changeras de diffuseur, il y a fort à parier qu'il faudra que tu revois toute ta hiérarchie de réglage.

Le petit script que j'ai mis sur HDfever me donne satisfaction sur mon moniteur 24" avec quasiment toutes les sources 1080p via mode=2. Il n'y a que pour les DA que je pousse à mode=3...
J'en ferai un autre du même acabit lorsque j'aurais à nouveau un projo. Ensuite je stocke chaque settings de ffdshow pour chacun de mes diffuseurs dans un fichier .reg différents qui me permet de mettre à jour ma BdR avant visionnage avec un diffuseur donné en cliquant sur le .reg correspondant. C'est archaïque mais efficace. On peut facilement améliorer les choses en faisant un petit script associé à une icône du bureau qui (i) met à jour la BdR pour les settings de ffdshow puis (ii) lance automatiquement MPC-HC... Il y a plein de langages de scripting gratuits qui permettent de faire ça.
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10429
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 20 Mar 2014 21:59

Je suis pourtant modéré par rapport aux scripts que je peux voir ci et là. Sur une base de 2,44m si je ne pousse pas autant je trouve l'image bien fade. Je sais que tu préconise un lsfhc à 20 maxi et un unsharhq à 0,4 max mais je trouve cela beaucoup trop léger (je suis à 40 et à 1.2 respectivement).


C'est parce que mes settings sont pour des moniteurs qui ont une excellente acutance et qui sont regardés à 50cm de distance... Dans ces conditions, tous les défauts sautent aux yeux dès qu'on pousse les settings. Dès que tu as une optique à la place, ce n'est plus du tout la même chanson. Par exemple, je ne suis absolument pas étonné du doublement des valeurs si la MTF du projo se casse la gueule sur une mire 1 pixel... Mais dans ce cas, les approches combinant up puis downscaling ne sont pas forcément les plus intéressantes vu que le projo a déjà un rendu très analogique... Un bête LSFHC combiné à un unsharpmask pourrait donner un résultat plus probant. Les settings que je préconise ne sont valables que si le projo rend une mire 1 pixel avec un excellent contraste interpixel (cas des moniteurs).
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10429
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 20 Mar 2014 22:35

Emmanuel Piat a écrit:
Je suis pourtant modéré par rapport aux scripts que je peux voir ci et là. Sur une base de 2,44m si je ne pousse pas autant je trouve l'image bien fade. Je sais que tu préconise un lsfhc à 20 maxi et un unsharhq à 0,4 max mais je trouve cela beaucoup trop léger (je suis à 40 et à 1.2 respectivement).


C'est parce que mes settings sont pour des moniteurs qui ont une excellente acutance et qui sont regardés à 50cm de distance... Dans ces conditions, tous les défauts sautent aux yeux dès qu'on pousse les settings. Dès que tu as une optique à la place, ce n'est plus du tout la même chanson. Par exemple, je ne suis absolument pas étonné du doublement des valeurs si la MTF du projo se casse la gueule sur une mire 1 pixel... Mais dans ce cas, les approches combinant up puis downscaling ne sont pas forcément les plus intéressantes vu que le projo a déjà un rendu très analogique... Un bête LSFHC combiné à un unsharpmask pourrait donner un résultat plus probant. Les settings que je préconise ne sont valables que si le projo rend une mire 1 pixel avec un excellent contraste interpixel (cas des moniteurs).

Donc plus adapté aux DLPs pour simplifier ! 8)
Goldfinger67
 
Messages: 6931
Inscription Forum: 18 Nov 2008 15:34
Localisation: Aveyron
  • offline

Message » 22 Mar 2014 11:46

Emmanuel Piat a écrit:Olivier, perso je trouve que si un algo de post-traitement n'est pas passe-partout ds 95% des cas, c'est le début de l'enfer... Il n'y a rien de plus pénible que d'avoir à ajuster la gradation des post-traitements en faisant des tests... (par ailleurs, ton idée n'est pas applicable aux BRD). Et lorsque tu changeras de diffuseur, il y a fort à parier qu'il faudra que tu revois toute ta hiérarchie de réglage.

Le petit script que j'ai mis sur HDfever me donne satisfaction sur mon moniteur 24" avec quasiment toutes les sources 1080p via mode=2. Il n'y a que pour les DA que je pousse à mode=3...
J'en ferai un autre du même acabit lorsque j'aurais à nouveau un projo. Ensuite je stocke chaque settings de ffdshow pour chacun de mes diffuseurs dans un fichier .reg différents qui me permet de mettre à jour ma BdR avant visionnage avec un diffuseur donné en cliquant sur le .reg correspondant. C'est archaïque mais efficace. On peut facilement améliorer les choses en faisant un petit script associé à une icône du bureau qui (i) met à jour la BdR pour les settings de ffdshow puis (ii) lance automatiquement MPC-HC... Il y a plein de langages de scripting gratuits qui permettent de faire ça.


Merci pour ton avis ;-)

En fait, je trouve certains films bruités et d'autres non. Idem pour la résolution, certains films sont plus piqués que d'autres je trouve.
Dans 90% je n'utilise qu'un seul preset ffdshow / script avs 1080p.
Mais dans 10% des cas j'aurais envie de moins pousser / plus pousser la netteté que d'autres, ou débruiter (anciens films notamment)
En fait, c'est juste pour ces films là que j'ai envie de créer des scripts un peu plus adaptés.
Je réfléchis quant à la manière de le faire.
Ptet en changeant de preset ffdshow manuellement ou en rajoutant un suffixe au nom du fichier qui décrive le post-traitement à effectuer.
Je ne sais pas encore...

EDIT : Oui tu as raison pour le suffixe du fichier, ce n'est pas une bonne idée par rapport aux BRD.
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 23 Mar 2014 23:47

Francois76l a écrit:Lanczos4Resize(last.width,round(ss*last.height/8)*8) #.repair(gaussresize(p=100),mode=1)


Hello ;-)

Tu as désactivé le repair ?
Tu voulais comparer avec et sans ?
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 28 Mar 2014 11:04

Bonjour,

Pour les config petite/moyenne...
Ma config : I3 4130t + ATI 5750 + 4go ram + BENQ W1070

Moi j'utilise ce call la pour le 1080P :
Code: Tout sélectionner
SetMTMode(3,0)
ffdshow_source()
SetMTMode(2)
#UpScale by Lanczcos3
ss=1.333
lanczosResize(taps=3,round(ss*last.width/8)*8,last.height)
lanczosResize(taps=3,last.width,round(ss*last.height/8)*8)
#Deband
GradFun2db()
#Sharpen
LimitedSharpenFasterHC(strength=40)
#Unsharp Mask
unsharpHQ(str=1.2)
SetMTMode(1) 
GetMTMode(false) > 0 ? distributor() : last


J'ai dans MADVR jinc 3taps + laczos 8taps + laczos 4taps le tt avec AR AL ..

Si je mets 8taps pour le downscale, j'ai des drops pour les 1080P 3D et les films full screen comme Pacific Rim uniquement.
Le reste en 1080p24 passe sans drop, processeur 70%.

Je ne sais pas mettre le denoiser, ca rame... existe-t-il un denoiser léger ? :oldy:
La config tient la route? :)

J'ai une petite question sur l'output: Avec CTRL+J dans MPC j'ai H264 4:2:0 -> YUV 4:2:0 ; pourtant je suis en Full RGB sur le projo et dans les options de ati,..
J'ai remarqué dans l'onglet output de FFDSHOW j'ai YUV + RGB +RGB32 de coché, si je décoche YUV alors je passe en -> RGB32 ...
Dans RGB conversion, j'ai projector de selectionné (16-255)..
Qu'est ce qui est mieux niveau config? Quel est le meilleur choix à faire?

Merci,
playa21
 
Messages: 23
Inscription Forum: 31 Jan 2013 20:59
  • offline

Message » 28 Mar 2014 11:38

voila je vient de lire les dernieres pages donc j ai modifié mon call et mon algo en le remplacent par blackman tap3
Seulement avec ss1.33 j avait une image sans bande limite 4/3 enfin bien déformé,donc j ai remplacé ss par les lignes
dispWidth = 2880
dispHeight = 1620

J ai bien coché RGB32 et configuré comme expliqué pour ne plus downscaler par mad vr mais par ffdshow (enfin si j ai bien tout compris)
et donc voici mon call

SetMTMode(3,0)
ffdshow_source()
SetMTMode(2)
#HistogramY(ratio=0,offset=10,showline=false)
#Denoiser
TTempSmooth(maxr=2,lthresh=3,cthresh=2,lmdiff=2,cmdiff=1,strength=1,interlaced=false)
#Algorithm I [Blackman]
dispWidth = 2880
dispHeight = 1620
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
""" )
LimitedSharpenFasterHC(strength=40)
UnsharpHQ(THRESHOLD=20,SHARPSTR=0.35,SHOW=false)
BlackmanResize(taps=3,newWidth,newHeight)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last


j aimerait savoir si c est correct et surtout j aimerait savoir la difference entre
SetMTMode(2) et SetMTMode(3)
voila merci d avance
anthoflush
 
Messages: 290
Inscription Forum: 28 Mai 2013 13:45
  • offline


Retourner vers Logiciel PC Home-cinéma

 
  • Articles en relation
    Dernier message