View Full Version : Video fuori sincro con alcuni file mkv (conversione con Megui)
alonesnake
18-02-2012, 20:31
Salve a tutti, spero possiate aiutarmi :)
Da qualche tempo a questa parte alcuni file video mkv mi stanno letteralmente facendo impazzire ... premetto che fino ad oggi avrò fatto conversioni con Megui e Avisynth di quasi 1000 file video (avi, mp4 a mkv) senza riscontrare nessunissimo problema di sincronizzazioni video-audio-sottotitoli ...
il problema che riscontro ultimamente è per alcuni mkv che una volta convertiti in mp4 mantengono la sincronizzazione solo di audio e sottotitoli mentre il video è in ritardo di qualche secondo .... ho già provato tutte le strade possibili: ho provato con altri software per vedere se il problema fosse di megui, ho provato un'infinità di valori di fps ma non c'è stato verso di risolvere questo rebus, ho provato a ritardare l'audio ma niente .... alla fine mi sono arreso e ho deciso di chiedere aiuto .... sono veramente disperato .... secondo voi cosa potrebbe andare storto nei vari processi perchè accada quello che ho descritto prima? cosa potrei fare ancora?
Ah, aggiungo che ho anche provato a cambiare estensione e contenitore con virtualdub ma lo stream copy mi creava un file video in output di svariati GB quando il video originale è di soli 250 MB ...
mi rimetto alla vostra bravura :D
Ciao.
Si può cambiare contenitore senza dover convertire, sarebbe meglio avere più informazioni riguardo la procedura che usi, in pratica perchè usi MeGui e non un muxer.
Oltre ciò un'analisi di MediaInfo dei file, prima e dopo la conversione farebbe comodo.
alonesnake
19-02-2012, 13:15
Allora, ti spiego tutto l'iter che faccio normalmente ... premetto che uso Megui in associazione ad Avisynth perchè è l'unico che mi ha dato risultati per me eccezionali .... punto di partenza è convertire il file video di input (sia esso avi, mp4 o mkv) in un file video mp4 delle dimensioni pari ad un terzo circa dei MB di partenza (da 250-400 MB a 85-95 MB) attraverso l'encoder x264 .... con megui converto prima il video e poi l'audio e come passo finale li muxo insieme ... questi sono i parametri di encoding
program --preset veryslow --tune animation --pass 2 --bitrate 393 --stats ".stats" --min-keyint 8 --bframes 16 --qpmin 10 --qpmax 51 --aq-mode 2 --no-fast-pskip --rc-lookahead 250 --non-deterministic --output "output" "input"
prima però di utilizzare megui uso avisynth per applicare qualche filtro ma niente di eccezionale ... non ho mai trovato nessun tipo di problema di sincronizzazione ad eccezione di questi maledetti file mkv che sembrano non ne vogliano sapere di farsi convertire.
Per quanto riguardo l'analisi di mediainfo, ti lascio quella relativa al file mkv prima della conversione .... quella per il file dopo la conversione te la posto più in là perchè adesso sto convertendo altro :) :
Generale
UniqueID/String : 215483161270973137344760401060141058214 (0xA21C8C1A8FCA68C3B1341B133389C8A6)
Nome completo : B:\Conversione\Da convertire\Bleach\Bleach Season 1 (01-20) (Correggere e sincronizzare)\01 - Il giorno in cui diventai uno Shinigami.mkv
Formato : Matroska
Versione del formato : Version 2
Dimensione : 219 Mb
Durata : 22min
BitRate totale : 1 330 Kbps
Film : Shinigami ni natchatta hi --- The Day I Became A Shinigami
Data di codifica : UTC 2012-01-23 14:54:03
Creato con : mkvmerge v5.2.1 ('A Far Off Place') built on Jan 2 2012 23:21:10
Compressore : libebml v1.2.3 + libmatroska v1.3.0
Video
ID : 2
Formato : AVC
Formato/Informazioni : Advanced Video Codec
Profilo del formato : High@L5.1
Impostazioni del formato, CABAC : Si
Impostazioni del formato, ReFrames : 8 fotogrammi
Modalità di muxing : Header stripping
Codec ID : V_MPEG4/ISO/AVC
Durata : 22min
BitRate nominale : 1 511 Kbps
Larghezza : 720 pixel
Altezza : 480 pixel
AspectRatio : 4:3
AspectRatio originale : 3:2
FrameRate : 29,970 fps
Standard : NTSC
ColorSpace : YUV
ChromaSubsampling : 4:2:0
BitDepth/String : 8 bits
Tipo di scansione : Progressivo
Bit/(Pixel*Frame) : 0.146
Titolo : Video
Compressore : x264 core 54 svn-620M
Impostazioni compressione : cabac=1 / ref=5 / deblock=1:-1:-1 / analyse=0x3:0x133 / me=esa / subme=7 / brdo=1 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=2 / deadzone=21,11 / chroma_qp_offset=0 / threads=1 / nr=0 / decimate=0 / mbaff=0 / bframes=2 / b_pyramid=1 / b_adapt=1 / b_bias=0 / direct=3 / wpredb=1 / bime=1 / keyint=250 / keyint_min=25 / scenecut=50 / rc=2pass / bitrate=1511 / ratetol=1.0 / rceq='blurCplx^(1-qComp)' / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / pb_ratio=1.30
Lingua : Giapponese
Default : Si
Forced : No
Audio
ID : 1
Formato : AAC
Formato/Informazioni : Advanced Audio Codec
Profilo del formato : LC
Codec ID : A_AAC
Durata : 22min
Canali : 2 canali
Posizione dei canali : Front: L R
SamplingRate : 48,0 KHz
Titolo : Audio
Lingua : Giapponese
Default : No
Forced : No
Menù
00:00:00.000 : en:Chapter 1
00:01:30.400 : en:Chapter 2
00:08:52.334 : en:Chapter 3
00:21:39.801 : en:Chapter 4
00:22:39.334 : en:Chapter 5
In che maniera si può cambiare contenitore senza necessariamente convertire?
Ti ringrazio :D
In che maniera si può cambiare contenitore senza necessariamente convertire?
Con mp4box ed una gui per semplificare la cosa o tramite il tool presente in MeGui ma non puoi applicare nessun tipo di filtro, cambia solo il container.
Il file di origine è a 29.97 fps, al momento noto solo questo.
alonesnake
19-02-2012, 15:54
Questo è quello che esce dall'analisi di mediainfo del file convertito:
Generale
Formato : MPEG-4
Profilo del formato : JVT
Codec ID : avc1
Dimensione : 65,0 Mb
Durata : 22min
BitRate totale : 395 Kbps
Data di codifica : UTC 2012-02-19 13:42:27
Data : UTC 2012-02-19 13:42:27
Video
ID : 1
Formato : AVC
Formato/Informazioni : Advanced Video Codec
Profilo del formato : High@L4.0
Impostazioni del formato, CABAC : Si
Impostazioni del formato, ReFrames : 16 fotogrammi
Codec ID : avc1
Codec ID/Informazioni : Advanced Video Coding
Durata : 22min
Source_Duration/String : 1min 31s
BitRate : 393 Kbps
BitRate massimo : 3 237 Kbps
Larghezza : 720 pixel
Altezza : 480 pixel
AspectRatio : 3:2
Modalità FrameRate : Costante
FrameRate : 29,970 fps
Standard : NTSC
ColorSpace : YUV
ChromaSubsampling : 4:2:0
BitDepth/String : 8 bits
Tipo di scansione : Progressivo
Bit/(Pixel*Frame) : 0.038
Dimensione della traccia : 64,6 Mb (99%)
Source_StreamSize/String : 64,6 Mb
Compressore : x264 core 120 r2164 da19765
Impostazioni compressione : cabac=1 / ref=16 / deblock=1:1:1 / analyse=0x3:0x133 / me=umh / subme=10 / psy=1 / psy_rd=0.40:0.00 / mixed_ref=1 / me_range=24 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-2 / threads=12 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=16 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=300 / keyint_min=9 / scenecut=40 / intra_refresh=0 / rc_lookahead=250 / rc=2pass / mbtree=1 / bitrate=393 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / ip_ratio=1.40 / aq=2:0.60
Data di codifica : UTC 2012-02-19 13:42:27
Data : UTC 2012-02-19 13:55:33
Ho provato con mp4box ma non riconosce i file mkv ...
Se usi MeGui o MyMP4Box Gui come frontend devi caricare i flussi demuxati, Yamb riconosce gli mkv e demuxa e rimuxa automaticamente.
Nella seconda analisi manca la traccia audio, in che formato la converti?
Fai una prova: demuxa il flusso audio del file convertito e caricalo in un player che ti riporti la durata in minuti e secondi, fai lo stesso con il file completo e controlla che non ci siano differenze.
In genere se l'asincronia è costante non ce ne sono, se è progressiva potrebbe dipendere da questo.
alonesnake
19-02-2012, 19:56
Questa è l'analisi del file audio convertito:
Generale
Formato : MPEG Audio
Dimensione : 24,9 Mb
Durata : 22min
Modalità bitRate generale : Variabile
BitRate totale : 151 Kbps
Compressore : LAME3.99r
Audio
Formato : MPEG Audio
Versione del formato : Version 1
Profilo del formato : Layer 3
Format_Settings_Mode : Joint stereo
Format_Settings_ModeExtension : MS Stereo
Durata : 22min
Modalità : Variabile
BitRate : 151 Kbps
BitRate minimo : 32,0 Kbps
Canali : 2 canali
SamplingRate : 48,0 KHz
Dimensione della traccia : 24,9 Mb (100%)
Compressore : LAME3.99r
Impostazioni compressione : -m j -V 4 -q 0 -lowpass 17.5 --vbr-new -b 32
Ho fatto come hai detto e sia la lunghezza del file audio demuxato sia quella del file audio-video convertito sono identiche ... il problema secondo me è del video perchè come ho scritto prima audio e sottotitoli sono sincroni ... non capisco perchè nel contenitore mkv originale tutto è perfetto ma poi nella conversione il video se ne va per fatti suoi...
Qui si deve andare per prove:
Il mux in mp4 senza convertire niente può essere una, serve da parametro di riferimento.
Convertire l'audio in mp3 CBR è un'altra da non sottovalutare, negli avi l'mp3 a bitrate variabile dava spesso asincronia, con gli mkv non ho mai provato perchè è un codec che non uso preferendo ac3 multicanale quando possibile.
Quindi un'altra prova può essere creare l'mp4 con la traccia video convertita e l'audio originale, i sossotitoli li lascerei da parte per ora.
Per la parte video proverei a cambiare i parametri e le modalità di conversione come ti ho detto prima.
alonesnake
19-02-2012, 22:27
Come si fa il mux in mp4 senza convertire niente? provo con quello perchè con tutto il resto non risolvo proprio niente ... l'unico miglioramento l'ho ottenuto impostando il valore degli fps nello script di avisynth ma purtroppo perdo uno o due secondi (che è ancora tanto)...
PS: Ho capito qual è il problema: in pratica se lascio gli fps originali il video convertito presenza negli ultimi minuti una ripetizione di scene ... in pratica un pezzo di video finale si ripete 2 volte ... ed è per questo che tutto si sballa ... però non ho capito cosa possa provocare tutto questo ... in ogni caso aspetto la tua risposta alla domanda iniziale ... vediamo un pò se non converto cosa succede :)
Ok, una cosa alla volta...
Come si fa il mux in mp4 senza convertire niente?
Demuxi i due flussi, dal file originale puoi farlo con MkvExtractGui quindi unisci tutto con mkvMerge oppure ti scarichi Yamb che è una Gui per Mp4Box e carichi direttamente l'mkv, se non da errori di compatibilità in un'attimo hai il nuovo video contenuto in un mp4.
Dopo aver demuxato la traccia video ricontrolla il framerate con MediaInfo, non vorrei che sia stato forzato a 29.97 fps ma che in realtà sia a 23.976 o roba simile.
l'unico miglioramento l'ho ottenuto impostando il valore degli fps nello script di avisynth ma purtroppo perdo uno o due secondi (che è ancora tanto)...
Se l'asincronia rimane costante per tutto il video puoi risolvere facilmente inserendo un ritardo/anticipo tra i flussi, il problema più grosso è quando l'asincronia è progressiva, cioè i flussi partono sincronizzati ma vanno a velocità diverse e dopo un tot di secondi tutto si sballa.
alonesnake
20-02-2012, 13:50
Il problema più grosso è quando l'asincronia è progressiva, cioè i flussi partono sincronizzati ma vanno a velocità diverse e dopo un tot di secondi tutto si sballa.
Ho provato ad usare yamb su più file mkv anche diversi da quelli che mi danno problemi ... risultato: yamb non va solo con i maledetti file video matroska da 29 fps mentre funziona perfettamente con gli altri creandomi file mp4 perfetti ... ho provato anche ad estrarre e a muxare con diverse combinazioni di fps ottenendo sempre lo stesso identico effetto ... ho però notato che l'asincronia è del tutto sballata, nel senso che inizialmente il video è in ritardo rispetto all'audio per poi progressivamente essere in anticipo via via che il video scorre .... è una cosa allucinante oO ... che dici, si può fare altro o è meglio che cestini subito tutto?
grazie per tutto l'aiuto, sono riuscito a capire tante cose :D
ho però notato che l'asincronia è del tutto sballata, nel senso che inizialmente il video è in ritardo rispetto all'audio per poi progressivamente essere in anticipo via via che il video scorre
Per il ritardo iniziale si può risolvere facilmente, il problema però resta nella progressività della asincronia. Ma stiamo parlando dei flussi audio originali o di quelli convertiti in mp3?
che dici, si può fare altro o è meglio che cestini subito tutto?
Forse la seconda che hai detto... :D
Proviamo con TSMuxer a demuxare uno dei "maledetti mkv". Carica il file e controlla che framerate riconosce nel flusso video quindi abilita la casella Change fps e forzalo a 29.970 anche se lo rileva già così quindi muxa tutto con Megui, il muxer lo trovi tra i tool disponibili o cliccando sulla combinazione CTRL+5.
alonesnake
21-02-2012, 17:29
Ho risolto in parte ... ho capito che il problema era l'audio e ho cercato di trovare altri file audio per associarli ai file video che nel frattempo ho riportato tutti a 23.976 fps ... adesso ho bisogno che tu mi aiuti a capire una cosa: come faccio a sincronizzare un file video che dura 23min e 23s con un file audio che invece dura 22min e 49s?
in questo modi il file è desincronizzato già dalle primissime scene...
grazie per la pazienza :D
Non sarà facile, il rapporto tra i due flussi non corrisponde a nessuna conversione nè da 25 a 23.976fps nè da 29.97 a 23.976.
Per prima cosa assicurati che i due flussi audio siano identici nei contenuti, se ci sono parti in più vanno tagliate. Dato che l'audio in genere è abbinato ad un video puoi verificare se i due video sono identici o no.
Se sono perfettamente dentici si può provare a stretcharli ma dipende dal formato. In che formato sono?
Non ho capito questo passo:
ho cercato di trovare altri file audio per associarli ai file video che nel frattempo ho riportato tutti a 23.976 fps
Hai riportato perchè in origine avevano quel framerate e li avevi modificati portandoli a 29.97fps?
In ultimo, hai provato a muxare i video convertiti con gli audio originali aac e non con gli mp3? Come è venuto il lavoro?
alonesnake
21-02-2012, 18:30
Non sarà facile, il rapporto tra i due flussi non corrisponde a nessuna conversione nè da 25 a 23.976fps nè da 29.97 a 23.976.
Per prima cosa assicurati che i due flussi audio siano identici nei contenuti, se ci sono parti in più vanno tagliate. Dato che l'audio in genere è abbinato ad un video puoi verificare se i due video sono identici o no.
Se sono perfettamente dentici si può provare a stretcharli ma dipende dal formato. In che formato sono?
adesso vedo e ti faccio sapere ... il video da cui ho preso l'audio è un avi con fps a 23.976 mentre il video muto (quello che dovrei sincronizzare) è un mp4 con fps a 23.976
Non ho capito questo passo:
Hai riportato perchè in origine avevano quel framerate e li avevi modificati portandoli a 29.97fps?
no, no ... gli originali hanno sempre avuto un framerate di 29.97 che io ho abbassato a 23.976
In ultimo, hai provato a muxare i video convertiti con gli audio originali aac e non con gli mp3? Come è venuto il lavoro?
si, ci ho provato ma non è servito a niente :)
Edit: Ho controllato e il video muto alla fine ha una scena di 5s in più che dovrò tagliare mi sa, vero? sapresti consigliarmi qualche software che mi aiuti in questo?
In ogni caso, se vuoi, nel frattempo, dimmi pure come dovrei agire per sincronizzare audio e video :)
alonesnake
25-02-2012, 22:54
Ho risolto tutti i miei problemi convertendo i file mkv in mp4 tramite total video converter senza modificare niente, mantenendo cioè gli stessi parametri del file originale ... ti ringrazio per l'aiuto, senza non so se ci sarei riuscito :D
Beh, hai scelto la strada più sicura...
Mi spiace ma gli EDIT non vengono notificati e non ho potuto rispondere al tuo comunque ricordati che la strada giusta è cambiare solo il contenitore per evitare la ricompressione. Se ti ricapita possiamo affrontare anche la questione del taglio e della sincronizzazione.
Ciao. :)
alonesnake
25-02-2012, 23:33
Beh, hai scelto la strada più sicura...
Mi spiace ma gli EDIT non vengono notificati e non ho potuto rispondere al tuo comunque ricordati che la strada giusta è cambiare solo il contenitore per evitare la ricompressione. Se ti ricapita possiamo affrontare anche la questione del taglio e della sincronizzazione.
Ciao. :)
Non preoccuparti, mi hai aiutato tantissimo :D
Purtroppo con questi video mkv sono costretto a convertire perchè se cambio contenitore tutto va a farsi benedire, però con gli altri ho usato Yamb come mi hai consigliato e devo ringraziarti per avermelo fatto conoscere e per tutte le conoscenze che hai condiviso .... se dovessi aver bisogno di aiuto, ti contatterò qui sicuramente :)
grazie ancora :D
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.