Tutto è possibile

Tag: fotogrammi al secondo

H264 standard… mica tanto

Spesso mi sento dire, mi faccia un mp4 che è standard … sorrido e creo un file che so essere compatibile con le esigenze del cliente.

Una volta era più facile distribuire un video, perché i supporti erano più limitati a vhs o dvd, con due standard video PAL o NTSC per distribuire in tutto il mondo.

Oggi ci sono mille e più varianti, ad esempio se si fornisce un supporto solido come il Blu-ray ci sono quelle che vengono indicate come le specifiche di base, e le varianti di formato… che ogni anno cambiano sul sito ufficiale del consorzio, perché a seconda del lettore da tavolo potrebbe essere supportata o no la variante, non dipende dalla data di produzione, o dal brand, anzi alle volte prodotti di marchi meno noti supportano più formati di altri più blasonati.

Lo standard del Blu-ray nasce a 24 fotogrammi al secondo, per rispettare la naturale creazione dei film, senza alterazioni su durata della parte video o alterazione sulla parte audio. Poco dopo la sua nascita è stato subito aggiunto il 23,976 per supportare più facilmente la riproduzione nel mondo Americano e Giapponese (NTSC a 60 hrz). Il codec di compressione di nascita era l’mpeg2 come il dvd (anche se con una variante dedicata all’alta definizione) anche se quasi subito fu introdotto il formato H264 (variante del codec mpeg 4), poi di recente aggiornato al suo successore H265.

Oggi il Blu-ray supporta dal 23,976 24 25 29,97 30 48 50 59,94 60, e neanche tutti in stream progressivo, ma alcuni solo in stream interlacciato per questioni di compatibilità.

Questo per dire come un prodotto che nasceva per uniformare e offrire il massimo della qualità della visione casalinga senza “interpretazioni” si è trasformato nell’insalata dei formati. Inoltre a seconda del monitor, televisore o proiettore su cui si vedono i risultati le immagini saranno più o meno fluidi o naturali.

Quando ci viene chiesto un H264 standard ci viene chiesto il nulla, perché lo standard è molto ampio e a seconda del dispositivo con cui verrà letto verrà INTERPRETATO in modo più i meno fedele.

Lo standard H264 prevede di registrare da un minimo di un segnale 8 bit 4:2:0 ad una serie di informazioni fino a 12bit 4:4:4, cambiare le impostazioni di codifica punto per punto del filmato, gestire più flussi video sovrapposti, alpha, riproduzioni parziali dei dati, cioè ottimizzare in lettura una scalabilità 1:2,1:3,1:4 etc dei pixel, inglobare codice, indici di capitoli, aree sensibili con dati a link e molto altro ancora; peccato che quasi nessun encoder sfrutti tutte queste caratteristiche.

Quando si crea un file H264 la maggior parte degli encoder ci permette solo di impostare il tipo di compressione e i profili, ma niente di più.

Ironicamente invece di usare un prodotto commerciale, la soluzione più versatile anche se meno comoda è il prodotto freeware ffmpeg, un programma a comando di linea che supporta praticamente tutte le funzioni di moltissimo codec sia in ingresso che uscita, ed è disponibile su tutti i principali sistemi operativi, sono state sviluppate diverse interfacce per utilizzare in modo più comodo e flessibile il prodotto.

Considerato che chi arriva ad un articolo di questo tipo di aspetta un suggerimento sugli “standard” vi posso dare dei suggerimenti su come affrontare il discorso e cosa scegliere come impostazioni e cosa influenza qualità e “compatibilità”.

⁃ Riproduzione da televisore o decoder o player multimediale

⁃ Riproduzione da computer diretto

⁃ Caricamento online

Anche se sono le situazioni più comuni in realtà aprono mille e più situazioni e varianti, perché in realtà la questione della riproduzione è al 50% dipendente dal file e al 50% dal sistema di riproduzione.

Quando si crea un file “classico” si sceglie la risoluzione, i fotogrammi al secondo, il bitrate e se questo è fisso o variabile.

In generale si deve creare un equilibrio tra i dati al secondo letto dal dispositivo e la qualità finale, questo significa che se si sceglie una compressione fissa vuol dire che ogni fotogramma avrà la stessa quantità di informazioni registrabili, immaginiamo 2000, ma se ho un fotogramma di una persona davanti ad un muro bianco tutti i dettagli vengono dedicati alla persona, se ho 20 persone gli stessi dati vengono “divisi” per registrare, quindi ogni persona al max avrà 100 per registrare i dettagli, quindi l’immagine sarà meno dettagliata.

Questo sistema permette di avere i seguenti caratteristiche:

⁃ Funziona anche su dispositivi più semplici

⁃ Prevedibilità della dimensione finale del file.

⁃ Per migliorare la qualità basta alzare il bitrate globale (entro certi limiti).

⁃ Per migliorare la compatibilità con i vecchi dispositivi basta abbassare il bitrate.

⁃ Non si notano jittering di decodifica dei movimenti perché i fotogrammi non devono essere creati ma sono tutti completi.

Se si sceglie una compressione variabile si imposta un range di dati minimo e massimo, per cui il sistema di compressione esegue due livelli di compressione, sia creando un frame Delta e un frame parziale per cui vengono creati dei gruppi di fotogrammi, con la logica di creare il primo frame intero, il secondo frame memorizza solo la differenza tra il primo e il secondo, il terzo la differenza tra il secondo e il terzo e così via fino al prossimo fotogramma Delta.

Il secondo livello di compressione variabile si preoccupa di distribuire una quantità di dati del gruppo in funzione delle necessità, di quanti dati sono necessari fotogramma per fotogramma, ottimizzando peso e qualità.

Il risultato ha caratteristiche differenti rispetto al primo metodo :

⁃ Con lo stesso bitrate massimale la qualità può essere notevolmente migliore

⁃ Lo stream dei dati è più efficiente via rete

Ma ci sono dei contro :

⁃ Questa lettura chiede cache più grandi e dispositivi più potenti perché i fotogrammi sono creati al volo, non esistono completamente

⁃ Se si vuole andare avanti e indietro nel filmato la richiesta di memoria e potenza sale

⁃ Alcuni tipi di filmati e movimenti possono con alcuni encoder dare risultati peggiori che il primo metodo perché da frame a frame sarà meno coerente come struttura e forma (se si lavora solo con bitrate molto bassi)

⁃ In caso di problemi di stream dei dati si possono vedere dei salti nei movimenti veloci, causando una visione a scatti.

⁃ Su dispositivi più vecchi possono esserci riproduzioni di artefatti (blocchi di movimento etc) che non sono presenti nel filmato originale.

In conclusione :

A seconda del dispositivo più o meno recente si deve creare un h264 con il primo metodo e bitrate bassi se si vuole vedere su ogni dispositivo vecchio e/o poco potente come molti smartphone di basso livello; con dispositivi moderni si può creare video col secondo metodo che a parità di peso offrirà una qualità superiore e con dettaglio e sfumature più efficienti.

 


FpS oggi, che scelgo?

Nel mondo del video e del cinema esistono degli Standard, con la S maiuscola, nati su ragionamenti e necessità tecniche ben precise, ma naturalmente ci sono tutte le varianti che nascono per banali ragioni economiche, che comportano problemi e mal di testa a non finire per chi deve utilizzare le attrezzature video e cinema adattandonsi alle “varianti di standard”…

Partiamo dalle basi, quali sono i Frame Rate corretti?

Il cinema nasce più di cento anni fà e superata la fase a manovella, in cui la velocità di ripresa e proiezione era in funzione di chi girava manualmente una ruota, si è stabilizzato sulla velocità di 24 fotogrammi al secondo. Questo valore è nato dalla necessità di trovare il giusto medio tra percepire fluidamente una immagine, e non consumare troppa pellicola (oggi troppi giga) nel riprende, e nel gestire poi il prodotto finale.

24 fotogrammi al secondo proiettati con un proiettore con otturatore (dopo capiremo il perchè di questa puntualizzazione), sono sufficienti per fornire informazioni al cervello umano del movimento continuo, se catturati correttamente.

Quando naque la televisione di doveva trovare un sistema per riprodurre le immagini, utilizzando un “pennello eletronico” che disegnava riga per riga le immagini; si trovò un sistema sufficientemente dettagliato e corretto con la scansione interlacciata. I primi esperimenti di trasmissione di immagine per scansione risalgono ad Alexander Bain tra il 1843 e il 1846 (si parliamo del 1800…), mentre la prima immagine live si deve a Georges Rignoux e A. Fournier a Parigi nel 1909.

200px-John_Logie_Baird,_1st_Image25 Marzo 1925, John Logie Baird fece la prima dimostrazione pubblica di trasmissione di  silhouette in movimento nel departimento di  Selfridge. a Londra.

Per l’epoca la performance del ventriloquo e attore Stooky Bill che parlava e si muoveva fu un passo storico per la trasmissione delle immagini.

Ora facciamo un salto in avanti fino all’origine delle attuali tecniche di creazione dell’immagine, ovvero al 1941 per il segnale in formato americano a 525 linee e il 1944 per il segnale in formato Europeo a 625 linee in Unione Sovietica.

video_modes_progressive_examplePer ottimizzare la banda di trasmissione delle immagini, la televisione nasce con una modalità chiamata interlacciata, ovvero quando vengono catturate le immagini ogni fotogramma viene catturato in due tempi diversi, ovvero per ogni fotogramma prima si catturano solo le linee pari dell’immagine, poi nell’istante successivo si catturano le dispari, poi le pari del fotogramma successivo, e così via.InterlaceScanTV

Questo fa si che i fotogrammi effettivamente si fondono insieme dando una illusione di maggior fluidità, ma in pratica si ottimizza il flusso dati perchvideo_modes_interlaced_exampleè tranne il primo frame, che è fatto di due semiquadri completi, in pratica, i successivi essendo composti dai semiquadri uno ereditato dal precedente, e uno dell’attuale, si cattura e si trasmettono metà delle informazioni dei fotogrammi.

Per disegnare correttamente queste informazioni si deve sincronizzare le diverse attrezzature di ripresa e trasmissione e dato che non esistevano all’epoca dei sistemi di condivisione di certi tipi di dati ad alta velocità si fece la scelta di usare la frequenza della corrente elettrica; per questo motivo sono nati i due standard televisivi con le seguenti caratteristiche :

Pal per Europa, Australia e paesi con corrente a 50 hrz.
Ntsc per America e Giappone con corretne a 60 Hrz.

Queste due diverse scansioni ha fatto si che i due standard trasmettano in due modi diversi :
Pal 50 hrz = 25 fotogrammi interlacciati (50 semiquadri) a 625 linee
Ntsc 60 hrz = 30 fotogrammi interlacciati (60 semiquadri a 525 linee).

Il Pal parte con le Linee Pari (Lower), e l’NTSC parte con le linee Dispari (Upper). Quindi sono due standard molto diversi.

Anche passando all’Alta definizione, si sono mantenute le caratteristiche originali di frequenza di fotogrammi, di ordine dei campi invertito, pur uniformando almeno il numero di linee verticali e orizzontali a 720 e 1080i.

Il numero di fotogrammi è rimasto invariato anche oggi con il digitale perchè anche se non esiste più un pennello elettronico per disegnare le immagini, i televisori hanno comunque degli schermi / pannelli che ridisegnano/aggiornano i fotogrammi con la stessa frequenza, legata alla corrente elettrica perchè lo standard NON PUO’ cambiare, dato che per legge la televisione pubblica (e quindi anche quella privata) deve essere fruita e vista correttamente da chiunque sul territorio italiano, anche con vecchi apparecchi di 50 anni fà. Ed essendo troppo costoso fare una doppia trasmissione di segnale (antico e moderno) siamo ancora legati ad un concetto antiquato di quasi cento anni fà…

Come fare le riprese?

in tutti i modi, compatibili per quello che sarà l’output.

In sintesi :
24 fotogrammi progressivi = cinema
25 fotogrammi interlacciati = Televisione Europa e Asia
30 fotogrammi interlacciati = Televisione America e Giappone

Se mescoliamo qualcosa, vedremo o da una parte o dall’altre dei difetti :

  • frame rate differente tra ripresa e riproduzione = saltini sul video
  • uso di interlacciatura diversa (upper invece di lower) = immagini che sembrano andare avanti e indietro
  • visione di materiale su dispositivo sbagliato = X

perchè all’ultima voce di elenco ho scritto X?

La maggior parte dei televisori Europei supportano la riproduzione (non la ricezione) anche di segnali NTSC a 30 fotogrammi, quindi potremmo anche vedere del materiale realizzato nel modo non Standard per la nostra area geografica, quindi il fatto che vediamo correttamente un dvd o un file non significa che sia standard. Per un periodo è esistito anche uno standard chiamato Pal60, ovvero codifica colore del Pal, ma la frequenza dell’NTSC.

Molti televisori hanno software di lettura e interpretazione delle immagini in movimento che compensano i difetti e gli errori di riproduzione dei filmati quindi potrebbero (condizionale) aver corretto alcune differenze tra standard in modo invisibile.

Quindi se vedo una cosa sbagliata sul computer e giusta sulla Tv è la tv che mi corregge il tutto, e il mio file è sbagliato?

Non è detto. Bisogna sempre considerare che noi utenti pal siamo sfigati, ovvero viviamo in un mondo video pal, 50 hrz, con video a 50hrz, ma vediamo su telefoni, tablet, monitor da computer a 60hrz, quindi vedere un filmato in riproduzione a 25 fotogrammi al secondo su questi dispositivi sarà sempre con interpretazione dei frame e potremmo vedere dei difetti di movimento che non sono presenti realmente nel filmato, ma creati dal player dei filmati…

Quindi se monto al computer come faccio a giudicare?

la risposta è semplice, come ogni montatore serio, l’unico modo per avere una risposta affidabile è vedere su un monitor VIDEO l’uscita del segnale, così che possiamo avere una risposta affidabile su un monitor Video che gira a 50 hrz, altrimenti ogni possibile errore di movimento può essere causato non dal filmato, ma dall’errato adattamento dei 25 fotogrammi al secondo con la scansione a 60 hrz del monitor.

Ma quando riprendo a X fotogrammi al secondo l’otturazione come deve cambiare ?

l’otturazione corretta è N fotogrammi al secondo x2.
Questo valore è nato da 100 anni di esperienza cinematografica dove si è compreso come una otturazione doppia rispetto alla velocità dei fotogrammi è il corretto valore per ottenere la scia di movimento (motion blur) sufficiente per dare l’illusione di continuità di movimento.
Un valore superiore crea un effetto stroboscopico, perchè annulla la sfuocatura di movimento, mentre un valore inferiore crea una sfuocatura di movimento troppo forte e quindi diventa tutta l’immagine troppo mossa.

Perchè allora posso cambiare l’otturazione nelle telecamere e nelle cineprese se devo usare questo valore fisso?

Nell’uso normale delle riprese, per una percezione corretta del movimento vige la regola del FpS x2, ma quando si devono fare effetti particolari, come fare i rallenty in postproduzione, si alza l’otturazione perchè altrimenti non è possibile ottenere determinati effetti o rese in postproduzione.
In casi particolari di riprese notturne con camera fissa, oppure in cui si ha bisogno di gestire movimenti molto veloci, si tende a scendere con l’otturatore, per sfuocare maggiormente e mantenere la fluidità di movimento pur veloce.

L’unica cosa a cui stare attenti sono le luci…. quando si lavora in un ambiente con corrente a frequenza X, le luci, i neon, i pannelli a led etc tendono a lavorare con la stessa frequenza, per cui se uso una frequenza diversa tra otturatore e corrente potrebbe apparire un fenomeno detto Flickering.

Ad esempio se giro in un ambiente 50 hz a 24p (tipico del cinema) c’è il rischio che si creino delle onde in ripresa, stessa cosa se giro a 30 in ambiente 50hz, per cui le diverse cineprese digitali hanno otturazioni speciali per quelle situazioni, mentre le dlsr e le telecamere più amatoriali non li hanno e quindi il risultato è un difetto visivo difficilmente eliminabile.

Se riprendo solo per il web cosa devo scegliere?

il web, lo streaming direttamente sui vari dispositivi lavora tutto con frequenza a 60hrz, quindi in quel caso si rompe la regola del pal e si gira a 30 fotogrammi al secondo PROGRESSIVI, perchè tutti questi dispositivi visualizzano i fotogrammi interi e non divisi per semiquadri e in questo particolare caso è FONDAMENTALE rispettare la regola del fps x 2, perchè ogni tipo di movimento troppo veloce se l’otturatore è più alto sarà scattoso e poco piacevole da vedere. Unica eccezione è relativa alle luci artificiali.

Quindi in conclusione?

Con la maggior parte dei televisori e monitor, nonostante gli 800/1000 mhz vantati, il segnale letto è sempre quello di un 24-25-30 e pochissimi monitor /tv possono leggere e riprodurre filmati a 50-60p reali, quindi riprendere a framerate superiore è utile SOLO per scopi di rallenty in post, non siamo in grado di visualizzarli realmente, il refresh superiore è relativo SOLO a frame generati dal televisore o dal monitor artificialmente, non letti dalla sorgente, e spesso in modo del tutto arbitrario alterando in modo vistoso e negativo il filmato visualizzato.

Serve realizzare un rallenty? massimi fps catturabili al giusto livello di otturazione

Non serve un rallenty?
24 = cinema
25 = emissione televisiva, monitor televisivo Pal (europa australia)
30 = emissione televisiva, monitor Ntsc (USA, Giappone), Computer e Mobile che hanno schermia 60hrz di refresh.

Ricordiamo solo che lavorando con luci artificiali non usare la stessa frequenza della corrente richiede attenzione al flickering di certe luci e ove possibile correggere la frequenza dell’otturazione per evitarlo.


Powered by WordPress & Theme by Anders Norén

error: Content is protected !!