Perché i Video Sono Così Grandi
La dimensione di un file video è determinata da una semplice formula: bitrate × durata. Un video codificato a 8 Mbps (megabit al secondo) produce 60 MB al minuto — cioè 1 MB al secondo di filmato. Con risoluzione 4K e codec moderni, i bitrate salgono ancora più alti, e i file diventano enormi rapidamente.
Per metterlo in prospettiva, ecco cosa producono diversi scenari di registrazione:
| Fonte | Risoluzione | Codec | Dimensione per Minuto |
|---|---|---|---|
| iPhone (Most Compatible) | 1080p 30fps | H.264 | ~130 MB |
| iPhone (High Efficiency) | 4K 30fps | HEVC | ~170 MB |
| iPhone (4K 60fps) | 4K 60fps | HEVC | ~375 MB |
| iPhone Pro (ProRes) | 4K 30fps | ProRes 422 | ~6.000 MB |
| GoPro HERO | 4K 60fps | HEVC | ~450 MB |
| Registrazione dello schermo (1080p) | 1080p 30fps | H.264 | ~40–80 MB |
Un video iPhone 4K 60fps di 10 minuti a 375 MB al minuto pesa 3,75 GB — troppo grande per email (limite 25 MB), la maggior parte delle app di messaggistica (tipicamente 100–200 MB), e lento da caricare sui social media. I cinque metodi di seguito possono ridurre quel file da 3,75 GB a meno di 500 MB mantenendo una qualità visivamente indistinguibile dall'originale.
Metodo 1 — Controllo della Qualità CRF
CRF (Constant Rate Factor) è l'impostazione più importante per controllare la dimensione del file video. Invece di specificare un bitrate di destinazione, CRF dice all'encoder quale qualità desideri. L'encoder decide automaticamente quanti bit ogni fotogramma ha bisogno — le scene complesse con molto movimento ottengono più bit, mentre le scene statiche ottengono di meno.
La scala CRF per H.264 (libx264) va da 0 (senza perdita, file enormi) a 51 (peggior qualità, file minuscoli). In pratica, utilizzerai solo l'intervallo 18–28:
| Valore CRF | Livello di Qualità | Dimensione Approssimativa (1 min 1080p) | Caso d'Uso |
|---|---|---|---|
| 18 | Visivamente senza perdita | ~120 MB | Archiviazione, copie master |
| 23 | Eccellente (predefinito) | ~60 MB | Uso generale, condivisione |
| 26 | Buono | ~35 MB | Video web, tutorial |
| 28 | Accettabile | ~25 MB | Social media, email |
| 32 | Basso | ~12 MB | Anteprime, miniature |
Il comando FFmpeg per convertire con controllo CRF:
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 192k -movflags +faststart output.mp4
Modifica -crf 23 con qualsiasi valore nella tabella qui sopra. I numeri più bassi significano una qualità migliore e file più grandi. La relazione tra CRF e dimensione del file è approssimativamente esponenziale: ogni incremento di +6 riduce all'incirca della metà la dimensione del file.
Regola rapida: +6 CRF ≈ dimezza la dimensione del file. Abbassare la risoluzione di un passo (4K → 1080p) riduce ~75%. Combinare entrambi può ridurre un file del 90% o più.
Metodo 2 — Preset di Codifica Più Lento
Il preset dell'encoder controlla quanto tempo FFmpeg spende nell'ottimizzazione di ogni fotogramma. I preset più lenti trovano modi più efficienti per comprimere la stessa qualità visiva, producendo file più piccoli con lo stesso valore CRF. Il compromesso è il tempo di codifica — ma il risultato è sempre un file più piccolo con qualità visiva identica.
FFmpeg offre preset da ultrafast a veryslow. Ecco come si confrontano:
| Preset | Velocità di Codifica | Dimensione del File (relativa) | Quando Usare |
|---|---|---|---|
ultrafast | 10x | +80% | Solo streaming live |
fast | 4x | +15% | Lavori batch veloci |
medium | 2x | baseline | Predefinito — buon equilibrio |
slow | 1x | -15% | Migliore qualità per byte |
veryslow | 0.5x | -20% | Rendering finali, lavori notturni |
Il preset slow è il punto ideale. Produce file che sono 10–20% più piccoli del preset medium con lo stesso valore CRF, senza modifiche nella qualità visiva. L'unico costo è il tempo di codifica — circa 2x più lungo di medium. Per un video di 5 minuti, significa 3 minuti di codifica invece di 1,5 minuti su hardware tipico.
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset slow -c:a aac -b:a 192k -movflags +faststart output.mp4
Il preset veryslow ottiene una riduzione aggiuntiva del 5% ma richiede il doppio del tempo di slow. Per la maggior parte delle persone, i rendimenti decrescenti rendono veryslow non vale la pena aspettare. Il preset slow cattura la maggior parte dei guadagni di compressione.
Metodo 3 — Ridurre la Risoluzione
La riduzione della risoluzione è il modo singolarmente più efficace per ridurre la dimensione del file perché riduce direttamente il numero di pixel che l'encoder deve elaborare. Ogni passo di risoluzione segue approssimativamente una relazione 4x nel conteggio dei pixel:
| Risoluzione | Conteggio dei Pixel | Dimensione Relativa | Riduzione da 4K |
|---|---|---|---|
| 4K (3840×2160) | 8,3 milioni | 100% | — |
| 1080p (1920×1080) | 2,1 milioni | ~25% | -75% |
| 720p (1280×720) | 0,9 milioni | ~12% | -88% |
| 480p (854×480) | 0,4 milioni | ~5% | -95% |
Il downscaling da 4K a 1080p riduce la dimensione del file di circa 75%. Su uno schermo di smartphone, la differenza tra 4K e 1080p è praticamente invisibile perché la densità di pixel degli schermi moderni supera già 1080p alle normali distanze di visualizzazione. Anche su un monitor desktop da 27 pollici, la differenza è minima a meno che tu non stia scrutando i pixel.
Il comando FFmpeg per il downscale a 1080p:
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset slow -vf "scale=1920:-2" -c:a aac -b:a 192k -movflags +faststart output.mp4
Il filtro scale=1920:-2 imposta la larghezza a 1920 pixel e calcola automaticamente l'altezza per mantenere le proporzioni. Il -2 garantisce che l'altezza sia divisibile per 2 (richiesto da H.264). Per 720p, usa scale=1280:-2.
Passare da 1080p a 720p riduce un altro 50% della dimensione del file. Sui telefoni, 720p rispetto a 1080p è appena percettibile per la maggior parte dei contenuti. Questo rende 720p una scelta eccellente quando la dimensione del file è la preoccupazione principale — allegati email, app di messaggistica, o scenari con larghezza di banda limitata.
Metodo 4 — Ridurre la Frequenza dei Fotogrammi
La frequenza dei fotogrammi determina quante immagini al secondo compongono il video. La riduzione da 60fps a 30fps dimezza i dati temporali, il che si traduce in una riduzione significativa della dimensione del file. I risparmi effettivi dipendono dalla complessità del contenuto, ma generalmente puoi aspettarti una riduzione di 30–40% (non una riduzione completa del 50% perché la codifica CRF alloca già meno bit ai fotogrammi ridondanti).
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset slow -r 30 -c:a aac -b:a 192k -movflags +faststart output.mp4
Il flag -r 30 forza l'output a 30 fotogrammi al secondo. Quando è sicuro ridurre la frequenza dei fotogrammi?
- Video con persone che parlano, tutorial, presentazioni: 24fps o 30fps è perfettamente bene. Questi tipi di contenuto hanno un movimento minimo, e gli spettatori non noteranno la differenza.
- Vlog, video di viaggio, filmati generali: 30fps appare naturale e fluido. La maggior parte dei programmi TV e dei film utilizzano 24fps, quindi 30fps effettivamente supera ciò a cui il pubblico è abituato.
- Giochi, sport, azione veloce: Mantieni 60fps. La frequenza dei fotogrammi più alta è necessaria per il movimento fluido nei contenuti ad alta velocità. La riduzione a 30fps introdurrà balbettii visibili durante i rapidi movimenti della telecamera o gli oggetti in rapido movimento.
Se la tua fonte è stata registrata a 30fps, non c'è vantaggio nel ridurre ulteriormente a 24fps — il risparmio sarebbe minimo (circa il 20%) e corri il rischio di introdurre artefatti di temporizzazione dei fotogrammi non uniformi chiamati judder.
Metodo 5 — Utilizzare un Codec Moderno
H.265 (noto anche come HEVC) offre circa 50% di compressione migliore rispetto a H.264 con la stessa qualità visiva. Ciò significa che un file che sarebbe 60 MB con H.264 diventa circa 30 MB con H.265, senza alcuna differenza di qualità percettibile.
ffmpeg -i input.mov -c:v libx265 -crf 28 -preset slow -tag:v hvc1 -c:a aac -b:a 192k -movflags +faststart output.mp4
Nota che la scala CRF è diversa per H.265. CRF 28 in H.265 produce approssimativamente la stessa qualità visiva di CRF 23 in H.264. Il flag -tag:v hvc1 è critico — senza di esso, i dispositivi Apple (Safari, iPhone, iPad, Mac) non riprodurranno il file. Questo tag contrassegna il flusso come HEVC nel modo che il software Apple si aspetta.
| Funzionalità | H.264 (x264) | H.265 (x265) |
|---|---|---|
| Efficienza della compressione | Baseline | 40–50% più piccolo |
| Velocità di codifica | Veloce | 5–10x più lento |
| Supporto della riproduzione | Universale (99%+) | Dispositivi moderni (post-2017) |
| Compatibilità del browser | Tutti i browser | Safari, Edge, Chrome (parziale) |
| Social Media | Tutte le piattaforme | Tutte le piattaforme lo accettano |
| Qualità CRF equivalente | CRF 23 | CRF 28 |
Il compromesso è chiaro: H.265 produce file drasticamente più piccoli, ma la codifica richiede 5–10x più tempo e la compatibilità della riproduzione è più limitata. Per i contenuti che verranno riprodotti su dispositivi moderni o caricati su social media (dove la piattaforma comunque riencodifica), H.265 è una scelta eccellente. Per i contenuti che devono essere riprodotti su qualsiasi dispositivo, incluse vecchie smart TV, proiettori o lettori incorporati, rimani con H.264.
C'è anche AV1, un codec ancora più recente che corrisponde o supera l'efficienza di compressione di H.265 pur essendo royalty-free. Tuttavia, la codifica AV1 è attualmente estremamente lenta (20–50x più lenta di H.264), il che la rende impraticabile per la maggior parte degli utenti. Poiché la codifica AV1 hardware diventerà disponibile nei nuovi GPU, questo cambierà.
Tabella di Stima Rapida della Dimensione
La tabella seguente mostra le dimensioni dei file stimate per 1 minuto di video su diverse impostazioni. Usala per stimare quanto sarà grande il tuo file di output prima di iniziare la codifica. Queste sono approssimazioni — le dimensioni effettive variano in base alla complessità del contenuto (i filmati d'azione sono più grandi delle teste che parlano).
| Risoluzione | CRF | Codec | FPS | Dim. Stimata / min |
|---|---|---|---|---|
| 4K (3840×2160) | 18 | H.264 | 30 | ~500 MB |
| 4K (3840×2160) | 23 | H.264 | 30 | ~200 MB |
| 4K (3840×2160) | 28 | H.265 | 30 | ~60 MB |
| 1080p (1920×1080) | 18 | H.264 | 30 | ~120 MB |
| 1080p (1920×1080) | 23 | H.264 | 30 | ~60 MB |
| 1080p (1920×1080) | 28 | H.264 | 30 | ~25 MB |
| 1080p (1920×1080) | 28 | H.265 | 30 | ~15 MB |
| 720p (1280×720) | 23 | H.264 | 30 | ~30 MB |
| 720p (1280×720) | 28 | H.264 | 30 | ~15 MB |
| 720p (1280×720) | 28 | H.265 | 30 | ~8 MB |
| 480p (854×480) | 28 | H.264 | 30 | ~7 MB |
La riga evidenziata (1080p, CRF 23, H.264, 30fps) è l'impostazione predefinita di CleverUtils — produce il miglior equilibrio tra qualità e dimensione del file per la stragrande maggioranza dei casi d'uso. Per i caricamenti sui social media, puoi utilizzare CRF 28 a 1080p poiché la piattaforma comunque riencodificherà il tuo video.
Compressione Audio
La dimensione del file video riceve tutta l'attenzione, ma anche l'audio contribuisce. In un video 1080p tipico, l'audio rappresenta il 5–15% della dimensione totale del file. Sebbene questo suoni minore, i risparmi si accumulano nei video più lunghi e possono fare la differenza tra rispettare o meno un limite di dimensione del file.
| Impostazione Audio | Bitrate | Dimensione per Minuto | Qualità |
|---|---|---|---|
| AAC Stereo | 192 kbps | 1,44 MB | Trasparente (sicuro per la musica) |
| AAC Stereo | 128 kbps | 0,96 MB | Buono per voce & ambiente |
| AAC Mono | 64 kbps | 0,48 MB | Accettabile per la sola voce |
Nessun audio (-an) | 0 kbps | 0 MB | Video silenzioso |
Passare da 192 kbps a 128 kbps risparmia 480 KB al minuto (circa 29 MB all'ora). Per video tutorial e registrazione dello schermo in cui l'audio è principalmente voce, 128 kbps AAC è più che sufficiente — la voce non beneficia di bitrate superiori a 96 kbps.
Se il video non ha bisogno di audio (sostituzioni GIF animate, cicli di sfondo, B-roll silenzioso), rimuovilo completamente:
ffmpeg -i input.mov -c:v libx264 -crf 23 -preset slow -an -movflags +faststart output.mp4
Il flag -an rimuove tutti i flussi audio, risparmiando l'intero bitrate audio dal file di output.
Combinare i Metodi per Massima Riduzione
I cinque metodi di cui sopra non si escludono a vicenda. Puoi combinarli in un unico comando FFmpeg per riduzioni drastiche della dimensione del file. Ecco un esempio del mondo reale che applica tutti e cinque i metodi simultaneamente:
ffmpeg -i input.mov -c:v libx265 -crf 28 -preset slow -tag:v hvc1 -vf "scale=1920:-2" -r 30 -c:a aac -b:a 128k -movflags +faststart output.mp4
Questo comando prende un file MOV ProRes 4K 60fps e produce un MP4 H.265 a 1080p 30fps con CRF 28 e audio 128 kbps. Il risultato è un file che è 95–98% più piccolo rispetto al ProRes originale mentre appare eccellente su qualsiasi schermo. Un file ProRes di 6 GB al minuto diventa circa 15–20 MB al minuto.
Per lo scenario più comune — un video iPhone 4K HEVC che vuoi rendere più piccolo per condividere — questo singolo comando funziona bene:
ffmpeg -i iPhone_video.MOV -c:v libx264 -crf 26 -preset slow -vf "scale=1920:-2" -c:a aac -b:a 128k -movflags +faststart output.mp4
Questo fa il downscale a 1080p, utilizza H.264 per la massima compatibilità, imposta CRF 26 per un buon rapporto qualità-dimensione, e utilizza audio 128 kbps. Un video iPhone 4K HEVC tipico di 1 minuto (~170 MB) diventa circa 25–35 MB — abbastanza piccolo per email, app di messaggistica, e caricamenti veloci.