Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forum DivX Video Ripp-it After Me Ri4m _ Vos contributions (Tutos, aide etc...) _ Encoder rapidement en DIVX

Écrit par : leon1789 01/07/2007 13:50

Dédicacé à ManuKult

Je ne vais pas détailler toutes les possibilités que virtualdub propose (je suis loin de les connaitre toutes !), mais je vais raconter le plus simplement possible comment je procède pour réencoder mes petites vidéos mpeg2 (ce tutoriel reste valable pour bien d'autres formats : voir http://forum.ripp-it.com/index.php?showtopic=16372&pid=249593&st=0&#entry249567 ). Tant qu'on n'est pas exigent au niveau des filtres, c'est simple et rapide !!! ...je vous laisse en juger... wink.gif

Au programme,
partie I : le son (mp3 ou autres formats, stéréo ou mono...)
partie II : la vidéo (divx, désentrelacement, redimensionnement et bitrate ad hoc...)
partie III : le final (extraction d'une partie du film, finalisation)


Mais d'abord, télécharger virtualdub sur http://forum.ripp-it.com/redirect.php?url=http%3A%2F%2Fwww.01net.com%2Fwindows%2FMultimedia%2Fedition_video%2Ffiches%2F8694.html par exemple : on décompacte et VirtualDub.exe est prêt à l'emploi, pas besoin d'installation (il faut quand même les codecs audio et vidéo... mais vous les avez déjà sûrement !).

On démarre VirtualDub.exe, et on charge le fichier mpeg à convertir (ou le script avs que je vous laisse plus bas http://forum.ripp-it.com/index.php?showtopic=16372&pid=249567&st=0&#entry249567) par file / open video file.
Juste au passage, on peut récupérer quelques informations sur ce film par file / information file : obtenir la durée de la vidéo, vérifier qu'une bande sonore est présente ou non, etc.

PARTIE I : LE SON
Si vous ne voulez pas réencoder le son, cliquez sur audio / direct stream copy.

En revanche, si on veut redéfinir le format audio du film, on clique sur audio / full processing mode, puis sur audio / compression. Apparait une fenêtre qui vous permet de choisir le format sonore et le débit, etc. (la liste des codecs dépend de votre installation !)

Là, j'ai choisi un encodage audio très bas de gamme : on peut en choisir un autre bien sûr ! par exemple, MP3 stéréo en 128 kbps...
Enfin, cliquez sur OK pour valider votre choix de format audio.

PARTIE II : LA VIDEO
Si vous ne voulez pas réencoder la vidéo, cliquez sur vidéo / direct stream copy.

En revanche, si on veut redéfinir le format vidéo du film, on clique sur video / fast recompress, puis sur video / compression. Apparaît une fenêtre qui vous permet de choisir le format vidéo (la liste des codecs dépend de votre installation !). Comme toujours, je choisis le divx aga.gif


Ne cliquez pas sur OK car, là, il faut configurer le codec divx... donc on clique sur Configure. Il arrive alors notre beau codec !

J'ai choisi le profil home theater pour des raisons de compatibilité (attention aux vidéos HD !), un encodage prédéfini niveau 5 (bon rapport qualité/temps d'encodage), et surtout un encodage 1 passe basée sur la qualité (excellent rapport qualité/temps d'encodage) que j'ai réglé ici sur le quantizer 9 : c'est une valeur assez élevée que je conseille de diminuer pour augmenter la qualité (essayer les valeurs 6,4,3..).

Et non, pas de bitrate à préciser ! Le codec le déterminera en fonction de la vidéo originale et la qualité désirée pour l'encodage. C'est ainsi que je réponds à la question typique : << quel est le bon bitrate pour encoder ma vidéo ? >>.
Remarque : je trouve que cette possibilité d'encodage en une passe basée sur la qualité manque à Riam (qui désire systématiquement un bitrate moyen !). C'est dommage...

REMARQUE
Cela dit, si vous avez la contrainte de réaliser un encodage avec une taille finale imposée, vous pouvez choisir d'encoder en plusieurs passes (une première, puis une seconde wink.gif ), en calculant le bitrate adéquat : cliquer sur le bouton "calculette" du codec DivX.


Bon, passons sur l'onglet vidéo (si vous utilisez mon script avs, ne tenez pas compte de ce paragraphe : en effet, le crop, le resize, l'anti-bruit, le masquage, etc., sont pris en charge en amont par le script avs...) :

Personnellement (mais cela n'a rien d'obligatoire bien entendu !),
-- je ne redimensionne pas l'image (car cela ne gagne rien en qualité) sauf si c'est absolument nécessaire : pour ManuKult dont le camescope encode en 720x576 une image (sans bandes noires) qui veut être du 16/9, il faut redimensionner en une "taille personnalisée" 720x400 aga.gif Attention : il est préférable de choisir des dimensions multiples de 16 (voir http://forum.ripp-it.com/index.php?showtopic=16758&hl= )
Si vous utilisez mon script avs, vous ne devez pas redimensionner ! ...car le script est déjà renseigné wink.gif

-- si je n'utilise pas mon script avs, je selectionne les effets de masquage, amélioration I-blocs, et auto détection de bruit (je ne sais pas ce que cela vaut vraiment...)

-- et surtout je demande à désentrelacer la source si c'est nécessaire !!! n'est-ce pas ManuKult cling1.gif ...sinon je laisse source progressive. Attention : si vous utilisez mon script avs, vous devez laisser source progressive (même si vous source est entrelacée) ! ...car le script est déjà renseigné wink.gif

Maintenant, vous pouvez validez votre configuration vidéo : OK pour le codec DivX, OK pour le format video aga.gif

PARTIE III : LE FINAL
De retour sur VirtualDub...

Si le début ou la fin ne sont pas intéressants (pubs, etc.), on peut sélectionner la partie "utile" de la vidéo : cela se fait facilement avec la réglette et les bontons dessous :

Avec le même principe, on peut couper au milieu de la vidéo des parties indésirables : on sélectionne avec les boutons et on coupe avec edit / cut...
Si tout votre film est intéressant, ne faîtes rien du tout aga.gif

Enfin, on demande à créer et sauvegarder la nouvelle vidéo via file / save as AVI (mettre un nom différent de celui de la vidéo originale) ... et la compilation se lance !!

Pour accélérer l'encodage, décocher les deux fonctions show input & ouput video, sinon on voit toutes les images défiler très lentement une à une...


Et voilà, maintenant il suffit d'attendre... comme d'habitude ! yahoo.gif
(si on arrête la compilation en cours de route, seule une partie de l'encodage sera réalisée... mais visible tout de même !)

Écrit par : rol 05/07/2007 14:25

Super leon aga.gif

Écrit par : bd9 05/07/2007 16:24

tu veux dire: "super, Léon" ou "Superléon"?

Écrit par : leon1789 05/07/2007 18:12

merci pour votre sympathie aga.gif

Écrit par : Davcop 05/07/2007 19:41

Beau boulot cling.gif

Écrit par : Skyline 05/07/2007 20:17

tré beau travail même moi j'ai compris aga.gif

Écrit par : sykes2477 05/07/2007 21:32

j'allais le dire!!
Good job!! aga.gif

Écrit par : bd9 06/07/2007 20:33

(Skyline @ jeudi 05 juillet 2007 à 21:17) *
tré beau travail même moi j'ai compris aga.gif

troooooooooop fort.........................léon, je veux dire.

Écrit par : Skyline 07/07/2007 11:53

(bd9 @ vendredi 06 juillet 2007 à 21:33) *
(Skyline @ jeudi 05 juillet 2007 à 21:17) *

tré beau travail même moi j'ai compris aga.gif

troooooooooop fort.........................léon, je veux dire.



ouin.gif Tu me cherche ?

Écrit par : bd9 08/07/2007 22:22

w02.gif

Écrit par : Skyline 09/07/2007 14:57

evil.gif

Écrit par : leon1789 20/07/2007 09:04

Pour completer ce sujet, à la fin de ce message, je laisse un fichier zippé contenant un script d'encodage SCRIPT.AVS (je me suis aidé de RIAM pour créer ce script wink.gif ). Il faut aussi avoir installé RIAM sur c:\programm files...

Avant le lancer l'encodage comme je l'ai expliqué au-dessus, il faut juste renseigner ce script. A l'aide de n'importe quel éditeur de texte (bloc-note par exemple), modifiez le paragraphe intitulé UTILISATEUR comme cela :

-- pour Source, précisez un fichier vidéo .avi .d2v .lst .mkv .mpg .mp2 .m2v .rmbv .wmv (si vous avez d'autres genres de fichiers, merci de me le signaler wink.gif )
... ou bien des fichiers photos numérotés : exemple, pour encoder les 81 images img10.jpg ... img90.jpg, précisez source = img%d.jpg, début = 10, fin = 90, et ips le nombre d'images par seconde désiré.
Pas besoin de fixer les constantes début et fin quand la source est un film.

-- pour Format, précisez 16/9.0 (pour la plupart des DVD), ou bien 4/3.0 (pour certaines caméras numériques par exemple). Pour un réencodage, je crois qu'il vaut mieux laisser faire de manière automatique en mettant 0...

-- pour Entrelacee, précisez True si votre source est entrelacée, ou bien False si elle ne l'est pas. Dans le doute, mettez True, mais je vous conseille de mettre False si votre source n'est pas entrelacée : encodage un peu plus rapide et plus précis.

-- pour Largeur, mettez la largeur de l'image que vous désirez pour l'encodage. Si vous n'avez pas de contrainte particulière, je vous conseille de mettre 0, c'est-à-dire de conserver la largeur de votre source.
Dans le but d'avoir un ratio largeur/hauteur le plus fidèle à l'original, mais aussi compatible avec le codec DivX, il se peut que la largeur réelle soit différente (de 15 points maximum) de celle que vous demandez...

-- pour HD, mettez False pour un encodage standard (maximum 720 pixels en largeur), ou True pour un encodage Haute Définition... Dans le doute, laissez False pour une plus grande compatibilité avec les lecteurs de salon.

-- pour Audio, mettez votre éventuel fichier .avi .m2v .mpg .mp2 .mp3 .mkv .rmbv .wma .wmv .wav pour réaliser un doublage sonore.

-- pour SousTitres, mettez votre éventuel fichier de sous-titres : fichier .ass .idx .psb .smi .srt .ssa .sub .txt

-- pour Pourcent, mettez un pourcentage du film à encoder : 100 encode tout le film (en général, c'est ce que l'on veut ! wink.gif ). Pour faire des tests, il peut être pratique de n'encoder que 3 ou 4 %...

-- pour Infos, laissez False (car les variables du script n'intéressent que moi wink.gif )

Une fois ces champs ajustés, enregistrez ce script n'importe où (par exemple dans le répertoire où se trouve la vidéo source wink.gif ), puis chargez normalement le script.avs dans VirtualDub (file / open video file) et poursuivez les opérations comme je l'ai indiqué dans mon premier message au-dessus (http://forum.ripp-it.com/index.php?showtopic=16372&hl=) afin de configurer la compression DivX (et la compression audio si tel est le cas).

Le fichier SCRIPT.AVS est celui-ci (merci de me soumettre vos remarques, questions, suggestions, etc. yahoo.gif ) :

#########################
# **** UTILISATEUR **** #
#########################

# SOURCE VIDEO ou IMAGES <============
# vidéos .avi .d2v .lst .mkv .mpg .mp2 .m2v .rmbv .vob .wmv
# images .bmp .jpg .png ...
Source = "C:\riam\vis\vobs.lst"
#Source = "C:\riam\images (%d).jpg"
#debut = 1     # pour source images
#final = 10    # pour source images
ips = 25   # pour source images et conversions

# FORMAT SUPPORT ENREGISTREMENT  <============
# 16/9.0 pour encoder un DVD ou plus rarement 4/3.0
# 0 pour détection automatique (pour images et réencodage)
Format = 16/9.0

# DESENTRELACEMENT  <============
Entrelacee = False # True

# RESIZE  <============
# 0 pour largeur d'image origine
Largeur = 0
HD = False # True

# AUDIO  <============
# fichiers .avi .m2v .mpg .mp2 .mp3 .mkv .wma .wmv .rmbv .wav
# ("" = pas de doublage sonore)
Audio = ""

# SOUS-TITRES  <------------
# fichiers .ass .idx .psb .smi .srt .ssa .sub .txt
# ("" = pas de sous-titres)
SousTitres = ""

# ENCODAGE à ?? %  <------------
# 100 pour la video entière
Pourcent = 10

# VARIABLES DU SCRIPT
Infos = False # True


#################################################
# **** Ripp-it , VirtualDub , AVISynth 2.5 **** #
#################################################


# REPERTOIRE DES PLUGINS EXTERNES
rep = "C:\Program Files\Ripp-It_AM\dlls\"


#
# SOURCE : IMAGES ou VIDEO  
#
LoadPlugin(rep+"DirectShowSource.dll") # ?
LoadPlugin(rep+"MPEGDecoder.dll") # ok      
LoadPlugin(rep+"MPEG2Dec3.dll") # ?
Assert(Source.Exist || Source.FindStr("%d")>0,"Le fichier source n'existe pas.")
Extens = Source.RightStr(4).UCase
Source = Extens==".LST" ? Source.MPEGSource :
       \ Extens==".VOB" ? Source.MPEGSource(-2,"no2dv") :
       \ Extens==".D2V" ? Source.MPEG2Source(cpu=4) :
       \ Extens==".AVI" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".M2V" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".MOV" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".MPG" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".MP2" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".MKV" ? Source.DirectShowSource(fps=ips) :
       \ Extens=="RMBV" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".WMV" ? Source.DirectShowSource(fps=ips) :
       \ Extens==".BMP" ? Source.ImageSource(debut,final,ips) :
       \ Extens==".JPG" ? Source.ImageSource(debut,final,ips) :
       \ Extens==".PNG" ? Source.ImageSource(debut,final,ips) :
       \ Source
Assert(Source.IsClip,"Aïe, votre vidéo source n'est pas reconnue.")


#
# AUDIO
#
Ext = Audio.RightStr(4).UCase
Source = Audio.Exist ?
           \ Ext==".WAV" ? Source.AudioDubEx(Audio.WAVSource) :
           \ Ext==".AVI" ? Source.AudioDubEx(Audio.AVISource) :
           \ Ext==".WMA" ? Source.AudioDubEx(Audio.DirectShowSource) :
           \ Ext==".MP3" ? Source.AudioDubEx(Audio.DirectShowSource) :
           \ Ext==".M2V" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Ext==".MPG" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Ext==".MP2" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Ext==".MKV" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Ext=="RMBV" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Ext==".WMV" ? Source.AudioDubEx(Audio.DirectShowSource(fps=ips)) :
           \ Source :
         \ Source
function DownMix( clip C )
{
  FL  = GetChannel(C,1)
  FR  = GetChannel(C,2)
  FC  = GetChannel(C,3)
  LFE = GetChannel(C,4)
  RL  = GetChannel(C,5)
  RR  = GetChannel(C,6)
  L   = MixAudio( MixAudio(FL,RL), MixAudio(FC,LFE) )
  R   = MixAudio( MixAudio(FR,RR), MixAudio(FC,LFE) )
  Return AudioDub(C, MergeChannels(L, R))
}
Source = Source.AudioChannels==6 ? Source.DownMix : Source


#
# EXTRACTION
#
Bande = 200  # éviter un nombre anormalement élevé d'images clés...
NBImages = Source.FrameCount
Intervalle = Bande*100.0/Pourcent
#Intervalle = Intervalle*30 > NBImages ? NBImages/30.0 : Intervalle
Intervalle = NBImages / Ceil(NBImages/Intervalle)
Bande = Round(Intervalle*Pourcent/100.0)
Source = Source.SelectRangeEvery(Intervalle, Bande, (Intervalle-Bande)/2)


#
# CONVERSION YV12 (pour compatibilité avec la suite)
# et LEGER DEBRUITAGE
#
LoadPlugin(rep+"Undot.dll") # ok
Source = Source.ConvertToYV12(interlaced=entrelacee).Undot


#
# DESENTRELACEMENT
#
LoadPlugin(rep+"SangNom.dll") # ok
Source = Entrelacee ? Source.SangNom : Source


#
# AUTO-ROGNAGE
#
# http://avisynth.org/warpenterprises/files/autocrop_25_dll_20050103.zip
LoadPlugin(rep+"AutoCrop.dll") # mettre à jour
Video = Source.AutoCrop(0,4,2,0,0,0,0,30,5)
#Video = Source.AutoCrop(0,4,2,1,1,1,1,30,10)


#
# REDIMENSIONNEMENT avec conservation de l'aspect de l'image
# Largeur et Hauteur multiples de 16 pour compatibilité... et efficacité d'encodage !
#
Bloc = 16
WV = Video.Width
HV = Video.Height
Format = Format==0 ? Source.width.float/Source.height : Format
RatioY = Source.width/Format/Source.height *HV/WV
Largeur = Largeur==0 ? HD ? round(HV/RatioY) : WV : Largeur
HD = HD || Largeur>720
Lmed = round(Largeur/Bloc.float) *Bloc          
Lmin = Lmed<Largeur ? Lmed : Lmed-Bloc
Lmax = Lmed>Largeur ? Lmed : Lmed+Bloc
Lmax = HD || Lmax<720 ? Lmax : 720
function RatioDelta( int L, float R, int B )
{
  Return abs(100.0*round(R*L/B)*B/L/R-100)
}
RDmed = RatioDelta(Lmed, RatioY, Bloc)
RDmin = RatioDelta(Lmin, RatioY, Bloc)
RDmax = RatioDelta(Lmax, RatioY, Bloc)
Largeur = Largeur%Bloc==0 ? Largeur :
        \ RDmin<RDmax ? RDmin<RDmed ? Lmin : Lmed : RDmax<RDmed ? Lmax : Lmed
Hauteur = round(RatioY*Largeur/Bloc) *Bloc
Video = Hauteur > HV ? BicubicResize(Video,Width(Video),Hauteur,0,0.5) : Video
Video = Largeur > WV ? BicubicResize(Video,Largeur,Height(Video),0,0.5) : Video
Video = Hauteur < HV ? BilinearResize(Video,Width(Video),Hauteur) : Video
Video = Largeur < WV ? BilinearResize(Video,Largeur,Height(Video)) : Video

#
# SOUS-TITTRES .ass .idx .psb .smi .srt .ssa .sub .txt
#
LoadPlugin(rep+"VSFilter.dll") # mettre à jour
Ext = SousTitres.RightStr(4).UCase
Video = SousTitres.Exist ?
          \ Ext==".IDX" ? Video.VobSub(SousTitres) :
          \ Ext==".SUB" ? Video.VobSub(SousTitres) :
          \ Ext==".PSB" ? Video.TextSub(SousTitres) :
          \ Ext==".SMI" ? Video.TextSub(SousTitres) :
          \ Ext==".SRT" ? Video.TextSub(SousTitres) :
          \ Ext==".ASS" ? Video.TextSub(SousTitres) :
          \ Ext==".SSA" ? Video.TextSub(SousTitres) :
          \ Ext==".TXT" ? Video.TextSub(SousTitres) :
          \ Video :
        \ Video


#
# CONVERSION RGB 24 bits AVANT COMPRESSION DIVX
#
Video = Extens==".LST" ? Video.ConvertToRGB24("rec709") :
      \ Extens==".D2V" ? Video.ConvertToRGB24("rec709") :
      \ Video.ConvertToRGB24


#
# VARIABLES DU SCRIPT
#
Video = Infos ? Video.Subtitle("Nbr images source : "+NBImages.string, 20, 20) : Video
Video = Infos ? Video.Subtitle("Nbr images intervalle : "+Intervalle.string, 20, 40) : Video
Video = Infos ? Video.Subtitle("Images testées par interv. : "+Bande.string, 20, 60) : Video
st = "Largeur x Hauteur source : "+WV.string+" x "+HV.string
Video = Infos ? Video.Subtitle(st, 20, 80) : Video
Video = Infos ? Video.Subtitle("Format du support : "+Format.string, 20, 100) : Video
Video = Infos ? Video.Subtitle("Format image observé : "+(1/RatioY).string, 20, 120) : Video
Video = Infos ? Video.Subtitle("Haude définition : "+HD.string, 20, 140) : Video
st = "Largeurs examinées : "+Lmin.string+", "+Lmed.string+", "+Lmax.string
Video = Infos ? Video.Subtitle(st, 20, 160) : Video
st = "Erreurs relevées (%) : "+RDmin.string+", "+RDmed.string+", "+Rdmax.string
Video = Infos ? Video.Subtitle(st, 20, 180) : Video
st = "Largeur x Hauteur retenues : "+Largeur.string+" x "+Hauteur.string
Video = Infos ? Video.Subtitle(st, 20, 200) : Video

Return Video


 Script_d__encodage.zip ( 2.6 Ko ) : 421
 

Écrit par : Fabrick 20/07/2007 10:30

C'est du bon boulot tout ça ! na.gif

Je vais essayer de tester ça un de ces 4 quand j'aurai un peu plus de temps. cling.gif

Écrit par : leon1789 20/07/2007 15:43

(Fabrick @ vendredi 20 juillet 2007 à 11:30) *
C'est du bon boulot tout ça ! na.gif

Je vais essayer de tester ça un de ces 4 quand j'aurai un peu plus de temps. cling.gif

Merci, ça m'arrangerait d'avoir des remarques pour aller un peu plus loin aga.gif

Écrit par : Toruna 25/07/2007 17:21

Chez moi j'ai une erreur quand j'ouvre le script avec VD :

Avisynth open failure :
I don't know what means (H:\script_d_encodage.avs, line 32)

Ma vidéo et mon script sont à la racine de mon disque dur (H:\)

Voilà à quoi ressemble mon script :

#########################
# **** UTILISATEUR **** #
#########################

# SOURCE <============
#Source = "H:\Afro Samurai 02.mkv"

# FORMAT SUPPORT ENREGISTREMENT <============
Format = 16/9.0

# DESENTRELACEMENT <============
Entrelacee = True

# RESIZE <============
# 0 pour largeur d'image origine
Largeur = 0

# TRAITEMENT NETTETE <------------
# entre 0 et 20 (0 = pas de traitement)
Net = 0

# ENCODAGE à ?? % <------------
# 100 pour la video entière
Pourcent = 3

##################################################
# **** Ripp-it , VirtualDub , AVIsynth 2.5x **** #
##################################################


# LECTURE SOURCE
Assert(Source.Exist, chr(10)+"Le fichier source n'existe pas."+chr(10) )
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\MPEGDecoder.dll")
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\MPEG2Dec3.dll")
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\DirectShowSource.dll")
Extension = Source.RightStr(4).UCase
Source = Extension==".LST" ? Source.MPEGSource : Source
Source = Extension==".D2V" ? Source.MPEG2Source : Source
Source = Extension==".MPG" ? Source.DirectShowSource.ConvertToYV12 : Source
Source = Extension==".MKV" ? Source.DirectShowSource.ConvertToYV12 : Source
Source = Extension==".AVI" ? Source.DirectShowSource.ConvertToYV12 : Source
Assert(Source.IsClip, chr(10)+"Aïe, votre vidéo source n'est pas reconnue...
Merci de le signaler à leon1789, et en attendant, utilisez RIAM !;-)"+chr(10))


# EXTRACTION (cf. test de compressibilité)
Bande = 200 # éviter un nombre anormal d'images clés...
NBImages = Framecount(Source)
Intervalle = Bande*100.0/Pourcent
Intervalle = Intervalle*30 > NBImages ? NBImages/30.0 : Intervalle
Intervalle = NBImages / Floor(NBImages/Intervalle)
Bande = Round(Intervalle*Pourcent/100.0)
Source = SelectRangeEvery(Source, Intervalle, Bande, (Intervalle-Bande)/2)


# DESENTRELACEMENT
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\SangNom.dll")
Source = Entrelacee ? Source.SangNom : Source


# AUTO-ROGNAGE
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\AutoCrop.dll")
Video = Source.AutoCrop(0)


# REDIMENSIONNEMENT avec conservation de l'aspect de l'image
WV = Width(Video)
HV = Height(Video)
Largeur = Largeur == 0 ? WV : Largeur
Largeur = Largeur/4 *4
RatioY = Width(Source)/Format/Height(Source)
Hauteur = Round(RatioY*Largeur*HV/WV/2)*2
Video = Hauteur > HV ? BicubicResize(Video,Width(Video),Hauteur,0,0.5) : Video
Video = Largeur > WV ? BicubicResize(Video,Largeur,Height(Video),0,0.5) : Video
Video = Hauteur < HV ? BilinearResize(Video,Width(Video),Hauteur) : Video
Video = Largeur < WV ? BilinearResize(Video,Largeur,Height(Video)) : Video
# Largeur multiple de 4, Hauteur multiple de 2 --> compatibilité DivX 6


# DEBRUITAGE SPATIO-TEMPORIEL
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\FluxSmooth.dll")
Video = Video.FluxSmooth(3+Net/10,5+Net/10)


# AUGMENTATION NETTETE
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\MSharpen.dll")
Trait = Net==0
VideoOrig = Video
Video = Trait ? Video : Video.MSharpen(20-Net,40+6*Net)


# LISSAGE
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\MaskTools.dll")
Mask = Trait ? 0 : Video.EdgeMask(0,130,0,0,type="line").expand.expand
Video = Trait ? Video : Video.MaskedMerge(VideoOrig, Mask)


# SMOOTHER SPATIO-TEMPORIEL
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\Deen.dll")
Video = Trait ? Video : Video.Deen("a3d",1+Net/10,2+Net,3+3*Net,2+Net/6,3+Net,0.0)


Return(Video)

Écrit par : leon1789 25/07/2007 18:15

(Toruna @ mercredi 25 juillet 2007 à 18:21) *
Chez moi j'ai une erreur quand j'ouvre le script avec VD :

Avisynth open failure :
I don't know what means (H:\script_d_encodage.avs, line 32)

Ma vidéo et mon script sont à la racine de mon disque dur (H:\)

Voilà à quoi ressemble mon script :

#########################
# **** UTILISATEUR **** #
#########################

# SOURCE <============
#Source = "H:\Afro Samurai 02.mkv"

# FORMAT SUPPORT ENREGISTREMENT <============
Format = 16/9.0

# DESENTRELACEMENT <============
Entrelacee = True

# RESIZE <============
# 0 pour largeur d'image origine
Largeur = 0

# TRAITEMENT NETTETE <------------
# entre 0 et 20 (0 = pas de traitement)
Net = 0

# ENCODAGE à ?? % <------------
# 100 pour la video entière
Pourcent = 3

aga.gif
Il faut enlever le caractère # devant
Source = "H:\Afro Samurai 02.mkv"

Tu as bien raison de demander un encodage de 3% du film : ça permet de tester sans attendre 3 heures cling1.gif

Pour réencoder, faire bien attention à bien ajuster le FORMAT (sinon la video sera étirée dans un sens) et mettre ENTRELACEE à True que si nécessaire...

Écrit par : Toruna 25/07/2007 18:48

Ca doit encoder 3% à partir du début ou 3% en prenant des bouts aléatoirement (moi ça fait ça) ?

J'ai encodé mais tout est en vert, les images freezes et le son pareil. J'ai changé True par False pour l'entrelacement, mais rien ni fait.

Écrit par : leon1789 25/07/2007 20:15

(Toruna @ mercredi 25 juillet 2007 à 19:48) *
Ca doit encoder 3% à partir du début ou 3% en prenant des bouts aléatoirement (moi ça fait ça) ?

effectivement, ce n'est pas les 3% du début, mais 3% répartis sur l'ensemble du film (de manière non aléatoire même si cela a l'air) : c'est mieux pour faire un test...

(Toruna @ mercredi 25 juillet 2007 à 19:48) *
J'ai encodé mais tout est en vert, les images freezes et le son pareil. J'ai changé True par False pour l'entrelacement, mais rien ni fait.

arf... Je ne vois pas comment corriger le problème : problème vidéo + problème audio, cela ne m'a pas l'air simple...
En désespoir de cause, pour éviter tout traitement qui pourrait faire apparaître ce vert, essaie d'écrire la ligne
Return(Source)

juste avant le passage
# DESENTRELACEMENT
LoadPlugin("H:\PROGRA~1\RIPP-I~1\dlls\SangNom.dll")
(...)

Écrit par : Toruna 25/07/2007 21:05

Merci, c'était bien ça ! La qualité est sublime en plus !

Dernier petit problème, je n'ai pas les sous-titres, mon fichier est un .mkv et il possède 2 pistes de sous titres (français et anglais). Chez un pote j'arrive à les lire avec WMP, mais là, rien n'y fait tant avec WMP que VLC. Pourtant on a tout les deux le pack matroska full.

Comment encoder mes vidéos avec les sous titres français ?

Écrit par : leon1789 25/07/2007 22:07

(Toruna @ mercredi 25 juillet 2007 à 22:05) *
Merci, c'était bien ça ! La qualité est sublime en plus !

ok ! mrgreen2.gif là, je ne suis pas chez moi, mais à mon retour, il faudra que je regarde précisément la ligne qui pose problème avec les mkv... merci d'avoir testé aga.gif

(Toruna @ mercredi 25 juillet 2007 à 22:05) *
Dernier petit problème, je n'ai pas les sous-titres, mon fichier est un .mkv et il possède 2 pistes de sous titres (français et anglais). Chez un pote j'arrive à les lire avec WMP, mais là, rien n'y fait tant avec WMP que VLC. Pourtant on a tout les deux le pack matroska full.
Comment encoder mes vidéos avec les sous titres français ?

je peux juste te soumettre l'idée de regarder dans les tutos du forum, puis de poster un nouveau message pour que tout le monde y jète un coup d'oeil. cling1.gif

A mon retour, j'essaierai aussi de tenir compte de ta remarque sur les sous-titres pour améliorer mon script...

Écrit par : leon1789 27/07/2007 23:36

(leon1789 @ mercredi 25 juillet 2007 à 23:07) *
A mon retour, j'essaierai aussi de tenir compte de ta remarque sur les sous-titres pour améliorer mon script...

Voilà qui est fait maintenant ! yahoo.gif

...juste un petit défaut : les sous-titres sont synchronisés uniquement quand on fait un encodage complet...

Écrit par : leon1789 28/07/2007 12:02

(leon1789 @ mercredi 25 juillet 2007 à 23:07) *
ok ! mrgreen2.gif là, je ne suis pas chez moi, mais à mon retour, il faudra que je regarde précisément la ligne qui pose problème avec les mkv... merci d'avoir testé

C'est chose fait maintenant ! ...c'était simplement une histoire de résolution (non-)compatible avec le codec divx. Problème réglé aga.gif

En prime, j'ai ajouté la possibilité de faire un doublage sonore à partir d'un fichier wav. J'espère pouvoir le faire également avec la bande sonore d'un autre encodage... à suivre donc !

Écrit par : leon1789 28/07/2007 23:21

(leon1789 @ samedi 28 juillet 2007 à 13:02) *
J'espère pouvoir le faire également avec la bande sonore d'un autre encodage... à suivre donc !

A y est ! cling1.gif

Écrit par : zebbra 02/08/2007 20:18

an_coucou.gif Pas mal leon1789, très bien expliquer. cling.gif

Écrit par : micjul 02/08/2007 20:19

Moi j'ai rien compris yahoo.gif Bon OK guix_jesors.png

Écrit par : leon1789 02/08/2007 20:32

aga.gif

Écrit par : leon1789 02/08/2007 20:44

Je viens de rajouter "augmentation de netteté hors mouvement" : ça fait toujours gagner un peu de compressibilité... aga.gif

Lol ..
Je m'y emploie des ce week-end ... faut bien que j'occupe mes journées yahoo.gif en tout cas cela à l'air trés complet

J'avoue que je n'ai pas testé les types de sous-titres autres que srt et txt. C'est donc un script "théorique" dans cette partie.

Écrit par : micjul 02/08/2007 20:59

Ben c'est déjà pas mal je trouve, on peut déjà faire beaucoup de choses avec ces 2 formats ..

Écrit par : leon1789 04/08/2007 22:24

message obsolète

Écrit par : leon1789 14/08/2007 15:56

Je viens d'ajouter au script la possibilité d'encoder un ensemble d'images numérotées (avec doublage sonore et sous-titres si on en a envie wink.gif ). Du coup, ça complique un peu l'entête à paramétrer... tant pis...

Je laisse un exemple de résultat ci-joint (fichier avi dans le zip). Afin de pouvoir le placer sur le forum, j'ai compressé bcp les images et le son ! Les images et la bande sonore proviennent des échantillons de notre cher windows vista... aga.gif

 seq_images.zip ( 257.71 Ko ) : 274
 

Écrit par : leon1789 19/08/2007 13:17

Aujourd'hui, j'ai introduit dans mon script la fonction SoftSharpen qui, comme son nom essaie de l'indiquer, réalise une augmentation de netteté dans les scènes statiques, tout en essayant de maintenir la compressibilité de la vidéo grâce aux scènes rapides...
Cette fonction prend en charge un débruitage, une augmentation du piqué, un "lissage" en fonction du mouvement, et un antialiasing (basique).

Écrit par : leon1789 22/08/2007 23:48

Bon, je viens d'ajouter un petit gadjet : la possibilité d'encoder en HD, comme je viens d'expliquer ici http://forum.ripp-it.com/index.php?showtopic=16810&pid=251526&st=0&#entry251526

Encoder un DVD zone 2 (image anamorphique 720x576)

Format classique : on fait le choix garder la largeur et on rétricit la hauteur de l'image DVD (par exemple 720x304 pour un film 2.35, après rognage des bandes noires) : on crée alors un encodage "standard Home Cinéma".

Format HD : on fait le choix de garder la hauteur et on agrandit la largeur de l'image DVD (par exemple 1024x432 pour un film 2.35, après rognage des bandes noires) : on crée alors un encodage "Haute Définition".

Ne pas croire que l'encodage HD donne une image meilleure que l'originale... En revanche, la seconde technique d'encodage donne une meilleure image que la première aga.gif (pour le même bitrate, mais pas trop bas quand même)

Écrit par : karuto 03/05/2008 11:08

Bonjour,

en suivant le sujet http://forum.ripp-it.com/sujet_t17040.htm, je suis tombé sur ce sujet là mais je rencontre un petit problème : lorsque j'importe ma vidéo MOV dans VirtualDub, j'ai un message d'erreur me disant que VirtualDub ne peux pas identifier le type de fichier de ma vidéo.

J'ai installé QuickTime Alternative avec le filtre direct show pour pouvoir regarder mes MOV avec Windows Media Player (je suis sous Vista) et ca marche bien.

une idée d'ou cela peut venir ?

Écrit par : karuto 03/05/2008 11:34

(karuto @ samedi 03 mai 2008 à 12:08) *
Bonjour,

en suivant le sujet http://forum.ripp-it.com/sujet_t17040.htm, je suis tombé sur ce sujet là mais je rencontre un petit problème : lorsque j'importe ma vidéo MOV dans VirtualDub, j'ai un message d'erreur me disant que VirtualDub ne peux pas identifier le type de fichier de ma vidéo.

J'ai installé QuickTime Alternative avec le filtre direct show pour pouvoir regarder mes MOV avec Windows Media Player (je suis sous Vista) et ca marche bien.

une idée d'ou cela peut venir ?


ca a l'air de fonctionner avec le script, mais uniquement si je choisis le codec Xvid, lorsque je tente en divx j'ai un autre message d'erreur : "the source image format is not acceptable"

Écrit par : leon1789 03/05/2008 11:38

Il faut utiliser un script avisynth pour faire l'importation.
OK, nos messages se sont "croisés".


Pour divx, il faut paramétrer le codec sur le bon profil : home theater ou HD par exemple. En tout cas, pas le profil par défaut qui est là pour des petites résolutions.

Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)