GNU/Linux >> Znalost Linux >  >> Linux

Jak mohu získat délku video souboru z konzoly?

ffprobe -i some_video -show_entries format=duration -v quiet -of csv="p=0"

vrátí délku videa v sekundách.


Něco podobného jako:

ffmpeg -i input 2>&1 | grep "Duration"| cut -d ' ' -f 4 | sed s/,//

Tím se zobrazí:HH:MM:SS.ms . Můžete také použít ffprobe , který je dodáván s většinou instalací FFmpeg:

ffprobe -show_format input | sed -n '/duration/s/.*=//p'

… nebo:

ffprobe -show_format input | grep duration | sed 's/.*=//')

Chcete-li převést na sekundy (a zachovat milisekundy), převeďte potrubí do:

awk '{ split($1, A, ":"); print 3600*A[1] + 60*A[2] + A[3] }'

Chcete-li jej převést na milisekundy, použijte kanál do:

awk '{ split($1, A, ":"); print 3600000*A[1] + 60000*A[2] + 1000*A[3] }'

Pokud chcete pouze sekundy bez milisekund, přejděte do:

awk '{ split($1, A, ":"); split(A[3], B, "."); print 3600*A[1] + 60*A[2] + B[1] }'

Příklad:


Linux
  1. Jak získat velikost tar.gz v (MB) souboru v pythonu

  2. Jak získat cestu k aktuálnímu souboru (pwd) v Linuxu z C?

  3. Jak získám absolutní adresář souboru v bash?

  1. Jak mohu získat informace o kontejneru Docker Linux ze samotného kontejneru?

  2. Jak mohu získat datový tok videa z příkazového řádku v Linuxu?

  3. Jak mohu získat množství dostupné paměti přenosně napříč distribucemi?

  1. Jak mohu sledovat délku fronty přijetí?

  2. Jak získám svou IP adresu z příkazového řádku?

  3. Jak mohu získat binární soubor ze souboru .py