音频文件也可使用,使用ffmeg安装太复杂了
附ffmpeg方式:centos下安装ffmpeg_yum安装ffmpeg-CSDN博客
使用composer先安装
composer require james-heinrich/getid3
获取本地视频
//获取本地视频$video_path = $_SERVER['DOCUMENT_ROOT'].$params['video'];$getid3 = new getID3();$info = $getid3->analyze($video_path);var_dump($info);
获取远程视频信息,也是生成临时文件,再删除,如果再上传本地的时候直接使用本地获取即可
//远程视屏地址
$remotefilename = 'https://vdept3.bdstatic.com/mda-qfvaqpnzzj3qf31w/cae_h264/1719738331410781347/mda-qfvaqpnzzj3qf31w.mp4?v_from_s=hkapp-haokan-hbf&auth_key=1743144763-0-0-fcab6e8d4022a8b4d186e26431dcc39b&bcevod_channel=searchbox_feed&pd=1&cr=0&cd=0&pt=3&logid=3163875783&vid=16648779981624158842&klogid=3163875783&abtest=';if ($fp_remote = fopen($remotefilename, 'rb')) {$localtempfilename = tempnam('', 'getID3');if ($fp_local = fopen($localtempfilename, 'wb')) {while ($buffer = fread($fp_remote, 8192)) {fwrite($fp_local, $buffer);}fclose($fp_local);$getID3 = new getID3();$ThisFileInfo = $getID3->analyze($localtempfilename);$second = floor($ThisFileInfo['playtime_seconds']) ?? 0; //秒数向下取整var_dump($ThisFileInfo);//打印信息unlink($localtempfilename);}fclose($fp_remote);}
打印出来的视频信息
array(19) {["GETID3_VERSION"] => string(19) "1.9.23-202310190849"["filesize"] => int(8323282)["filepath"] => string(35) "C:/Users/PC-8625/AppData/Local/Temp"["filename"] => string(11) "getFCB0.tmp"["filenamepath"] => string(47) "C:/Users/PC-8625/AppData/Local/Temp/getFCB0.tmp"["avdataoffset"] => int(87891)["avdataend"] => int(8323282)["fileformat"] => string(3) "mp4"["audio"] => array(10) {["dataformat"] => string(3) "mp4"["bitrate"] => int(65622)["codec"] => string(19) "ISO/IEC 14496-3 AAC"["sample_rate"] => float(44100)["channels"] => int(2)["bits_per_sample"] => int(16)["lossless"] => bool(false)["channelmode"] => string(6) "stereo"["compression_ratio"] => float(0.046500850340136)["streams"] => array(1) {[0] => array(9) {["dataformat"] => string(3) "mp4"["bitrate"] => int(65622)["codec"] => string(19) "ISO/IEC 14496-3 AAC"["sample_rate"] => float(44100)["channels"] => int(2)["bits_per_sample"] => int(16)["lossless"] => bool(false)["channelmode"] => string(6) "stereo"["compression_ratio"] => float(0.046500850340136)}}}["video"] => array(8) {["dataformat"] => string(9) "quicktime"["rotate"] => int(0)["resolution_x"] => int(640)["resolution_y"] => int(360)["fourcc"] => string(4) "avc1"["fourcc_lookup"] => string(16) "H.264/MPEG-4 AVC"["frame_rate"] => float(25)["bitrate"] => float(291412.00549507)}["tags"] => array(1) {["quicktime"] => array(1) {["encoding_tool"] => array(1) {[0] => string(44) "Multimedia Cloud Transcode (cloud.baidu.com)"}}}["comments"] => array(1) {["language"] => array(1) {[0] => string(12) "Undetermined"}}["encoding"] => string(5) "UTF-8"["mime_type"] => string(9) "video/mp4"["quicktime"] => array(13) {["hinting"] => bool(false)["controller"] => string(8) "standard"["ftyp"] => array(7) {["hierarchy"] => string(4) "ftyp"["name"] => string(4) "ftyp"["size"] => int(32)["offset"] => int(0)["signature"] => string(4) "isom"["unknown_1"] => int(512)["fourcc"] => string(4) "isom"}["timestamps_unix"] => array(2) {["create"] => array(3) {["moov mvhd"] => int(-2082844800)["moov trak tkhd"] => int(-2082844800)["moov trak mdia mdhd"] => int(-2082844800)}["modify"] => array(3) {["moov mvhd"] => int(-2082844800)["moov trak tkhd"] => int(-2082844800)["moov trak mdia mdhd"] => int(-2082844800)}}["time_scale"] => int(44100)["display_scale"] => float(1)["video"] => array(5) {["rotate"] => int(0)["resolution_x"] => int(640)["resolution_y"] => int(360)["frame_rate"] => float(25)["frame_count"] => int(4613)}["stts_framecount"] => array(2) {[0] => int(4613)[1] => int(7947)}["audio"] => array(5) {["bitrate"] => int(65622)["codec"] => string(3) "mp4"["sample_rate"] => float(44100)["channels"] => int(2)["bit_depth"] => int(16)}["comments"] => array(1) {["encoding_tool"] => array(1) {[0] => string(44) "Multimedia Cloud Transcode (cloud.baidu.com)"}}["free"] => array(4) {["hierarchy"] => string(4) "free"["name"] => string(4) "free"["size"] => int(8)["offset"] => int(87875)}["mdat"] => array(4) {["hierarchy"] => string(4) "mdat"["name"] => string(4) "mdat"["size"] => int(8235399)["offset"] => int(87883)}["encoding"] => string(5) "UTF-8"}["playtime_seconds"] => float(184.529)["bitrate"] => float(357034.00549507)["tags_html"] => array(1) {["quicktime"] => array(1) {["encoding_tool"] => array(1) {[0] => string(44) "Multimedia Cloud Transcode (cloud.baidu.com)"}}}["playtime_string"] => string(4) "3:05"
}