GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa mendapatkan panjang file video dari konsol?

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

akan mengembalikan durasi video dalam hitungan detik.


Sesuatu yang mirip dengan:

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

Ini akan mengirimkan:HH:MM:SS.ms . Anda juga dapat menggunakan ffprobe , yang disertakan dengan sebagian besar instalasi FFmpeg:

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

… atau:

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

Untuk mengonversi menjadi detik (dan mempertahankan milidetik), menyalurkan ke:

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

Untuk mengonversinya menjadi milidetik, salurkan ke:

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

Jika Anda hanya menginginkan detik tanpa milidetik, salurkan ke:

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

Contoh:


Linux
  1. Bagaimana saya bisa mendapatkan status keyboard di Linux?

  2. Cara mendapatkan ukuran file tar.gz dalam (MB) dengan python

  3. Bagaimana saya bisa mendapatkan nilai unik dari array di Bash?

  1. Bagaimana cara mendapatkan path ke file saat ini (pwd) di Linux dari C?

  2. Bagaimana cara mendapatkan direktori absolut dari sebuah file di bash?

  3. Bagaimana saya bisa mendapatkan informasi wadah Docker Linux dari dalam wadah itu sendiri?

  1. Bagaimana saya bisa mendapatkan bitrate video dari baris perintah di Linux?

  2. Bagaimana saya bisa mendapatkan jumlah memori yang tersedia secara portabel di seluruh distribusi?

  3. Bagaimana saya bisa mendapatkan biner dari file .py