Sono solo un modesto sviluppatore di PHP a cui è stato assegnato il compito di recuperare alcune informazioni di base su centinaia di migliaia di file video. Ho avuto un po 'di fortuna con l'estrazione del ffmpeg video bitrate
, video width
, video height
, duration
, e aspect ratio
da loro, ma con un rapporto di errore di circa il 5%, questo mi lascia ancora con un enorme numero di file che non so come affrontare. I video vengono riprodotti, ma l'enorme quantità di dati restituiti da ffmpeg mi ha sconcertato su come analizzare l'XML restituito per trovare ciò di cui ho bisogno con tutte le condizioni che sembrano incontrare. (I file sono una raccolta degli ultimi 15 anni circa, alcuni appena codificati, altri convertiti anni fa)
Ad ogni modo, ho trovato il seguente uso di ffprobe
per ottenere la durata e speravo che qualcuno qui che capisse le complessità dell'uso di ffmpeg & ffprobe sarebbe stato così gentile da aiutarmi a trovare gli altri valori di cui ho bisogno in un modo più diretto del codice pazzo mi trovo a creare per scalare i risultati completi di ffmpeg.
ffprobe -i "video.mp4" -show_entries format=duration -v quiet -of csv="p=0"
Grazie mille in anticipo.
UNA PRECISAZIONE:
Dovrei aggiungere che con il cmd sottostante, posso "vedere" ciò di cui ho bisogno, ma non capisco come estrarre ciò di cui ho bisogno, ad esempio recuperare il bitrate VIDEO e sopprimere / ignorare il bitrate AUDIO o determinare quale di 2 durate diverse da utilizzare (durate audio / video?)
C:\>ffprobe -v error -show_entries stream=width,height,bit_rate,duration -of default=noprint_wrappers=1 input.mp4
duration=1712.000000
bit_rate=64000
width=320
height=240
duration=1711.946113
bit_rate=359827
duration=1712.000000
bit_rate=N/A
duration=1712.000000
bit_rate=N/A