Modérateurs: Modération Forum Home-Cinéma, Le Bureau de l’Association HCFR • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 50 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

Settings ffdshow perso (core i7)

Message » 14 Juin 2011 13:19

Vivement :love:
Toothless
 
Messages: 592
Inscription Forum: 13 Avr 2011 2:20
  • offline

Message » 14 Juin 2011 14:19

Emmanuel Piat a écrit:>parce qu'EVR CP produit beaucoup de tearing.

bien dire ds les options de MPC qu'il faut attendre le GPU (sinon tearing garanti).


c'est quelle option ? dans renderer settings/GPU control/flush GPU ?

Emmanuel Piat a écrit:En cas de désynchro source / diffuseur, ça peut néanmoins être insuffisant. Personnellement, j'ai la chance d'avoir des diffuseurs (moniteurs / projo) qui bouffent n'importe quelle synchro sans sourciller. Donc si j'ai une source en xxx fps, je mets la fréq de la CG sur un multiple de xxx via powerstrip et tout roule au niv. du diffuseur.


via l'autochange frequency de MPC ? du coup tu n'utilises plus reclock ?

Emmanuel Piat a écrit:S'il reste du tearing, il suffit d'ajuster l'offset de synchro via MPC-HC et une fois qu'on a le bon offset tout le tearing dégage.


ça je vois, il faut cocher alternative vsync, et régler l'offset dans renderer settings/vsync, mais uniquement de manière empirique ?

merci pour ton retour en tout cas...

sinon question subsidiaire, est-ce qu'il y a un lien entre le dithering effectué par FFDshow dans le cas de la conversion YV12--RGB32, celui effectué par madVR, et le deband FFDshow ?
/noah/
 
Messages: 1342
Inscription Forum: 12 Nov 2003 21:36
  • offline

Message » 14 Juin 2011 14:38

>est-ce qu'il y a un lien entre le dithering effectué par FFDshow dans le cas de la conversion YV12--RGB32, celui effectué par madVR

oui principe équivalent pour les deux. Après il peut y avoir des différences d'implémentations, tout dépend la distribution du bruit de chroma qu'on va choisir. Franchement je ne vois pas l'intérêt de ce truc en chroma car l'oeil a une sensibilité très médiocre en chroma. Impossible de déceler la perte de chroma lors du cropping en RGB 8bit (conv CrCb (16 ou 10 bits ds maxVR, cf. les options du renderer) -> RGB).


et le deband FFDshow ?

Un dithering de chroma, ça consiste à faire une distribution spatiale aléatoire de chroma selon une loi donnée et avec une résolution donnée (par exemple 8 bits) de manière à ce que la moyenne de cette distribution soit la même que le chroma effectif à une réso supérieure (par exemple 16 bits). C'est alors l'oeil qui fait cette moyenne via son pouvoir de résolution spatial.

A la base, le deband n'a rien à voir avec du dithering de chroma (pas de changement de profondeur de bit). Néanmoins, si ça se trouve le deband crée aussi une distribution spaciale en mélangeant le chroma d'un pixel et des pixels alentour si celui-ci est sur la frontière d'une bande de chroma (afin de disparaître l'effet de bande). Donc il y a qd même qq similarités avec du dithering. La différence c'est que le deband ne doit agir que les frontières des bandes (détection via un seuil) alors que le dithering agit partout sans distinction.

il me semble que le deband de ffdshow ne fonctionne plus correctement depuis qq mois...
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 14:47

>via l'autochange frequency de MPC ? du coup tu n'utilises plus reclock ?

Euh l'autochange, c'est moi qui le fait via des macro :wink: Donc pas d'autochange chez moi, tout est manuel (comme ça je contrôle tout :ane: ).

>ça je vois, il faut cocher alternative vsync, et régler l'offset dans renderer settings/vsync, mais uniquement de manière empirique ?

oui empirique. Mais c'est de l'empirique simple : avec le vsync à zéro, j'ai un peu de tearing (vers les 3/4 en haut de l'écran en ce qui me concerne). Avec vsync à +2, disparition totale du tearing.

Concernant reclock, je ne l'utilise que comme un renderer audio basique (sans les options de resynchro) qui me permet de sortir en Kernel streaming. Donc chez moi, le chef-d'orchestre c'est la CS (lynx-2B). Tout s'aligne sur elle.

Je ne conteste pas l'utilité de la resynchro de Reclock pour les personnes qui ont des projos incapables de fonctionner correctement à un multiple de 23.976, 24 et 25 Hz. Simplement je n'en ai jamais eu besoin car j'ai tjrs eu une fluidité impeccable à ces fréquences de la CG (merci le projo et le moniteur).

@+
Emmanuel
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 15:03

Un dithering de chroma, ça consiste à faire une distribution spatiale aléatoire de chroma selon une loi donnée et avec une résolution donnée (par exemple 8 bits) de manière à ce que la moyenne de cette distribution soit la même que le chroma effectif à une réso supérieure (par exemple 16 bits). C'est alors l'oeil qui fait cette moyenne via son pouvoir de résolution spatial.


Autre manière de l'impliquer en restant ultra simpliste :

imaginons qu'avec une réso de 16 bit (0-65535) , un pixel ait une valeur de "chroma" de 16.2 si on la ramène sur l'échelle 0-255 (8 bits) via une règle de 3.

Le dithering en 8 bits va alors mettre le pixel à 16 et va modifier les pixels alentour de manière à ce que la moyenne de ces pixels soit de 16.2 ((16+17+16+17 +15) /5 = 16.2) . On peut noter que la moyenne a une réso supérieure à la destination de 8 bits.

L'oeil qui fait aussi une moyenne spatiale aura alors aussi l'impression de voir 16.2 (donc qq chose avec une réso supérieure à 8 bits) au lieu de 16.
Dernière édition par Emmanuel Piat le 15 Juin 2011 12:44, édité 2 fois.
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 15:08

ok c'est clair (je pense), c'est une espèce de sudoku de pixels en fait :lol:
/noah/
 
Messages: 1342
Inscription Forum: 12 Nov 2003 21:36
  • offline

Message » 14 Juin 2011 15:09

J'ai édité le post du dessus pour mettre un exemple.
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 15:17

OK, et ce que tu expliques, c'est que tu peux avoir différents algorithmes de dithering, plus ou moins performant. Par contre pour le deband, si je me réfère à ton explication, c'est plus une comparaison de chroma, et en cas de saut entre pixels au delà d'un certain seuil, on modifie le chroma de chaque pixel de la zone pour homogéneiser ? Une espèce de lissage en fait (en langage profane) ?
/noah/
 
Messages: 1342
Inscription Forum: 12 Nov 2003 21:36
  • offline

Message » 14 Juin 2011 15:24

oui les différents algo de dithering généreront une sequence 16+17+16+17 +15 (ou +0 +1 +0 +1 +0 par rapport à la valeur 16 du pixel) différente car reposant sur une loi statistique différente. Mais toutes ces lois engendreront la même moyenne.

>on modifie le chroma de chaque pixel de la zone pour homogéneiser ? Une espèce de lissage en fait (en langage profane) ?

oui c'est peut être un lissage voir un simple "échange aléatoire" des chromas des pixels ds un rayon donné autour du pixel qui est sur la frontière de la bande. par exemple si on ne touche qu'à deux pixels, je prend le chroma du pixel de droite de la bande et je l'échange avec celui du pixel de gauche... Le tout est de "casser" l'effet de bande.
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 15:36

Voici l'effet d'un expander vidéo dans les noirs (explication ds post qui suit)

Image
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 16:03

Mettre l'image en zoom 100% pour bien voir

Image de gauche :
===============
les petits + correspondent au noir (Y=16) et blanc (Y=235) de ref.

courbe bleu en trait pointillé :

mapping de ref qui mappe 16 sur 16 et 235 sur 235 => image délavée mais qui permet d'avoir tout le BTB (Y<16) et le WTW (Y>235) qui sont présents sur pas mal de BR. J'ai fait un shader pour afficher ces zones. Par exemple sur le BR d'avatar, c'est incroyable ce qu'elles sont présentes... Je donnerai le shaders demain pour que vous puissiez faire mumuse.

courbe magenta : mapping 12-240 -> 0-255 spécifié ds ffdshow

Permet d'avoir le BTB 12-13-14-15 et le WTW 236-237-238-239-240 affiché sur l'écran. Le niv. de noir descend bien par rapport au mapping précédent.
C'est le mapping que j'utilise avant l'action de l'expander

courbe verte : c'est un résultat intermédiaire pdt le travail de l'expander

courbe rouge : c'est le résultat de l'expander qui vient peu à peu se caller sur la courbe verte


Image de droite :
===============

C'est la dérivée des courbes précédentes. La dérivée représente le contraste apparent le long de l'échelle de gris.

une dérivée de 1 correspond au contraste (pas terrible) donnée par le mapping en trait pointillé bleu.
une dérivée supérieure à 1 permet donc d'améliorer le contraste. Le mapping violet est donc bien meilleur en terme de contraste d'image.
On perd un peu de contraste avec la courbe verte.
Et la courbe rouge donne le contraste final :
Celui du BTB est inf à 1 au début puis passe au dessus de 1, les 1er niv. de noir ont un constraste boosté qui permet de déboucher les noirs. Ensuite la courbe retombe "lentement" : compression du contraste jusqu'à la valeur nominale donnée par la courbe verte.

Après il faut jouer avec pour comprendre ce que cela peut donner sur une image. Avec un peu de métier, on peut donner l'impression qu'un projo ayant un CR minable de 500:1 s'aligne sur un projo de 2000:1 grâce au fait que l'oeil travaille en relatif (mais pour cela il faut pas mal de luminosité et aussi booster le contraste intra-image via le shader super-résolution). J'aime bien rappeler qu'une projection 35mm au ciné à un CR maxi de 600:1. Et pourtant, ça fonctionne plutôt bien. Merci l'étalonnage de la pelloche :wink: ...
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 14 Juin 2011 18:09

Emmanuel Piat a écrit:et aussi booster le contraste intra-image via le shader super-résolution


Tu peux détailler cette partie STP ? J'avais suivi la mise en place de ton shader, que tu présentais comme un LSF du pauvre ? Donc un ajustement de sharpen, tu peux préciser comment il permet de jouer sur le contraste ?
/noah/
 
Messages: 1342
Inscription Forum: 12 Nov 2003 21:36
  • offline

Message » 14 Juin 2011 18:55

En fait, il modifie localement le gamma en fonction de la luminosité des pixels, c'est plutôt un gamma adaptatif (c'est la 1ère étape du filtre, ensuite il y a encore d'autres trucs qui suivent)qui donne un effet de sharpen (toute modif de contraste qui va ds le sens d'une expansion donne un effet de sharpen). Ca marchait pas trop mal il me semble. Mais comme ça date un peu, j'ai oublié les détails, il faudrait que je me replonge ds le code :roll:

Dire que ça boost le contraste intra image est néanmoins galvaudé. Pour modifier le contraste intra image, il faudrait détecter s'il y a des zones claires proches du pixel à traiter (ça peut se faire via la valeur médiane d'un histogramme fait avec les pixels situés dans un cercle de rayon donné autour du pixel à traiter). Cette zone claire va détériorer le rendu du noir si le contraste intra-image est faible et dans ce cas il va falloir alors booster le pixel en terme de contraste s'il est situé ds le bas de la plage de gris (et là un gamma adaptatif me semble une bonne idée). Dans la version proposée, je fais tjrs ce boost quoi qu'il arrive, ce qui est utile uniquement si le projo à un contraste intra image vraiment faiblard (c'est le cas de mon très vieux projo tjrs fidèle au poste).
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 15 Juin 2011 9:03

Voilà, j'ai mis en ligne ts les fichiers nécessaires ici pour ma config sous XP SP3-32 bits :
http://dl.free.fr/eiyNcKUxT

Pour les settings, j'ai fait des snapshots et j'ai aussi mis des infos dans des fichiers .txt. Ca devrait suffire.
Nota : j'utilise une vieille version de MPC-HC compatible avec l'avisynth que j'utilise car MPC-HC ne me sert que comme frontend. Le décodage se fait via les codec externes.

Shaders dispo :

Blanking :
pour noircir les bandes noires. Nécessaire si vous voulez afficher une partie du BTB. Il faut spécifier ds le shader le nombre de lignes à noircir en haut et en bas.

Show BTB & WTW BT.601
Pour visualiser le BTB et le WTW des DVD

Show BTB & WTW BT.709
Pour visualiser le BTB et le WTW de la HD
Essayez avec le BR d'Avatar, c'est surprenant !

Le BTB est affiché en rouge (avec un dégradé vers le rouge sombre plus Y<16 est faible)
Le WTW est affiché en violet
Respecter *impérativement* la config ffdshow donnée en snapshot pour que le résultat soit juste.

Expander
Expander vidéo avec des settings pré-réglés pour le moniteur Samsung SyncMaster F2380M avec les réglages du moniteur précisés dans le shader (le gamma mode2 est probablement supérieur à 2.2 sur ce moniteur). La CG utilisée est une ATI 4650. L'expander inclut le blanking.

Je n'ai pas eu le temps de traduire le script matlab en script scilab pour visualiser l'effet des réglages. Désolé.

@+
Emmanuel
Emmanuel Piat
Contributeur HCFR 2016
 
Messages: 10347
Inscription Forum: 10 Oct 2000 2:00
Localisation: Besançon, FRANCE
  • offline

Message » 15 Juin 2011 11:33

Merci monsieur :thks:
Tester ça ce week-end :love:
Toothless
 
Messages: 592
Inscription Forum: 13 Avr 2011 2:20
  • offline


Retourner vers Logiciel PC Home-cinéma