Page 1 sur 2

problème de saccades vidéo upscalé. une solution ?

Posté : jeu. 09 janv., 2014 4:37
par choucroute70
Salut tout le monde,

Donc voilà. J'ai décidé d'upscaler une partie d'une série animée que j'aime bien. OnePiece

La source est déjà de bonne qualité puisque elle est en 720p. Je veux faire l'upscale en 1080p car mon écran est grand et je vois bien la différence.

J'ai écrit un script avec l'aide de certaines personnes: :whi:

Code : Tout sélectionner

video=FFmpegSource2("J:\Bureau\Test avec One Piece fractionné\One Piece 517 ksw fractionné.mp4", vtrack = -1, atrack = -1, timecodes="timecodes_file.txt")
video = video.Nnedi3_rpow2(rfactor=2,cshift="spline36resize",fwidth = 1920 , fheight = 1080,ep0=5) 
video = video.Removegrain() 
video = video.fft3dfilter()
video = video.Deblock() 
video = video.fastlinedarkenMOD(strength=75,thinning=0)
video = video.LSFMod(defaults="slow",strength=150) 
return(video)
Mais j'ai un problème. La vidéo saccade. Mais ça me le fait que sur certain lecteurs comme powerDVD.
Sur vlc ça marche (pas de saccade). Mais powerDVD a des dsp pour le son et un jeu de couleurs que je préfère et puis la vidéo source marche dessus sans saccader.

Je me dit que j'ai donc un problème d'encodage ou je dois rajouter quelque chose dans le script. désentrelacement ? supprimer les images doubles ?

voilà des image de la vidéo source et upscalé à différents niveaux de sharpening et épaississement des lignes.

http://9i94r5.1fichier.com/

http://99jxcd.1fichier.com/

Et voilà la vidéo source et celle upscaler à sharp 300 (le plus fort que j'ai fait)
On peut voir que ça saccade

http://rphm71.1fichier.com/
http://cuplxb.1fichier.com/

Je viens donc chercher ici à savoir si le script déjà écrit est bon, quel niveau de sharpening garder et quel serait la solution pour ces saccades ?

Pour les réglages x264 j'utilise meGUI avec crf 16, me umh, subme 10, preset slower et tune animation

Posté : jeu. 09 janv., 2014 11:22
par Subbat
Salut et :welc sur le forum...

Pour ce qui est du script avs en lui même je ne saurais te dire... mais je ne pense pas que la saccade vienne de lui de toute façon... Si ça passe sur VLC c'est peut-être powerdvd qui a du mal à suivre...

Tu utilises quel profil du x264 ? Ca peut venir de là...

Posté : jeu. 09 janv., 2014 21:13
par choucroute70
Merci, :)

Alors si c'est bien ça que tu me demande le profil d'encodage est H264 High@L5.1 avec meGUI


Et au moment où j'écrit ce message je viens d'encoder non pas avec meGUI mais avec Avidemux et là pas de saccade sur ma vidéo :gy: . Ni sur vlc ni powerdvd
Je viens de remarquer que le profil de avidemux est H264 high@L4.0

C'est génial. Pas besoin de faire de désentrelacement.
Tu as raiso, c'était pas le script.

Par contre je ne trouve pas les réglages pour régler le preset sur slower et le profil tune animation avec avidemux.
ou alors l'inverse charger le profil x264 utilisé sur avidemux sur meGUI.

Tu connais un moyen de remédier à ce problème ?

par contre après encodage ma vidéo passe en 29.942 fps alors que la source est à 29.971 fps.
C'est pas grave ou je change la valeur pour la mettre identique ?

Posté : jeu. 09 janv., 2014 21:29
par Subbat
Bah... comment dire...

Tu es juste sur le forum de m4ng... ;) Et m4ng encode en x264... Pour ce qui est du profil, ce n'est pas tout à fait de ça dont je parlais, mais des profils ou preset genre "DXVA-High Def", "DXVA-Standard Def", "Blu-Ray 1080p24 - 720p24"...

Et avec m4ng tu peux faire ton encodage avec DXVA-High Def par exemple qui te fera lui du High@L4.1 mais qui devrait passé là aussi sur powerdvd...

Je ne connais pas meGUI (au sens où je ne m'en suis jamais servi...), mais il utilise le même encodeur que m4ng pour faire du x264... le même x264.exe...

Posté : sam. 11 janv., 2014 11:52
par choucroute70
En fait la vidéo source avait déjà été encodée d'après ce que je vois avec mediainfo.

Elle est en AVC (HIGH@L4.2)

Sinon j'ai bien envie de profiter de la configuration d'encodage de certaines team dont j'ai accès avec media info pour l'appliquer sur mes propres vidéo pour chez moi.

Sais-tu où je peux écrire la configuration d'encodage dans un encodeur comme m4ng ou avidemux ?

Un truc du style.

Paramètres d'encodage : cabac=1 / ref=4 / deblock=1:1:1 / analyse=0x3:0x113 / me=umh / subme=8 / psy=1 / psy_rd=0.60:0.00 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=3 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / constrained_intra=0 / bframes=4 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=23.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / vbv_maxrate=50000 / vbv_bufsize=50000 / crf_max=0.0 / ip_ratio=1.40 / aq=1:1.00 / nal_hrd=none

Posté : sam. 11 janv., 2014 13:02
par Subbat
Re...

Avec m4ng c'est tout à fait possible... pour le mode crf, il suffit de mettre dans la case débit la valeur crf que tu veux... dans ton exemple c'est 23...

Pour le reste des paramètres, il suffit de comparer tout ce que tu as mis par rapport aux valeurs par défaut du x264...

Il te suffira ensuite de créer un "preset" en indiquant les valeurs de chaque paramètre pour lesquels ce n'est pas la valeur par défaut du x264...

Tu ouvres ton bloc note, tu renseignes les paramètres que tu veux (2 fois la même ligne)... par exemple :

Code : Tout sélectionner

--level 4.1 --vbv-bufsize 50000 --vbv-maxrate 50000
--level 4.1 --vbv-bufsize 50000 --vbv-maxrate 50000
et tu enregistres ce fichier dans le dossier system/cli de m4ng en le nommant par exemple "preset_perso_m4ng.cli"... le "_m4ng" est important et le ".cli" est l'extension du fichier...

Ensuite, pour faire ton ré-encodage, tu ouvres m4ng, tu te mets en mode expert "normal" (le texte du bouton autonome devra etre en blanc et pas en jaune)... puis sur la ligne codec video, tu choisis x264 cli (AVC) tu entres ta valeur de crf dans la case débit, puis tu cliques sur la petite roue d'engrenage puis "option d'encodage"... et dans le panel de configuration du x264 tu choisis ton preset perso via la liste déroulante (ligne appareil cible)... pour l'option de vitesse tu fais ce que tu veux, la valeur par défaut du x264 étant medium, et pour l'optimisation aussi, tu fais comme tu le sens... tu peux l'utiliser ou non... perso je m'en sert, film pour les film et animation pour les dessin animé... je ne me suis jamais servi des autres...

Voilà, je pense que tu devrais avoir tout ce qu'il te faut... tu peux aussi aller voir le tuto pour le ré-encodage avec m4ng_v4 qui se trouve ici : http://www.m4ng.fr/les-tutoriels/les-tu ... g-v4#Chap2

@+ ;)

Posté : sam. 11 janv., 2014 16:16
par choucroute70
merci pour ton aide. impec le tuto. :mrgreen: Par contre comment je fais pour connaitre les paramètre par défaut de x264 ?

par exemple si j'écrit ça dans mon bloc note pour l'exemple de config précédent ou alors ça ne correspondra pas parce-que j'ai pas enlevé ce qui était par défaut ?
En fait ce qui sera écrit sera des exceptions et sera préféré au par défaut

Code : Tout sélectionner

--cabac=1 --ref=4 --deblock=1:1:1 --analyse=0x3:0x113 --me=umh --subme=8 --psy=1 --psy_rd=0.60:0.00 --mixed_ref=1 --me_range=24 --chroma_me=1 --trellis=1 --8x8dct=1 --cqm=0 --deadzone=21,11 --fast_pskip=1 --chroma_qp_offset=-2 --threads=3 --sliced_threads=0 --nr=0 --decimate=1 --interlaced=0 --constrained_intra=0 --bframes=4 --b_pyramid=2 --b_adapt=2 --b_bias=0 --direct=3 --weightb=1 --weightp=2 --keyint=250 --keyint_min=25 --scenecut=40 --intra_refresh=0 --rc_lookahead=40 --rc=crf --mbtree=1 --crf=23.0 --qcomp=0.60 --qpmin=10 --qpmax=51 --qpstep=4 --vbv_maxrate=50000 --vbv_bufsize=50000 --crf_max=0.0 --ip_ratio=1.40 --aq=1:1.00 --nal_hrd=none
--cabac=1 --ref=4 --deblock=1:1:1 --analyse=0x3:0x113 --me=umh --subme=8 --psy=1 --psy_rd=0.60:0.00 --mixed_ref=1 --me_range=24 --chroma_me=1 --trellis=1 --8x8dct=1 --cqm=0 --deadzone=21,11 --fast_pskip=1 --chroma_qp_offset=-2 --threads=3 --sliced_threads=0 --nr=0 --decimate=1 --interlaced=0 --constrained_intra=0 --bframes=4 --b_pyramid=2 --b_adapt=2 --b_bias=0 --direct=3 --weightb=1 --weightp=2 --keyint=250 --keyint_min=25 --scenecut=40 --intra_refresh=0 --rc_lookahead=40 --rc=crf --mbtree=1 --crf=23.0 --qcomp=0.60 --qpmin=10 --qpmax=51 --qpstep=4 --vbv_maxrate=50000 --vbv_bufsize=50000 --crf_max=0.0 --ip_ratio=1.40 --aq=1:1.00 --nal_hrd=none
Bien sûr j'écrit ça en 2 lignes seulement

Posté : sam. 11 janv., 2014 18:06
par Subbat
Tu peux faire comme ça oui... en mettant les valeurs pour tous les parametres... mais c'est un peu inutile... et je me demande si je n'ai pas lu quelque part que le x264 n'aimait pas trop qu'on lui envoie les valeurs par defaut...

Pour trouver les valeurs par défaut du x264... en faisant une recherche sur le web tu devrais facilement trouver...

Sinon en lancant le x264.exe en ligne de commande suivi de la commande --help il me semble que tu devrais avoir ces valeurs...

Posté : sam. 11 janv., 2014 19:40
par choucroute70
Encodage réussi. Qualité d'image extra.

j'ai changé le principale. me subme et crf

Cependant je rencontre le même problème que avec meGUI. ça ne saccade pas mais l'image saute à certains moments sur powerdvd. Pas sur vlc.

Peut-on avec m4ng changer le profil du format ? Là je suis en HIGH@L5.1

Posté : sam. 11 janv., 2014 19:55
par Subbat
Oui on peut... et ca marchera sans doute... mais ce ne sera qu'un leurre... si tu as du high@5.1 c'est que les parametres d'encodage sont tels que tu te retrouves avec une video avec ce profil...

Pour forcer le level, il faut ajouter dans ton preset sur chaque ligne --level 4.1 par exemple... enfin il me semble que c'est ca... pour etre sur de la commande exacte tu ouvres le preset dxva_high_def par exemple et tu verras la bonne syntaxe...

Posté : sam. 11 janv., 2014 20:40
par choucroute70
SUPER! ça marche. L'image ne saute plus.
Merci pour tout tu m'as aidé à résoudre mon problème. :) J'avais passé pas mal de temps dessus. ça m'aurait emmerdé si j'avais eu des problèmes dans le résultat final.

Sinon pour le codec audio tu me conseil quoi. (un de bonne qualité)

Posté : sam. 11 janv., 2014 20:47
par Subbat
Pour l'audio ça depend... c'est pour lire sur quoi ? Avec quoi ?

Posté : sam. 11 janv., 2014 20:54
par choucroute70
j'ai un système 5.1 sur mon ordi.

carte son reliée via HDMI sur ampli lié aux enceintes
Je comptes lire comme tu t'en doutes des animés qui ont pour source du 2.0 ou 2.1

Posté : sam. 11 janv., 2014 21:37
par Subbat
Bah pourquoi tout simplement conserver l'audio original plutôt que le ré-encoder... avec m4ng c'est tout à fait possible... dans la liste des codecs audio, si tu choisi original, c'est la piste audio de la source qui sera ré-injectée sans être ré-encodée...

Mais si tu tiens à tout prix à ré-encoder, je dirais le AAC (de préférence via neroaacenc qu'il faut télécharger et copier dans le dossier system de m4ng)... et si c'est du 2.0, en débit 64 pour de l'aac c'est suffisant... mais tu peux mettre un peu plus si tu le souhaites...

Posté : dim. 12 janv., 2014 0:30
par choucroute70
merci chef.

merci pour tout.

:did:

Posté : dim. 12 janv., 2014 9:57
par Subbat
;)

Posté : lun. 13 janv., 2014 16:26
par choucroute70
sinon, un intéret à encoder en 10 bits ? ça dépend de l'écran sur lequel on lit non ? S'il est 8 bits on verra pas la diff tu crois pas ?
Parce-que tu fais comment pour ça parce-que j'ai vu que le 10 bits commence à bien se répandre.

Posté : lun. 13 janv., 2014 18:30
par Subbat
Le 10bits je crois plutôt que c'est lié à la carte graphique et non à l'écran... Il me semble que les couleurs sont meilleures en 10bits mais j'ai jamais testé de vidéo en 10bits...

Toujours est-il que la version embarqué par m4ng du x264 est la 8 bits... si tu veux faire du 10bits, il faut télécharger les version 32 et 64bits de x264 et les mettre à la place de celles qui sont dans le dossier system de m4ng (x264_32.exe et x264_64.exe)...

Posté : lun. 13 janv., 2014 19:29
par choucroute70
ouai mais je crois que si l'écran ne peut pas diffuser la 10Bits ce qui est le cas pour la plupart des écrans grands publiques ça ne sert à rien. C'est en général les écrans de graphistes qui en sont équipés. Il me semble que ça fait dans le milliard de couleurs

Mais je vais faire tout de même l'expérience :)

Posté : lun. 13 janv., 2014 19:57
par Subbat
Je ne sais pas du tout... à ce que je viens de lire, seul les PC peuvent le lire en tout cas avec des codecs à jour ou une version récente de mpc-hc ou vlc... Il n'est pas question de l'écran... mais si tu le dis je te crois sur parole...

Posté : lun. 13 janv., 2014 20:03
par Underground78
En pratique ça peut quand même être utile, le 10-bit converti en 8-bit à la lecture est parfois meilleur. C'est surtout vrai pour les animés à priori.

Posté : lun. 13 janv., 2014 20:09
par Subbat
Underground78 a écrit :En pratique ça peut quand même être utile, le 10-bit converti en 8-bit à la lecture est parfois meilleur. C'est surtout vrai pour les animés à priori.
Mais je ne me trompe pas par contre ? Les wdtv live, freeboxplayer ou autre hdd multimédia ne peuvent pas le lire ? Seule les PC peuvent pour l'instant le lire non ?

Posté : lun. 13 janv., 2014 22:31
par Underground78
Ouaip, c'est tout à fait exact.

Posté : lun. 13 janv., 2014 22:41
par Subbat
Ok... merci... aucun intérêt pour moi donc...

Posté : mar. 14 janv., 2014 20:29
par choucroute70
ok, donc j'ai rien à écrire nul part ?

Si je change le (x264_32.exe et x264_64.exe) du dossier système les vdéos seront automatiquements encodées en 10bits ?