Har*_*rma 4 video multimedia ffmpeg mediainfo ffprobe
如何以毫秒为单位查找视频文件的持续时间,即以确定的方式以整数形式查找.我使用ffprobe来获取持续时间,但它没有给出所有文件格式的持续时间.
Har*_*rma 18
使用以下命令:
i)获取视频流的持续时间:
$ mediainfo --Inform="Video;%Duration%" [inputfile]
Run Code Online (Sandbox Code Playgroud)
ii)获取媒体文件的持续时间:
$ mediainfo --Inform="General;%Duration%" [inputfile]
Run Code Online (Sandbox Code Playgroud)
iii)仅获取音频流的持续时间:
$ mediainfo --Inform="Audio;%Duration%" [inputfile]
Run Code Online (Sandbox Code Playgroud)
iv)获取多个参数的值:
$ mediainfo --Inform="Video;%Width%,%Height%,%BitRate%,%FrameRate%" [inputfile]
Run Code Online (Sandbox Code Playgroud)
输出将是这样的:
1280,720,3000000,30.0
Run Code Online (Sandbox Code Playgroud)
由iota提供使用mediainfo --Inform="Video;%Duration%" [inputfile]
,可能但返回奇怪的结果.
例如,对于持续时间为31s 565ms的视频,给定命令的输出将为:
31565
Run Code Online (Sandbox Code Playgroud)
它不适合我,我想出了以下解决方案:
mediainfo --Inform="Video;%Duration/String3%" inputExample.webm
Run Code Online (Sandbox Code Playgroud)
返回值是:
00:00:31.565
Run Code Online (Sandbox Code Playgroud)
毕竟,您可以将返回值格式化,例如PHP,将其转换为秒,例如:
$parsed = date_parse( '00:00:31.565' );
echo $parsed['hour'] * 3600 + $parsed['minute'] * 60 + $parsed['second'];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13084 次 |
最近记录: |