Sincronizzazione audio e video nei file multimediali
Un argomento su cui c’è tanto da dire, quello della sincronizzazione audio/video nei file multimediali, ma in questa guida proveremo a rispondere a tutti i dubbi e risolvere le problematiche relative.
I software necessari, fortunatamente, sono tutti freeware, a cominciare dall’ottimoMKVToolNix e da VLC Media Player, quello che da molti è ritenuto il miglior lettore multimediale in circolazione, dotato anche di codec interni e di strumenti che nel nostro lavoro torneranno utili.
Il primo controllo da effettuare, infatti, lo faremo proprio con VLC. Dobbiamo prima di tutto scoprire la frequenza di aggiornamento del video, in quanto una stessa scena riprodotta nello standard NTSC, in uso prevalentemente negli Stati Uniti, che prevede 23,967215 fps, durerà relativamente meno della stessa scena riprodotta in standard Europeo PAL da 25 fps. E se la differenza, in pochi secondi, non si nota molto, la situazione cambia notevolmente in filmati da più minuti. È possibile verificare questo dato dal menu “Strumenti › Informazioni Codificatore” (CTRL+J).
Se lo scopo è quello di adattare l’audio di un formato al video dell’altro, la soluzione è abbastanza semplice, in quanto basta convertire il video senza grandi complicazioni, ed è possibile fare tutto con MKVMerge GUI del pacchetto MKVToolNix.
Conversione del framerate video
Memorizziamo il framerate dell’audio, poi trasciniamo i due file, uno alla volta, nel riquadro di MKVMerge GUI.
Nel riquadro “Input files” avremo quindi i file caricati, nel riquadro “Tracks, chapters and tags”, che chiameremo “riquadro tracce”, invece avremo i vari stream contenuti all’interno dei file caricati. In quanto sappiamo che l’MKV è un contenitore, all’interno del quale possono essere inseriti video, audio, sottotitoli ed altro, bisognerà selezionare quelli da includere all’interno del file multimediale finale, quindi il video, che ad esempio sarà a 23,967 fps, e la traccia audio proveniente invece dal filmato a 25 fps. Dato che, come abbiamo anticipato, l’operazione più semplice in questo caso sarà quella di adattare il video all’audio, spuntiamo nel riquadro “tracce” quelle che ci interessa includere, disattivando invece quelle che non servono. Dopo aver selezionato la traccia video, clicchiamo su “format specific options” ed inseriamo nella casella “FPS” il valore della traccia audio, nel caso ad esempio 25.
Per salvare il tutto, premere il pulsante “start muxing” e verificare il risultato.
Le cose si complicano un po’ nel caso in cui si debba inserire in un filmato una seconda traccia proveniente da un file con framerate differente. Sì, perché modificando il framerate dell’audio attraverso la lunghezza d’onda, il tempo totale diminuirà o aumenterà, provocando un rallentamento o un’accelerazione che influiranno sulla tonalità di tutta la traccia. Per qualcuno la differenza non si nota molto, ma secondo il mio parere, a parte che il risultato finale dell’audio originale non andrebbe alterato, la differenza è comunemente avvertibile.
Come risolvere quindi questo imprevisto?
Conversione del framerate audio
L’effetto prodotto dal rallentamento dell’audio è, come abbiamo già detto, l’abbassamento del tono, mentre quello prodotto dall’accelerazione, l’aumento. Oltre alla variazione ottenuta dall’allungamento del tempo, è possibile riprodurre lo stesso effetto anche attraverso il cosiddetto “pitch shift”. Dopo aver regolato la lunghezza dell’audio, per ripristinare la tonalità sarà necessario quindi calcolare la percentuale in cui è variata ed applicarvi l’inverso per riportarla al valore originale.
Fortunatamente esiste un programma che effettua tutta l’operazione in automatico. Si chiamaBeHappy, la cui installazione necessita di Avisynth e .NET Framework di Microsoft, ormai presente già sulla maggior parte dei sistemi in quanto necessario al funzionamento di un numero elevato di programmi.
Con BeHappy sarà possibile effettuare la variazione del tempo preservandone la tonalità, basta utilizzare la funzione “TimeStretch”, che tra le opzioni prevede proprio “Tempo changed, pitch correction”. Caricato quindi il file audio da modificare, sarà necessario spuntare “TimeStretch” e configurarlo per le proprie esigenze: per utilizzare l’audio NTSC su video PAL bisognerà ad esempio selezionare “Framerate based transform” ed impostare, come nell’immagine, “23,967 -> 25,000″, oltre a spuntare l’opzione precedentemente menzionata.
Dopo aver selezionato il tipo di compressione, sarà possibile importare normalmente il file con MKVMerge GUI, ed inserirlo nel contenitore MKV insieme al video come già precedentemente esposto.
Anticipo e ritardo dell’audio
Può capitare che, nonostante tutto, l’audio ed il video non siano comunque sincronizzati, vuoi perché in uno dei due filmati (quello del video o quello dell’audio) erano presenti delle animazioni all’inizio o per altri motivi. In tal caso sarà semplicemente necessario impostare undelay. La prima cosa da fare sarà rendersi conto se viene riprodotto prima l’audio o prima il video. Nel caso l’audio arrivi prima, il delay avrà valori positivi, in caso contrario, negativi.
Per calcolare il delay, normalmente poche frazioni di secondi, utilizzeremo ancora una volta VLC, dal momento che dispone di un’opzione per il delay manuale.
Apriamo quindi il filmato, selezioniamo “Strumenti › Sincronizzazione traccia” e modifichiamo il valore di “Anticipo dell’audio rispetto al video”, finché il filmato non apparirà sincronizzato. Personalmente di solito faccio riferimento ai rumori, ai colpi, che sono più semplici da individuare, rispetto al parlato.
Trovata la sincronizzazione, dovremo annotarci il valore del delay (in virgola su VLC) ed aprire il file ancora una volta con MKVMerge GUI.
Dopo aver spuntato le tracce necessarie, selezionare la traccia audio e cliccare su “Format specific options”. Qui troveremo la voce “Delay (in ms)”, in cui bisognerà inserire il valore trovato con VLC, ma in millisecondi, il che significa rimuovere la virgola. Se il valore è negativo (il video è riprodotto prima dell’audio) aggiungere il segno meno dinanzi.
Con questa ultima ipotesi abbiamo analizzato un po’ tutte le problematiche che possono verificarsi nella sincronizzazione dell’audio e del video. Rimane solo un’ultima ipotesi, ovvero che l’audio non sia sincronizzato in più punti, il che si verifica soprattutto quando vi sono delle pause di lunghezza differente, il che accade, spesso, nelle registrazioni televisive. In questo caso sarà necessario un lavoro più impegnativo, in quanto le singole pause dovranno essere modificate con un editor audio, in modo da durare lo stesso tempo.