Talk2Camera
Menu
it-IT
video editing

Perché esportare un video richiede tanto tempo

Salvare un documento è istantaneo. Salvare un video spesso significa rigirarlo, fotogramma per fotogramma, dentro il tuo telefono — tranne quando davvero non serve.

Salvare un documento di testo non richiede alcun tempo misurabile. Un foglio di calcolo, un ritocco fotografico, una presentazione — tutto istantaneo, o quasi. Poi finisci un video di dieci minuti, tocchi Esporta, e una barra di avanzamento si accomoda per una permanenza capace di durare più del tuo caffè. La conclusione naturale è che qualcosa non va: la app è lenta, il telefono è vecchio, qualcuno da qualche parte non ha ottimizzato. Di solito niente di tutto questo è vero. L’attesa è lavoro reale, e capire in cosa consista davvero quel lavoro trasforma la barra di avanzamento da irritazione in qualcosa di più simile a una ricevuta. Il punto di partenza è un fatto che la maggior parte delle persone non ha mai avuto motivo di imparare: un file video non è una pila di immagini. Dieci minuti di girato a trenta fotogrammi al secondo fanno diciottomila immagini, e conservate ingenuamente quelle immagini si mangerebbero un telefono intero. Ciò che davvero riposa sul tuo dispositivo è un flusso compresso — una descrizione densa e incastrata in cui quasi nulla è conservato in modo diretto.

La compressione è tutto il trucco, e funziona rifiutandosi di ripetersi. Solo un fotogramma occasionale viene conservato come immagine completa. Quasi tutti gli altri vengono conservati come insiemi di differenze: questo blocco di pixel è scivolato un po’ a sinistra, quella regione non è cambiata affatto, questo angolo ha cambiato colore di tanto così. Ogni fotogramma si appoggia ai vicini, e quei vicini si appoggiano ai loro, in lunghe catene. Somiglia meno a un libretto animato e più a una ricetta che continua a dire: ripeti il passo precedente, ma più caldo. È per questo che i file video sono abbastanza piccoli da esistere — ed è anche per questo che modificarli costa caro. Nel momento in cui cambi l’aspetto di un fotogramma qualsiasi, la catena di differenze a cui appartiene smette di descrivere la realtà. Per salvare la tua modifica, il dispositivo deve spacchettare le catene in immagini vere, applicare il cambiamento a ciascuna, e poi ricostruire da zero l’intera struttura incastrata. Quella ricostruzione si chiama codifica, ed è genuinamente pesante: il codificatore insegue il movimento tra i fotogrammi, decide cosa può essere descritto a poco prezzo e cosa va scritto per esteso, ed emette milioni di piccoli verdetti per ogni secondo di girato.

Quindi, quando un’esportazione richiede minuti, il tuo telefono sta, in un senso molto reale, rigirando il tuo video dall’interno — decodificando diciottomila fotogrammi, ridisegnandoli e comprimendo di nuovo diciottomila fotogrammi. Il tempo cresce con durata e risoluzione per la stessa ragione per cui dipingere una parete più grande richiede più tempo. E il costo non è solo tempo. La compressione è con perdita: ogni codifica butta via un po’ di informazione, scelta con cura perché tu non te ne accorga. Codifica una volta e la perdita è invisibile. Ma ricodifica un file già codificato, e le perdite si accumulano, come la fotocopia di una fotocopia. Una generazione va bene. Parecchie generazioni — taglia qui, salva, aggiusta là, salva di nuovo — e la sbavatura comincia a vedersi esattamente dove guardano gli spettatori: volti, testo, sfumature lente di cielo. È questo l’argomento silenzioso per cui dovrebbe importarti di cosa fa una catena di esportazione quando non stai guardando.

È anche la ragione per cui esiste un comportamento preciso in Talk2Camera. Non ogni modifica cambia l’aspetto dei fotogrammi. Un taglio semplice — togliere la partenza impacciata, eliminare l’aria morta alla fine — lascia ogni fotogramma rimanente esattamente com’era. Se la clip corrisponde già al preset di esportazione, non c’è nulla da ridisegnare e quindi nulla da ricodificare, e Talk2Camera fa la cosa onesta: copia i fotogrammi invece di comprimerli un’altra volta. L’esportazione finisce drammaticamente più in fretta, perché copiare costa poco e codificare no. Meglio ancora: la copia è identica bit per bit — nessuna generazione di qualità viene spesa per una modifica che non ha mai toccato un pixel. L’attesa, quando la salti in questo modo, non è mai stata il prezzo dell’esportare. Era il prezzo del cambiare pixel, e tu non ne hai cambiato nessuno.

Le riserve oneste corrono nella direzione opposta. Nel momento in cui una modifica richiede davvero il rendering — qualsiasi cosa cambi ciò che un fotogramma mostra realmente —, l’esportazione ricodifica, e l’attesa torna, perché adesso c’è lavoro genuino da fare. Fotogrammi da ridisegnare, catene da ricostruire, verdetti da emettere. Nessuna catena di esportazione può copiare per sottrarsi; uno strumento che sostenesse il contrario ti starebbe mentendo. Ciò che puoi ragionevolmente aspettarti da un buon software è più stretto e più prezioso: che ricodifichi quando deve, copi quando può, e conosca la differenza. Così, la prossima volta che una barra di avanzamento si accomoda, vale la pena chiedersi in quale delle due attese ti trovi. Se hai cambiato l’aspetto del video, la barra è una macchina che compie per te diciottomila fotogrammi di lavoro onesto. Se hai solo tagliato le estremità, la barra dovrebbe a malapena fare in tempo ad apparire — e in Talk2Camera, quasi sempre, non lo fa. L’esportazione che non richiede tempo non è un trucco. È l’esportazione che non aveva lavoro da fare, finalmente trattata come tale.

Citati in questo articolo

Nessuna ricodifica quando non serve

Un semplice ritaglio già conforme al preset copia i fotogrammi invece di comprimerli di nuovo — più veloce, e senza perdere una generazione di qualità per niente.

Annullare un’esportazione

Ferma un’esportazione lunga a metà. Quando finisce ti dice cosa è successo davvero — ricodificata o copiata, a quale dimensione, e se l’inquadratura è stata ritagliata.