Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/10/2009, à 10:06

Nikos77

Meilleure encodage possible

Salut,

quel est selon vous, le meilleur outil pour encoder sans perte trop de perte de qualité et ses options ?

J'utilise mencoder de cette façon:

mencoder source.mpg -oac lavc -ovc lavc -of mpeg -mpegopts format=mpeg2:tsaf -vf scale=720:576,harddup -srate 48000 -af lavcresample=48000 -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vrc_minrate=9800:vbitrate=9800:keyint=15:trell:mbd=2:precmp=2:subcmp=2:cmp=2:dia=6:predia=6:qprd:cbp:mv0:vqmin=1:lmin=1:dc=10:vstrict=0acodec=mp2:abitrate=256:autoaspect:threads=4 -ofps 25 -ss 0 -o sortie.mpg:

C'est, pour ma part un encodage acceptable mais avec cependant un très gros point noir qui gâche tout: Une espèce de bouillie de pixel lors de changement d'angle de vues !
Voici un example:
mencoderbouillie.th.png

Peut être faut il ajuster les options ? je tiens particulièrement à Mencoder que je considère comme un bon couteau suisse...


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#2 Le 14/10/2009, à 11:27

Michel Leunen

Re : Meilleure encodage possible

Tout dépend de ce que tu veux encoder et du résultat que tu veux obtenir. Si tu veux une qualité constante ou un fichier qui ne dépasse pas une certaine taille. Dans le premier cas, tu travaille en Constant Bitrate (CBR) et dans le second en Variable Bitrate (VBR) et deux passes.
l'encodeur h264 est sans doute le plus performant à l'heure actuelle. C'est un dérivé du mpeg4 (divx). Mais ce qu'il faut retenir c'est que toute compression est destructrice. Et toute nouvelle génération encore plus.

Quelques remarques sur les paramètres que tu as utilisés dans ta ligne de commande.
Tu utilises le mpeg2. C'est le plus ancien système de compression qui n'est utilisé qu'en broadcast (TNT) et pour les DVD. Il est depuis longtemps dépassé par le mpeg4 en qualité. Je veux dire par là qu'à bitrate égal, le mpeg4 est meilleur.
Tu transcodes le son. Or, le son est très sensible aux cycles compression/décompression/recompression. Il se dégrade très vite et l'oreille y est très sensible.
Tu utilises un bitrate de 9800. Je n'ai pas les caractéristiques de l'encodeur mpeg2 mais à mon avis tu es au delà de ce que memcoder peut faire. A vérifier.

En fait, tu utilises la bonne manière: il faut faire de essais parce que les paramètres dépendent de tant de choses qu'il peuvent être différent pour chaque video à encoder. Par exemple une vidéo sportive nécessite plus de bande passante qu'un dessin animé.


Michel Leunen
http://linux.leunen.com

Hors ligne

#3 Le 14/10/2009, à 14:52

Nikos77

Re : Meilleure encodage possible

J'ai peut etre pas été assez clair, mais il me faut une qualité maximale, donc on va dire constante. Le poids du fichier de sortie m'indiffère.
Et c'était une commande d'exemple, mais là, en l'occurence c'est un Rip de DVD, donc le MPEG-PS que j'essaie d'obtenir est tout ce qu'il y a de plus pertinent.
Je sais bien que le h264 est plus performant, mais ce n'est pas ce que je veux.

Le problème est que j'ai ces foutus macroblocs tout moche et qu'ils ne devraient pas apparaitre.
En utilisant les options

precmp=6:subcmp=6:cmp=6

j'arrive à les faire apparaitre plus rarement, mais ils restent présents.... au prix d'une lenteur inacceptable !

Sinon, quelqu'un connait peut être les options équivalentes pour ffmpeg ou transcode de ce que je fais avec mencoder ?

Dernière modification par Nikos77 (Le 14/10/2009, à 14:55)


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#4 Le 14/10/2009, à 15:11

Michel Leunen

Re : Meilleure encodage possible

Nikos77 a écrit :

J'ai peut etre pas été assez clair, mais il me faut une qualité maximale

Non, c'est peut-être moi qui ne comprends pas ce que tu veux faire (sûrement même).
Si tu veux une qualité maximale et que la taille n'a pas d'importance alors ne réencode pas. Contente-toi de ripper le dvd. Tu auras du mpeg2 de la qualité la plus haute possible puisque ce sera celle du dvd d'origine.


Michel Leunen
http://linux.leunen.com

Hors ligne

#5 Le 14/10/2009, à 15:24

Nikos77

Re : Meilleure encodage possible

Ma contrainte est justement que je dois réencoder.

Même si je pouvais juste faire une copie du flux vidéo, ça ne fonctionnerait pas parce que je n'aurais pas l'incrustation des sous-titres, mais ce n'est pas le problème.

J'ai besoin de réencoder mais de façon à ce que la perte de qualité soit minimale, c'est tout !
Et là, le soucis, c'est que Mencoder y arrive bien, SAUF lorsqu'il y a des changements d'angle de vue.

Donc, il me faut trouver des options qui l'en empeche ou un autre encodeur (ffmpeg, transcode) qui fasse pareil ou mieux, mais sans le macroblocking.


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#6 Le 19/10/2009, à 16:48

twocats

Re : Meilleure encodage possible

En pratique, pourquoi te restreins-tu au mpeg2 ?


La réponse est 42

Hors ligne

#7 Le 19/10/2009, à 17:08

Nikos77

Re : Meilleure encodage possible

twocats a écrit :

En pratique, pourquoi te restreins-tu au mpeg2 ?

Parce que la spécification que je dois respecter est que le produit final est du MPEG-PS, tout simplement !
C'est pas compliqué:
je dois faire un fichier vidéo pivot, qui doit donc avoir la meilleur qualité possible, à savoir qualité DVD puisque ça vient d'un DVD....sauf que faut qu'il y a les sous-titres incrusté ! Donc ça implique qu'il y ait réencodage par dessus !

Or, je l'ai dit et je le répète:
Mencoder foire complètement dans certains moments comme lorsqu'il y a changement d'angles de vue ou encore lorsqu'il y a beaucoup d'alternance obscur/lumineux (scène avec salle de cinéma ou couloir avec halogène défaillant, par exemple...)...quand je n'encode pas avec x264 en tout cas.

Dernière modification par Nikos77 (Le 19/10/2009, à 17:13)


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#8 Le 19/10/2009, à 18:25

twocats

Re : Meilleure encodage possible

Dans ce cas je te propose une solution extrême :

mplayer fichier.mpg -sid numero_de_sub -nosound -vo yuv4mpeg

Tu vas obtenir un fichier stream.yuv ÉNORME, j'insiste, il peut dépasser les 100 gigas (j'ai bien écris 100). Ce fichier n'aura aucune perte de qualité et aura les sous-titres incrustés. Tu devrais pouvoir à partir de cette base pouvoir le traiter avec ffmpeg.


La réponse est 42

Hors ligne

#9 Le 19/10/2009, à 20:37

Nikos77

Re : Meilleure encodage possible

twocats a écrit :

Tu vas obtenir un fichier stream.yuv ÉNORME, j'insiste, il peut dépasser les 100 gigas (j'ai bien écris 100). Ce fichier n'aura aucune perte de qualité et aura les sous-titres incrustés. Tu devrais pouvoir à partir de cette base pouvoir le traiter avec ffmpeg.

Effectivement, c'est pas forcément le plus optimal, mais si ça fonctionne, c'est déjà pas mal !
J'essayerais ça quand je pourrais !

Dernière modification par Nikos77 (Le 19/10/2009, à 20:37)


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#10 Le 20/10/2009, à 09:47

Nikos77

Re : Meilleure encodage possible

Hum...
Bon, j'ai essayé de faire ce que tu m'as dit et...
Non seulement je n'ai pas de sous-titre, mais en plus, j'ai une belle image comme suit:
resultatyuv4mpeg.th.png


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne

#11 Le 21/10/2009, à 11:34

jpphil

Re : Meilleure encodage possible

En fait j'ai un problème similaire. Je cherche le meilleur encodage possible, en ligne de commande, pour faire un DVD à partir de vidéo DV.
J'ai utilisé ffmpeg, c'est correcte, mencoder c'est un peu moins bien. En revanche lorsque j'encode avec Kino (export:  dvd , desentrelacement yuv aspect film) c'est excellent. J'ai réussi à afficher les commandes de kino pour  cette opération mais je ne les comprend pas.
Je veux utiliser la ligne de commande parce que j'ai plusieurs fichiers à encoder et que je veux tous les lancer en une fois.

Hors ligne

#12 Le 21/10/2009, à 14:30

Nikos77

Re : Meilleure encodage possible

Kino semble utilise mpeg2enc et mp2enc pour encoder la vidéo et l'audio séparément... puis mplex pour multiplexer.
Pour les sous-titres, je sais pas encore. En tout cas, je ne connaissais pas tout ça avant !
C'est déjà une bonne piste.

Dernière modification par Nikos77 (Le 21/10/2009, à 14:31)


nfperron@gmail.com
nfperron@jabber.fr

Hors ligne