【音頻時(shí)長計(jì)算】php根據(jù)音頻文件的大小加音頻音質(zhì)計(jì)算音頻的時(shí)長代碼 暫時(shí)未發(fā)現(xiàn)誤差
通過文件的大小、音頻音質(zhì)計(jì)算時(shí)長,這種方法可能會存在誤差,但本人試用暫時(shí)還未發(fā)現(xiàn)。還比較精準(zhǔn)的!有點(diǎn)誤差也是在能接受的范圍內(nèi)。
首先需要獲取文件的 字節(jié)長度 和 音質(zhì) (如:6400、12800、32000)
第一個(gè)(需要自己知道文件大小和音質(zhì))
//計(jì)算音樂時(shí)長function iaiku_duration($lksize,$lkquality='12800'){ //音樂文件大小+音樂音質(zhì)=音樂時(shí)長 $recordtime = intval((($lksize-42)*0.8) / $lkquality); return date("i:s",$recordtime); }
使用案例:echo iaiku_duration('1726672','6400');
返回結(jié)果:03:35
第二個(gè)(遠(yuǎn)程音樂文件轉(zhuǎn)化字節(jié)長度)
//計(jì)算音樂時(shí)長function iaiku_duration($lkurl,$lkquality='12800'){ $header_array = get_headers($lkurl, true); $lksize = $header_array['Content-Length']; //音樂文件大小+音樂音質(zhì)=音樂時(shí)長 $recordtime = intval((($lksize-42)*0.8) / $lkquality); return date("i:s",$recordtime);}
使用案例:echo iaiku_duration('http://cg.sycdn.kuwo.cn/2a2eb0bafa872aee7021f133162d0835/64dfc0f5/resource/n1/64/13/3119858049.mp3','12800');
返回結(jié)果:04:17