m3u8 ⽂件实际上是⼀个播放文件索引地址,通过里面的参数可以找到相应的时长
EXTM3U:这个是M3U8文件必须包含的标签,并且必须在文件的第一行,所有的M3U8文件中必须包含这个标签。
EXT-X-VERSION:M3U8文件的版本。
EXTINF:代表这个ts文件的时长,单位是秒。
EXT-X-ENDLIST:表示PlayList的末尾了,它可以在PlayList中的任意位置出现,但只能出现一个。
EXT-X-TARGETDURATION:指定最大的媒体段的时长(秒)。所以#EXTINF中指定的时间长度必须小于或等于这个值
了解完这几个参数基本上就知道怎么拿到总时长了
function getM3u8Duration($uri)
$arrContextOptions = [
'ssl' => [
'verify_peer' => false,
'verify_peer_name' => false,
try {
$result = file_get_contents($uri,false,stream_context_create($arrContextOptions));
} catch (\ErrorException $e) {
return 0;
preg_match_all('/\EXTINF:(.*?)\,/i', $result , $arr);
$duration = array_sum($arr[1]);
return (int)$duration ;
用到的地方直接调用就行
$location = locationUrl($url);
//获取视频Content-Length
$responseHead = get_data($location);
$list1 = explode("Content-Length: ", $responseHead);
配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8流媒体视频播放配置m3u8
getID3-master的下载地址:https://download.csdn.net/download/weixin_39720414/85967376方法2(只支持mp3格式):
文件下载地址:https://download.csdn.net/download/weixin_39720414/85967619...