利用ffmpeg只能獲取到本地視頻的信息。
function video_time($file) {
ob_start();
passthru(sprintf(FFMPEG_PATH, $file)); //passthru()類似exec()
$info = ob_get_contents();
ob_end_clean();
// 通過使用輸出緩沖,獲取到ffmpeg所有輸出的內容。
$ret = array();
// Duration: 01:24:12.73, start: 0.000000, bitrate: 456 kb/s
if (preg_match("/Duration: (.*?), start: (.*?), bitrate: (\d*) kb\/s/", $info, $match)) {
$ret['duration'] = $match[1]; // 提取出播放時間
return $ret;
}
return "";
}
如果是線上視頻,可通過先下載到本地,獲取到信息后再刪除。
