如何通過(guò)m3u8地址獲取多種清晰度m3u8地址
發(fā)布時(shí)間:2019-06-25 10:32:48不管是上傳還是api方式入庫(kù),保存到系統(tǒng)的m3u8地址只有一個(gè),但是在實(shí)際情況可能會(huì)需要調(diào)用到不同的清晰度地址。這里用php給大家一個(gè)示范思路,以后就知道怎么去應(yīng)用了。
<?php
$url=$_GET['url'];//'http://localhost:2100/20190615/7W0Vaxpi/index.m3u8'
$URL2ARR=parse_url($url);
$DIRPATH=explode('/',$URL2ARR['path']);
$PORT=$URL2ARR['port']?':'.$URL2ARR['port']:'';
$INDEXM3U8_URL=$URL2ARR['scheme'].'://'.$URL2ARR['host'].$PORT.'/'.$DIRPATH[1].'/'.$DIRPATH[2];
/**
* 拼接入口M3U8
* */
$M3U8_CONTENT=file_get_contents($INDEXM3U8_URL.'/index.m3u8');
/**
* 獲取入口M3U8內(nèi)容
*/
preg_match_all('/(d+)kb/hls/i',$M3U8_CONTENT,$BITARR);
/**
* 正則提取多碼率
* */
foreach ($BITARR[1] as $key => $value) {
$BITJSON[$value]=[
'url'=>$INDEXM3U8_URL.'/'.$value.'kb/hls/index.m3u8'
];
}
echo json_encode($BITJSON);
以上示范通過(guò)一個(gè)云轉(zhuǎn)碼輸出的一個(gè)m3u8地址,來(lái)獲取該視頻下面多種清晰度的m3u8地址。
應(yīng)用場(chǎng)景:
1、通過(guò)會(huì)員權(quán)限控制,輸出不同清晰度的視頻地址。
2、手機(jī)app播放器需要用到多種清晰度切換。