GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso ottenere la lunghezza di un file video dalla console?

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

restituirà la durata del video in secondi.


Qualcosa di simile a:

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

Questo consegnerà:HH:MM:SS.ms . Puoi anche usare ffprobe , fornito con la maggior parte delle installazioni di FFmpeg:

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

… oppure:

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

Per convertire in secondi (e conservare i millisecondi), inserire pipe in:

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

Per convertirlo in millisecondi, esegui il pipe in:

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

Se vuoi solo i secondi senza i millisecondi, inserisci:

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

Esempio:


Linux
  1. Come rimuovere la Bom da un file Utf-8?

  2. Come ottenere la dimensione di tar.gz nel file (MB) in python

  3. Come posso ottenere valori univoci da un array in Bash?

  4. Come ottenere il percorso del file corrente (pwd) in Linux da C?

  5. Come ottengo la directory assoluta di un file in bash?

Come ottenere il nome del file dal percorso completo in Linux

Come posso ottenere messaggi di registro dal server LAMP su Ubuntu 10.04?

Come ottenere l'URL del file Dropbox dalla riga di comando?

Come posso monitorare la lunghezza della coda di accettazione?

Come ottengo il mio indirizzo IP dalla riga di comando?

Come posso aprire un file con i numeri di riga visualizzati dalla riga di comando in "vi"?