Cosa significano i dettagli del flusso di output video da ffmpeg?


10

Quando si esegue ffmpeg -iil file video come parametro di input, ffmpeg restituisce alcuni dettagli del tipo di flusso, come codec, bitrate e risoluzione. Che cosa significano gli altri dati: "tbr", "tbn" e "tbc"? Dai miei esempi di seguito, puoi vedere che variano molto.

Stream #0.0(und): Video: h264, yuv420p, 1280x720, 25 tbr, 25 tbn, 50 tbc

Stream #0.0(eng): Video: h264, yuv420p, 640x480, 22050 tbr, 22050 tbn, 44100 tbc

Stream #0.1: Video: wmv3, yuv420p, 1280x720, 4000 kb/s, 29.97 tbr, 1k tbn, 1k tbc

Domanda secondaria: perché non viene sempre mostrato il bitrate?

Risposte:


6

Quello che vedi è il reciproco delle basi di data e ora utilizzate in FFmpeg e en / decoders. Non posso spiegarlo meglio, quindi citando solo la mailing list di FFmpeg :

tbn è la base dei tempi in AVStream che proviene dal container, credo. È utilizzato per tutti i timestamp AVStream.

tbc è la base dei tempi in AVCodecContext per il codec utilizzato per un determinato flusso. È utilizzato per tutti gli AVCodecContext e i relativi timestamp.

tbr è indovinato dal flusso video ed è il valore che gli utenti vogliono vedere quando cercano la frequenza dei fotogrammi video, tranne che a volte è due volte quello che ci si aspetterebbe a causa della frequenza di campo rispetto alla frequenza dei fotogrammi.

Alla fine, vuoi prendere tbr poiché il valore uno si riferisce principalmente a "framerate".

Il bitrate non viene sempre mostrato in quanto i flussi video potrebbero contenere contenuti con bitrate variabile - in tal caso, non è possibile stimare realmente il bitrate. Per flussi di bitrate costanti, viene solitamente mostrato il bitrate. Ci sono alcuni casi in cui vengono utilizzati bitrate variabili e FFmpeg mostra la media - almeno con il video h.264 a volte funziona.

Video: h264, yuv420p, 640x480, 22050 tbr, 22050 tbn, 44100 tbc sembra più un flusso audio, ovviamente.

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.