H.264 o VP9 per la codifica per YouTube?


15

Realizzo cortometraggi che distribuisco tramite YouTube. So che YouTube utilizza VP9 per lo streaming, ma YouTube consiglia comunque di caricare con h.264. Per me ha più senso caricare in un formato simile a quello che verrà trasmesso da YouTube, ma potrei mancare qualcosa.

Inoltre, caricare in un codec di qualità superiore come DNxHR o Prores (non sono preoccupato per la larghezza di banda o il tempo di elaborazione) preserverebbe meglio la qualità video dopo la codifica di YouTube?


Sembra che YouTube codifichi anche i video su H.264. È possibile eseguire lo streaming di questi video in Google Chrome, se si utilizza l'estensione h264ify.
jarno,

Risposte:


13

tl; dr: poiché Youtube ricodifica tutti i video indipendentemente dal formato di caricamento, non è poi così importante. Esporta il tuo video con un bitrate elevato per preservare la qualità. Vedi anche la mia risposta qui per quanto riguarda la perdita di qualità causata da Youtube.

Risposta lunga: ogni ricodifica di un video in un formato compresso riduce la qualità. Di solito, ciò significa che perderai qualità in due punti: quando esporti il ​​video modificato dal tuo software di editing e quando carichi il video esportato su Youtube, a quel punto viene ricodificato in un formato altamente compresso e compatibile con lo streaming. Non hai alcun controllo su quel secondo passaggio, quindi quello che puoi fare per ottenere la massima qualità possibile è assicurarti di perdere meno qualità possibile durante la prima codifica.
In teoria, ciò significherebbe esportare in un formato non compresso percettivamente (anche se tecnicamente non) come Apple ProRes o DNxHD come hai suggerito. Tuttavia, sfortunatamente, Youtube non supporta questi formati, quindi dovrai utilizzare un formato compresso. Per ridurre al minimo la perdita di qualità, imposta un bitrate elevato nelle impostazioni di esportazione (supponendo che i tempi di rendering e caricamento non siano un problema. In tal caso, dovrai trovare una via di mezzo; esportare con un bitrate superiore al bitrate di il materiale originale non produrrà più qualità, quindi è alto come vorrei). Se lo fai, non importa quale codec utilizzi, entrambi sono altamente efficienti per quanto riguarda il rapporto dimensioni / qualità del file (VP9 probabilmente un po 'di più, ma questo è più importante quando hai a che fare con bitrate bassi). Youtube consiglia H264, quindi è quello che vorrei usare. Tuttavia, il miglior consiglio che posso darti è di provare entrambi, ovvero esportare lo stesso video di H264 e VP9 con bitrate / altre impostazioni identici, caricare entrambi su YouTube e verificare quale ti sembra migliore.


6
ProRes e DNxHD non sono compressi, ma sono entrambi formati compressi con perdita. Tuttavia, entrambi sono generalmente considerati percettivamente senza perdita.
Llogan,

Oops, hai ragione, grazie! Lo correggerò subito.
MoritzLost,

Mentre la maggior parte l'idea è corretta, YouTube fa Prores supporto. Si noti nel collegamento che pubblica per i formati supportati da YouTube il formato .mov I file Prores sono memorizzati in un wrapper .mov e non hanno estensione univoca per il codec. Lo stesso vale probabilmente per i file DNx in un wrapper .mov (anche se forse non .mxf spostato).

7

YouTube ricodificherà qualunque cosa tu gli dia. VP9 è attualmente troppo lento per codificare. Quindi la scelta migliore è:

  • Dagli il filmato originale, o se non è accettato da YouTube o è troppo grande per essere caricato, allora ...

  • Ricodifica in H.264

ffmpeg

ffmpegaccetterà qualsiasi input e fornirà un output di grande qualità. Lo sviluppo è molto attivo, quindi è meglio usare una build recente che è possibile scaricare per Windows, OS X o Linux.

Comandi di esempio

Codifica video H.264, copia audio in streaming , nel contenitore Matroska:

ffmpeg -i input.avi -c:v libx264 -preset medium -crf 18 -c:a copy output.mkv

Codifica video H.264, audio Vorbis, nel contenitore Matroska:

ffmpeg -i input.avi -c:v libx264 -preset medium -crf 18 -c:a libvorbis -q:a 5 output.mkv
  • -crf 18è considerato approssimativamente privo di perdita visiva. L'intervallo è una scala logaritmica da 0 a 51. 0 è senza perdita di dati (file di grandi dimensioni), 23 è predefinito.

  • -presetcontrolla l'efficienza della codifica e quindi influenza la velocità di codifica. Generalmente si consiglia di utilizzare il preset più lento per cui si ha pazienza o, in caso di dubbio, utilizzare medium(impostazione predefinita). Le scelte sono: ultraveloce, superveloce, molto veloce, più veloce, veloce, medio, lento, più lento, molto basso.

  • Il tuo lettore potrebbe non apprezzare l'output, ma YouTube piacerà. In tal caso, utilizza un lettore sano come VLC.

Vedi anche


0

Molte di queste risposte sono obsolete. Youtube in realtà ricodifica i nostri video in VP9 rendendo i video HD un aspetto migliore in termini di qualità. È solo quando carichi il video nella sua codifica originale che sembra degradata in base alla compressione. Potrebbe essere necessario un giorno o una settimana affinché YouTube ricodifichi i nostri video HD su Vp9. Io stesso sono uno youtuber e posso davvero vedere la differenza


"È solo quando carichi il video nella sua codifica originale che sembra degradata in base alla compressione. Può volerci un giorno o una settimana affinché YouTube ricodifichi i nostri video HD su Vp9." Sospetto che questo sia qualcosa che YouTube pubblicherebbe. Potete fornire una fonte?
user24601,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.