我有近200个ogg文件,我需要获取它们的音频长度并将其保存在数据库中。
我知道PHP,但我认为我无法用PHP和MySQL完成任务。
您能为我的问题推荐一个解决方案吗?
答案 0 :(得分:2)
如果您正在使用linux / unix并安装了ffmpeg,请执行以下操作:
$time = exec("ffmpeg -i " . escapeshellarg($path) . " 2>&1 | grep 'Duration' | cut -d ' ' -f 4 | sed s/,//");
list($hms, $milli) = explode('.', $time);
list($hours, $minutes, $seconds) = explode(':', $hms);
$total_seconds = ($hours * 3600) + ($minutes * 60) + $seconds;
如果没有,那么你应该看看一些支持这个功能的库,可能像Kacey提到的那样this
或ogg
。
所以你可以使用像
这样的东西KTaglib_MPEG_AudioProperties::getLength
我答案开头的代码最初由Stephen J. Fuhry编写,可以看到here