Problème de démux mkv avec GITS SAC NERAE [Résolu]
Posté vendredi 09 décembre 2005 à 22:10 (#1)
J'ai un petit problème avec les gits sac réalisés par nerae.
En effet, la vidéo est composée d'un fichier vidéo xvid, d'un fichier audio mp3, le tout muxé en mkv.
J'ai donc voulu le remuxer en avi afin de le lire sur ma platine divx, mais le son est décalé...
Comment y remédier ? J'ai testé les méthodes en modifiant le framerate et en jouant sur les delays mais je n'obtiens rien de bon...
J'ai également entendu parler de fps variable possible dans les mkv ?
Merci d'éclairer ma lanterne...
A bientôt
http://e-asie.typepad.com/blog/
Posté vendredi 09 décembre 2005 à 23:48 (#2)
Toutefois en l'ouvrant avec VirtualDubMOD et en copie direct vers un format .AVI, le résultat est, me semble-t-il, satisfaisant (décalage audio moindre) sans être aussi bon qu'un réencodage complet...
Un grand MERCI à tous ceux qui occupent leur temps à sous-titrer ces séries inconnues qui ne méritent pas de le rester !
-------------------------------------------------------------------------------
![]() | ![]() | .org |
Posté samedi 10 décembre 2005 à 00:58 (#3)
Moi qui me prenait la tête à recaler le son...
J'ai ouvert l'episode sous vdubmod et effectivement il me mentionne le fait que le mkv a un framerate variable et que devrais utiliser un autre outil pour retoucher mon fichier...
C'est sympa, mais je sais toujours pas lequel ^^
Bon, je vais faire quelques recherches, merci de ta réponse en tout cas...
Même si ca me semble un peu désespéré, quand même de la vidéo et de l'audio en variable... C'est fort le mkv !

http://e-asie.typepad.com/blog/
Posté samedi 10 décembre 2005 à 18:32 (#4)
- fichier_vfr.mkv, c'est ton fichier MKV. Comme le fichier de sortie est un AVI, il ne fonctionne pas avec le Real ou le H.264.
- fichier_cfr.avi, c'est le fichier de sortie en AVI. Il ne contient que la piste vidéo.
- timecodes.txt, c'est le fichier qui contient les timecodes nécessaires pour reconvertir en framerate variable. Si le fichier n'est pas créé par mkv2vfr, c'est qu'il s'agit d'une vidéo à framerate constant.
Posté samedi 10 décembre 2005 à 23:24 (#5)
Pour en revenir au problème initial, ce petit utilitaire a transformé mon épisode 3 en une video sans son avec un framerate de 23,976.
Je rentre dans VirtualDubMOD sans souci et essaye donc de lui adjoindre le fichier mp3 en VBR récupéré avec mkvextract. Le résultat est un fichier .avi AVEC des décalages sonores.
Je décide de convertir le mp3 en version CBR (ici avec Nero car je n'ai pas grand chose qui tolère le VBR en entrée). Je remultiplexe le tout et ... c'est un désastre

En regardant le contenu du fichier timecodes.txt, je crois comprendre que mon épisode se décompose en deux parties. L'une de la première trame à la 2686ème possède un framerate de 29,9701, l'autre de la 2687 à la dernière en possède un de 23,976

Je recompile alors la video et l'audio, tout deux à taux fixe, à partir du début de l'épisode et ... j'obtiens un décalage d'environ 22" dès le départ >_

Reprenons les étapes:
- Transformer la video de VFR à CFR avec mkv2vfr: moins d'une minute
- Transformer l'audio du VBR au CBR: quelques minutes
- Remultiplexer le tout sans le générique en incluant un décalage audio (à calculer et tester): plusieurs minutes
Je tiens à rappeler que je n'ai testé cette méthode qu'avec l'épisode dont je dispose actuellement, à savoir le 3ème. Si les autres ont été conçus de manière similaire (générique rajouté), la méthode pourra s'appliquer sans problème sinon... :noexpression:
La balle est dans ton camp Darkshaka. Dis nous ce qu'il en est de ton côté...
Un grand MERCI à tous ceux qui occupent leur temps à sous-titrer ces séries inconnues qui ne méritent pas de le rester !
-------------------------------------------------------------------------------
![]() | ![]() | .org |
Posté dimanche 11 décembre 2005 à 04:35 (#6)
Je n'ai eu droit jusqu'à maintenant qu'à des "va voir le tuto décalage son (frame et delay)..."

A pollux :
Je ne suis pas vraiment au top niveau ligne de codes, j'ai téléchargé l'exe de mkv2vfr mais lorsque je le lance, une fenêtre msdos s'affiche rapidement mais je ne peux rien tapper à l'intérieur...
Comment cela fonctionne ? je n'ai quasiment aucune connaissance dans ce domaine...

A NullzBun :
J'étais arrivé à la même conclusion que toi en réussissant à recaler le son sur le générique (avec le fps) mais ce dernier foirait sur l'episode...
A la limite, découper le générique ne me dérange pas du tout, ce qui m'intéresse vraiment c'est l'épisode en lui-même... J'ai quelques raws des op et end de qualité donc no soucy.
Par contre je n'ai pas bien compris lorsque tu dis cela : "Je décide de passer le décalage à 22696 et... Miracle ! La synchronisation est réapparue tout au long de l'épisode! Par contre le mp3 VBR donne de mauvais résultat."
Tu dis que la synchro est bonne mais que le VBR donne de mauvais résultats ? Pourtant tu as bien converti le mp3 en CBR dans l'étape préalable ?
Merci encore pour votre aide, petit à petit je m'améliore niveau encodage et réenco et ca fait plaisir de pouvoir faire ce que l'on veut de ses petites mains (à ce sujet le log RIAM est jouissif)
Dans l'attente de vos réponses...

PS : Comme ça en passant, est-il possible de ripper ou d'encoder des eps à partir d'un fichier iso ou mds ? (je pensais à l'utilisation d'un lecteur virtuel, je me rappelles plus le nom du log)
http://e-asie.typepad.com/blog/
Posté dimanche 11 décembre 2005 à 11:31 (#7)
Citation
Je n'ai eu droit jusqu'à maintenant qu'à des "va voir le tuto décalage son (frame et delay)..."

De rien, à partir du moment où je dispose des outils et surtout du temps, cela ne me gêne pas d'explorer les méandres de l'encodage video.
Citation
Je ne suis pas vraiment au top niveau ligne de codes, j'ai téléchargé l'exe de mkv2vfr mais lorsque je le lance, une fenêtre msdos s'affiche rapidement mais je ne peux rien tapper à l'intérieur...
Comment cela fonctionne ? je n'ai quasiment aucune connaissance dans ce domaine...

Je vais répondre à la place de pøllux :whistling: Tu disposes de deux options:
- la 1ère, ma préférence, tu dois créer un fichier au format texte mais avec l'extension .bat (SAC_VFR2CFR.bat par ex.). Ce fichier contiendra une seule ligne similaire à celle donnée par pøllux:
mkv2vfr.exe nom_du_fichier_original.mkv nom_du_fichier_final_sans_son.avi timecodes.txt. L'épisode .mkv, le logiciel mkv2vfr.exe et le fichier .bat doivent se trouver dans le même répertoire! Double-cliques sur le fichier .bat, une fenêtre s'ouvre et l'opération s'exécute.
- la 2ème, plus directe mais nécessitant des connaissances MS-DOS, demande d'ouvrir un invité de commandes, de se rendre dans le répertoire des épisodes puis de taper le code précédent pour obtenir le même résultat.

Citation
[...]
Par contre je n'ai pas bien compris lorsque tu dis cela : "Je décide de passer le décalage à 22696 et... Miracle ! La synchronisation est réapparue tout au long de l'épisode! Par contre le mp3 VBR donne de mauvais résultat."
Tu dis que la synchro est bonne mais que le VBR donne de mauvais résultats ? Pourtant tu as bien converti le mp3 en CBR dans l'étape préalable ?
Là, c'est pour moi


Citation
Oui ( Tu disposes de logiciels tels Daemon Tools ou Alcohol). Une petite recherche dans la section Informatique du forum devrait t'aider...
Un grand MERCI à tous ceux qui occupent leur temps à sous-titrer ces séries inconnues qui ne méritent pas de le rester !
-------------------------------------------------------------------------------
![]() | ![]() | .org |
Posté dimanche 11 décembre 2005 à 13:47 (#8)
Il n'est effectivement pas rare de trouver des vidéos comme celle-là puisque les génériques sont traités à part, par exemple pour rajouter le karaoké.
Si vraiment tu souhaites garder les génériques, il faut utiliser :
A l'aide du fichier timecodes.txt, tu récupères le fps moyen de la vidéo (la première ligne "Assume xx.xxx"). Les lignes suivantes sont de la forme début, fin, fps et pour chaque intervalle délimité par les frames début et fin, tu dois remplir un fichier AVS de ce genre :
Citation
video1=source.Trim(début,fin).AssumeFPS(fps).ChangeFPS(119.88)
video2=source.Trim(début,fin).AssumeFPS(fps).ChangeFPS(119.88)
video3=source.Trim(début,fin).AssumeFPS(fps).ChangeFPS(119.88)
etc...
video1+video2+video3+etc...
FDecimate(fps moyen)
Le fps de 119.88 est choisi car on a beaucoup de chances d'avoir une vidéo issue de NTSC et qu'il est en même temps multiple de 23.976 et de 29.970.
Comme NullzBUN a déjà déterminé que le fps moyen était de 23.976 et que la vidéo était composée de 2 parties, ton fichier AVS doit être de ce type :
Citation
video1=source.Trim(0,2686).AssumeFPS(29.9701).ChangeFPS(119.88)
video2=source.Trim(2687,mettre ici le numéro de la dernière frame).AssumeFPS(23.976).ChangeFPS(119.88)
video1+video2
FDecimate(23.976)
Tu ouvres ce fichier AVS avec VirtualDub et tu sauvegardes en AVI sous un autre nom de fichier. Le durée de ce fichier doit maintenant correspondre à celle du fichier MKV ;)
Posté dimanche 11 décembre 2005 à 14:12 (#9)

Je teste votre méthode dès que possible et je vous dis si ça fonctionne sur l'ensemble des épisodes...
Je suis impressionné

La journée commence bien

Bonne fin de week end
Edit pøllux : Attention quand même, l'AVS de mon dernier post oblige à réencoder

-> Fusion

Bien le bonjour messieurs pollux et Nullz,
Alors j'ai testé vos méthodes pour corriger mon pb de framerate variable et c'est incroyable, cela fonctionne !!
Franchement je suis épaté


J'aurais juste quelques petites (dernières ?) questions à vous poser

Pour Nullz (ou pour les deux

1) Quel logiciel me conseilles tu pour passer l'audio de vbr à cbr ? J'ai testé avec vdubmod mais je ne savais pas si je devais prendre lame mp3 ou mp3 "classique" comme format de compression...
2) dans le fichier timecode, le changement de framerate intervient à la frame 2686, est-ce grave si je coupe l'op à 2687 (car en fait cette frame correspond à une keyframe...) le son va-til se décaler par la suite ?
3) La valeur de décalage audio que tu m'a fournie est très bonne, mais si je veux tenter de l'affiner davantage est-ce dangereux quand à la synchro finale ?
Pour pollux (et pour castor... mouarf elle est nulle celle là

1) Je n'arrive pas à ouvrir le fichier avs que j'ai crée, vdub me dit ne pas connaitre la fonction dite FDecimate
Voici le contenu de mon fichier :
source=AviSource("D:\Animes\GITS SAC v2 (vostfr)\MODIF GITS\01_sonCBR.avi",audio=false)
video1=source.Trim(0,2686).AssumeFPS(29.9701).ChangeFPS(119.88)
video2=source.Trim(2687,35782).AssumeFPS(23.976).ChangeFPS(119.88)
video1+video2
FDecimate(23.976)
Même chose que pour Nullz au niveau des frames... La dernières sous VD semble être la 35782 ème, est-ce important de la mettre sachant que dans le timecodes il est inscrit 35782 ?
Je finis sur un ENORME ARIGATO

Cela fait près de 3 mois que je me coltine ce problème d'enco, à tel point que j'avais commencé à recup des raws jap, faire le timing et recopier les st de nerae

Un truc de dingue quoi ^^

Si vous êtes sur paris je vous paie un coup à boire

PS : d'ailleurs si l'un de vous est un expert en scripts avzs pour améliorer les enco d'animes je suis preneur de vos conseils avisés
Ce message a été modifié par pøllux - dimanche 11 décembre 2005 à 16:52.
http://e-asie.typepad.com/blog/
Posté dimanche 11 décembre 2005 à 21:32 (#10)

J'ai réalisé la conversion en deux temps: MP3 VBR => WAV et WAV => MP3 CBR. Je ne sais pas ce que peut donner une recompression directe sous VirtualDub sachant qu'il a déjà des problèmes à l'ouverture de l'audio en VBR... à tenter...
Le MP3 par Lame m'a toujours donné satisfaction et le mp3 standard est chez moi limité en fréquence à 32kHz (??)
2. Si tu veux aller contre les conseils de l'intelligence artificielle...

3. La valeur que j'ai obtenue n'est pas exactement celle que j'ai utilisée (22453ms) car j'ai fait plusieurs calculs (pas forcément justifiés) en fonction des 'framerates'. Il n'y aucun danger d'explosion de l'écran en tout cas

'Darkshaka dit :
4. Je crois que la fonction fonction dite FDecimate n'est pas incluse dans l'installeur de AviSynth et doit donc être téléchargé ici puis copié dans le répertoire des plug-ins.
Le script utilisé semble correct.
'Darkshaka dit :
Si j'étais sur Paris, je serais déjà venu t'emprunter ;) tes épisodes.
PS
Pour Avisynth, je dirais que je débute, même si ça fait un moment déjà

Un grand MERCI à tous ceux qui occupent leur temps à sous-titrer ces séries inconnues qui ne méritent pas de le rester !
-------------------------------------------------------------------------------
![]() | ![]() | .org |
Posté dimanche 11 décembre 2005 à 22:13 (#11)


Merci pour les diverses infos, réglages ect...
Si ce n'est que t'envoyer les épisodes, je peux très bien le faire par msn ou par irc... j'up à 30/35 kos, je pense que ca ira assez vite, deux eps par soir et hop ^^
Je te dois bien ça...
http://e-asie.typepad.com/blog/
Posté lundi 12 décembre 2005 à 17:59 (#12)
Darkshaka, le 11/12/2005 à 14:12, dit :
Lame est mieux et n'a pas les limitations de l'encodeur fourni en standard par Microsoft.
Darkshaka, le 11/12/2005 à 14:12, dit :
L'opening doit aller jusqu'à la 2686. Peu importe si la dernière frame n'est pas une keyframe, le tout c'est que ta vidéo doit commencer par une keyframe.
Darkshaka, le 11/12/2005 à 14:12, dit :
A tester. Sinon, tu peux couper l'opening et le traiter à part puisque c'est celui-ci qui n'a pas le bon framerate...
Darkshaka, le 11/12/2005 à 14:12, dit :
Voir la réponse de NullzBUN. J'ai oublié de préciser qu'il s'agissait d'un filtre externe

Posté samedi 22 avril 2006 à 09:40 (#13)

Lorsqu'on effectue une recherche sur internet pour mettre du mkv en avi, on obtient très très souvent la bonne blague du réencodage en mpeg avant de repasser an avi ! Semblerait qu'ils ne savent pas qu'il s'agit bien souvent de divx dans le mkv mais bon .... (sinon j'ai eu un autre problème avec du RV9 dedans et là ben j'ai coincé !

Je tiens donc à vous remercier grandement

Si j'ai bien compris je peux conserver les épisodes entiers (avec générique) en créeant un fichier avs avec avisynth, puis en réencodant avec virtualdubmod ?!
Je garde vos explications sous la main pour le test que je vais effectuer.
Moi aussi je travaille dessus depuis un moment, et j'avais bien eu le message de virtualdubmod me prévenant d'un framerate variable, mais je comprenais pas trop son trip, un framerate étant toujours plus ou moins variable (autour d'un taux moyen fixé lors de l'encodage) mais j'aurai découvert qu'une vidéo peut contenir deux framerate totalement différents ! C'est à devenir dingue .... :pinch:
Enfin bref MERCI à TOUS et désolé pour le pavé !

EDIT : Tiens j'aurai une petite question pollux là stp, donc tu dis :
"A tester. Sinon, tu peux couper l'opening et le traiter à part puisque c'est celui-ci qui n'a pas le bon framerate..."
Donc en récupérant le framerate du reste de l'épisode (pas celui du générique), à l'appliquant au générique on peut par la suite recompiler tout ça pour avoir un synchro ? (sans pour autant encoder TOUTE la vidéo) ?
Mais qu'en est il du son ? Lui aussi est variable, faut-il le rendre constanten entier, ou traiter le son du générique à part également ? (et donc lui donner le même bitrate que le reste de l'épisode ?)
Merci de m'éclairer car si j'ai bien compris, ça me semble plus intéressant comme méthode !

Posté samedi 22 avril 2006 à 23:31 (#14)


D'abord bienvenue ici, il ne te reste qu'à te creuser un petit terrier au chaud sur ce forum avec nous.
Passer par le MPEG pour transformer du mkv en avi est un conseil que je n'ai heureusement jamais lu... (Pour le RV9, il faut utiliser des trucs peu connus, c'est sûr)
Tout d'abord, ôte moi le doute que tu ne mélanges pas les taux video et audio dans tes propos avec les fréquences!
Rappel
- taux audio: constant (mp3 à 128k) ou variable (mp3 en ABR ou VBR, ogg)
- fréquence audio: constante (44.1kHz ou 48kHz)
- taux video: rarement constant (uniquement pour ne pas perdre de qualité avant un réencodage) souvent variable (généralement entre 700k et 1200k)
- fréquence video: constante (23,976 (JP) ou 25 (FR) ou 29,97fps (US)) dans un seul clip (le mkv peut contenir plusieurs clips adjacents (cela résulte en une video globale à fréquence variable)))

Un grand MERCI à tous ceux qui occupent leur temps à sous-titrer ces séries inconnues qui ne méritent pas de le rester !
-------------------------------------------------------------------------------
![]() | ![]() | .org |
Posté lundi 24 avril 2006 à 08:17 (#15)
Concernant ta question, regarde ce sujet qui t'explique comment couper un mkv. L'idée est que dans le cas simple d'une vidéo vfr (variable bitrate) constituée de 2 voire 3 parties cfr (constant framerate), il est peut être dommage de réencoder le tout si le codec utilisé est compatible avec l'AVI.
Exemple : On considère une vidéo vfr V constituée de 2 parties cfr V1 et V2. V2 est la partie télécinée, c'est à dire celle qui a un framerate de 23.976. C'est celle à laquelle il ne faut pas toucher.
1- Tu ouvres ton MKV vfr avec mkvtoolnix et tu le coupes en 2 MKV cfr. Tu obtiens M1, ton MKV contenant V1 et M2 ton MKV contenant V2.
2- A l'aide d'AviSynth, tu réencodes M1 en AVI (voir plus haut). Tu obtiens A1
3- Tu extraits tes flux de M2 et tu les muxes dans un AVI. Tu obtiens A2.
4- Tu joins A1 et A2 pour obtenir ton AVI final.
Encore une fois, c'est à tester et ça évite d'avoir à réencoder toute la vidéo. N'hésite pas à revenir ici pour nous dire si ça marche.