Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Esscobar, Playoda 62 et 14 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 » 19 Mar 2014 17:47

Moi je peux te dire que si vouz continuez à poster des images provenant de "mkv 1080p" qui ne peuvent provenir que de source protégées contre la copie, je vais devoir sevir ^^
Alors ça ira pour cette fois mais juste pour cette fois.
Avatar de l’utilisateur
Dialhot
Supervision Technique Forum
Supervision Technique Forum
 
Messages: 30691
Inscription Forum: 25 Aoû 2005 13:26
Localisation: Doral, FL
  • offline

Message » 19 Mar 2014 17:51

Francois76l a écrit:Voici mon script de comparaison (inspiré de celui de Dialhot)
J'y ai ajouter le script avisynth que j'utilise pour mes mkv 1080p. Il est appliqué sur une partie de l'image (upscale et downscale compris l'autre partie étant totalement inchangée)


J'allais t'envoyer le mien, mais il est quasi identique (à qq nuances de syntaxe près)

Francois76l a écrit:C'est vraiment top pour voir le gain obtenu grâce à avisynth! Merci pour cette superbe idée Olivier!


Je t'en prie, ça me fait plaisir de savoir qu'il y a en au moins un qui est content et qui partage les mêmes idées que moi :ane:

Le temps qu'on va gagner à comparer différents réglages d'UnsharpHQ, filtres de netteté, denoisers, etc :D
Maintenant, je vais me trouver un autre player que mpc-hc (Pot-player au hasard) qui gère le repeat A-B.
Comme ça, quand je veux bosser sur une scène sensible (bruit, netteté, double contours, etc) pour peaufiner un script ou pour confronter différents réglages ou différents filtres en Live, mais avec du mouvement (hé oui, le bruit en plus d'être spatial peut être temporel, la chroma se bosse bcp en anim aussi) --> repeat A-B dans un autre player, les modifs de filtre en live, la comparaison en direct live des effets du filtre .... :D

J'ai encore d'autres idées pour améliorer le process d'optimisation des filtres avisynth mais j'en parlerai peut-être après avoir expérimenté (si ça vaut le coup).
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:10

Dialhot a écrit:Moi je peux te dire que si vouz continuez à poster des images provenant de "mkv 1080p" qui ne peuvent provenir que de source protégées contre la copie, je vais devoir sevir ^^
Alors ça ira pour cette fois mais juste pour cette fois.


Bien reçu , merci
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:13

J'ai une autre question : serait-il possible de demander à un modo de centraliser qq infos que nous déciderons de compiler en 1ère page ?
Genre des scripts type, des astuces, des scripts utiles, etc ?

Dans un deuxième temps on pourrait faire un top tuto s'il y a de la demande, mais ça prendrait du temps :-?
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:16

Dialhot a écrit:Moi je peux te dire que si vouz continuez à poster des images provenant de "mkv 1080p" qui ne peuvent provenir que de source protégées contre la copie, je vais devoir sevir ^^
Alors ça ira pour cette fois mais juste pour cette fois.


Pas de problème Dialhot, ça ne se reproduira pas
Et si je précise m2ts/bluray ça passe?
Francois76l
Pro-Commercant
Pro-Commercant
 
Messages: 1016
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • online

Message » 19 Mar 2014 18:36

C'est un eternel débat, mais pour lire les bluray avec ffdshow (via MPC-HC j'imagine) il faut faire sauter les protections, car seuls les logiciels licenciés peuvent lire les disques directement.
J'ai toujours toléré l'usage d'outils bypassant le les protections dans une chaine de lecture (par opposition à faire un rip), mais ce serait tirer sur la corde que de trop jouer sur cette tolérance, alors que vous pouvez très bien illustrer vos scripts avec d'autres choses. Un trailer HD par exemple, mais mettez le lien vers la source du coup, ça servira à d'autres pour comparer avec leurs propres scripts ;)

On trouve plein de trailers ici par exemple: http://www.hd-trailers.net/
Avatar de l’utilisateur
Dialhot
Supervision Technique Forum
Supervision Technique Forum
 
Messages: 30691
Inscription Forum: 25 Aoû 2005 13:26
Localisation: Doral, FL
  • offline

Message » 19 Mar 2014 18:37

Francois76l a écrit:BorderWidth = 10 #Taille de la bordure en pixels
Left = crop(0,0,-newWidth/2-BorderWidth ,0).AddBorders(0,0,BorderWidth ,0)
Right = crop(newWidth/2 ,0,0,0)


La bordure c'est aussi un truc que je voulais rajouter ;-)
Par contre, je pige pas trop, tu crop pas les mêmes parties de la vidéo ?
Je trouve perso que c'est plus dur à comparer de cette manière.
Dans mon script, j'ai cropé les mêmes parties de vidéo pour pouvoir comparer l'influence de 2 réglages différents ou 2 scripts différents sur la même partie de l'image.
Qu'en penses-tu ?

Par ailleurs, je n'ai pas mis le downscale dans avisynth qui effectivement, permet de faire un vrai Avant/ Après pour la raison suivante :
Si je veux voir un vrai Avant / Après, il n'y a pas d'autre manière que de changer de renderer (EVR par exemple), mettre un profil ffdshow sans traitement et faire un screenshot puis faire un second screenshot avec madVR + avisynth. Ou alors utiliser VLC et comparer avec MPC-HC + madVR + ffdshow + Avisynth
L'autre raison, c'est que le downscale dans avisynth n'est qu'une approximation du Lanczos AR + LL fait dans madVR. Je pense que tu t'en rapproches avec le Repair mais de ce que j'ai lu, personne n'a encore réussi à simuler un Lanczos 4 taps ou 8 taps AR + LL que madVR possède.

En fait, mon but est de peaufiner mes scripts de post-traitement.
Dans Avant : je place mon script qui me convient déjà
Dans Après : je bosse sur le script en essayant différents réglages sur les filtres (UnsharpHQ, sharpen, denoiser éventuel, etc) et je regarde si je régresse ou si je progresse d'un pas. Et ainsi de suite.

Pour schématiser :

Admettons que 0 soit la qualité sans post-traitement (SP)
Admettons que 100 soit la qualité avec post-traitement et qu'on souhaite améliorer ce post-traitement (P1)
Admettons que 110 soit la qualité avec un post-traitement amélioré (P2) par rapport à (P1) : P2 > P1

Il me parait en fait plus facile de confronter P2 à P1 (110 > 100)
que de confronter P1 à SP (100 > 0) puis P2 à SP (110 > 0)
et d'essayer de se remémorer si P2/SP va plus loin que P1/SP.

c'est pour cela que mon script n'a pas pour but de simuler un vrai "Avant", même si c'est possible en théorie de le faire (un peu moins en pratique car les outils permettant de simuler madVR dans avisynth n'existent pas vraiment.

Voilà mon point de vue ;-)
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:38

@Dialhot
ok pas de problème, c'est très clair et tout à fait compréhensible
Francois76l
Pro-Commercant
Pro-Commercant
 
Messages: 1016
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • online

Message » 19 Mar 2014 18:41

Dialhot a écrit:C'est un eternel débat, mais pour lire les bluray avec ffdshow (via MPC-HC j'imagine) il faut faire sauter les protections, car seuls les logiciels licenciés peuvent lire les disques directement.
J'ai toujours toléré l'usage d'outils bypassant le les protections dans une chaine de lecture (par opposition à faire un rip), mais ce serait tirer sur la corde que de trop jouer sur cette tolérance, alors que vous pouvez très bien illustrer vos scripts avec d'autres choses. Un trailer HD par exemple, mais mettez le lien vers la source du coup, ça servira à d'autres pour comparer avec leurs propres scripts ;)

On trouve plein de trailers ici par exemple: http://www.hd-trailers.net/


Oui, pourtant je le sais tu l'avais déjà répété, mais j'oscille entre différents forums (doom9 etc) et j'avoue honteusement que parfois je vais un peu vite et que j'en viens à mélanger les règles des différents forums :oops:
Ceci dit, et ce n'est pas pour me défendre, j'ai plein de HD-DVD / Blu-Ray que je lis sur mon PC et que je souhaite post-traiter ... de façon peu avouable :oops:
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:49

Olivier C. a écrit:La bordure c'est aussi un truc que je voulais rajouter ;-)
Par contre, je pige pas trop, tu crop pas les mêmes parties de la vidéo ?
Je trouve perso que c'est plus dur à comparer de cette manière.
Dans mon script, j'ai cropé les mêmes parties de vidéo pour pouvoir comparer l'influence de 2 réglages différents ou 2 scripts différents sur la même partie de l'image.
Qu'en penses-tu ?

Effectivement c'est mieux de travailler sur la même partie. Je te rejoins la dessus ;)
C'est très facile à mettre en œuvre en plus. je vais le faire également de mon côté :thks:

Olivier C. a écrit:Par ailleurs, je n'ai pas mis le downscale dans avisynth qui effectivement, permet de faire un vrai Avant/ Après pour la raison suivante :
Si je veux voir un vrai Avant / Après, il n'y a pas d'autre manière que de changer de renderer (EVR par exemple), mettre un profil ffdshow sans traitement et faire un screenshot puis faire un second screenshot avec madVR + avisynth. Ou alors utiliser VLC et comparer avec MPC-HC + madVR + ffdshow + Avisynth
L'autre raison, c'est que le downscale dans avisynth n'est qu'une approximation du Lanczos AR + LL fait dans madVR. Je pense que tu t'en rapproches avec le Repair mais de ce que j'ai lu, personne n'a encore réussi à simuler un Lanczos 4 taps ou 8 taps AR + LL que madVR possède.

Je comprends bien. Mon but était de visualiser l'impact d'avisynth sur la vidéo (en négligeant l'aspect MadVr). ça deviendrait vite compliqué, voir impossible d'utiliser deux renderer différent sur la même vidéo.
Pour l'histoire du downscaling, on est bien d'accord que je n'utilise pas exactement le même algo que MadVr mais on s'en rapproche et ça donne une idée de l'avant/après.
Nous sommes partis sur deux optiques différentes. Tu cherches à améliorer ton script actuel et moi je cherche le gain par rapport à l'image brute. Mais je vais également faire à ta façon pour modifier mes scripts (en renseignant correctement le script1 et en laissant Madvr downscaler la vidéo).
Mon exemple était purement démonstratif pour montrer la puissance d'avisynth ;)
Dernière édition par Francois76l le 19 Mar 2014 18:51, édité 1 fois.
Francois76l
Pro-Commercant
Pro-Commercant
 
Messages: 1016
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • online

Message » 19 Mar 2014 18:50

Quelqu'un connaît ce plugin ? :

http://avisynth.nl/index.php/HQDering_mod
Olivier C.
 
Messages: 2812
Inscription Forum: 19 Sep 2001 2:00
Localisation: Yutz (Nord-Est, France)
  • offline

Message » 19 Mar 2014 18:52

Jamais utilisé mais ça semble prometteur!
Francois76l
Pro-Commercant
Pro-Commercant
 
Messages: 1016
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • online

Message » 19 Mar 2014 18:59

Ouaip !

Peut-être une bonne alternative au Dering de FFDshow .
McGayver
 
Messages: 22166
Inscription Forum: 12 Déc 2005 1:23
Localisation: Perdu au fin fond du Gers
  • offline

Message » 19 Mar 2014 19:00

Je viens de modifier mon script Olivier pour qu'il travaille avec la même image sur les deux cotés et il y a quelque chose qui me choque!
Entre l'image brute et l'image postraité les couleurs sont légèrement différentes :wtf: Bizarre...
Je ferai des screens sur un trailer

Si tu veux essayer, le voici:
Code: Tout sélectionner
SetMTMode(3,0)
ffdshow_source()
SetMTMode(2)
newWidth = last.width
newHeight = last.height
BorderWidth = 10 #Taille de la bordure en pixels
Left = crop(0,0,-newWidth/2-BorderWidth ,0).AddBorders(0,0,BorderWidth ,0)
#Right = crop(newWidth/2 ,0,0,0)
Right = crop(0,0,-newWidth/2,0)
#Traitement des différentes parties avec les scripts associés
LeftAfterTreatment=Left.script1()
RightAfterTreatment=Right.script2()
#Recollage des deux parties précedemment post-traitées
StackHorizontal(LeftAfterTreatment,RightAfterTreatment)
SetMTMode(1)
GetMTMode(false) > 0 ? distributor() : last
function script1(clip c) {
c
#=========CODE Script partie gauche=========
#========FIN CODE Script partie gauche========
}
function script2(clip c) {
c
#=========CODE Script partie droite==========
#Denoiser
#TTempSmooth(maxr=3,lthresh=4,cthresh=3,lmdiff=3,cmdiff=2,strength=2,interlaced=false)
#UpSize by Spline144
ss=1.333
spline144resize(round(ss*last.width/8)*8,last.height)
spline144resize(last.width,round(ss*last.height/8)*8)
#Deband
GradFun2db()
#Sharpen
LimitedSharpenFasterHC(strength=40)
#Unsharp Mask
unsharpHQ(str=1.2)
#DownSize by Lanczos4
ss=1/ss
Lanczos4Resize(round(ss*last.width/8)*8,last.height) #.repair(gaussresize(p=100),mode=1)
Lanczos4Resize(last.width,round(ss*last.height/8)*8) #.repair(gaussresize(p=100),mode=1)
#========FIN CODE Script partie droite=========
}



Du coup je pense qu'il faut les deux méthodes pour valider un script. On utilise ta méthode pour tenter de l'améliorer et on utilise ensuite ma méthode pour voir si le script ne dénature pas trop l'image d'origine.
Francois76l
Pro-Commercant
Pro-Commercant
 
Messages: 1016
Inscription Forum: 19 Mai 2009 19:35
Localisation: Essonne
  • online

Message » 20 Mar 2014 13:11

Hello.

Code: Tout sélectionner
function script2(clip c) {
c
ss=1.333
spline144resize(round(ss*last.width/8)*8,last.height)
[...]


devrait plutôt être écrit :

Code: Tout sélectionner
function script2(clip c) {
ss=1.333
spline144resize(c,round(ss*last.width/8)*8,last.height)
[...]


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).

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

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) :
http://www.hdfever.fr/forum/viewtopic.p ... 2&start=40

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...).
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10481
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline


Retourner vers Logiciel PC Home-cinéma

 
  • Articles en relation
    Dernier message