在上一篇文章中講述了網絡直播電視的M3U8解析和當中的keyword段。本章我將對我遇見到的不同數據源的M3U8文件進行列舉和分析。
第一種:ts片段地址為文件名,下載地址為:http:\\www.XXX.com\01\XX\1.m3u8
#EXTM3U #EXT-X-TARGETDURATION:8 #EXT-X-MEDIA-SEQUENCE:92595 #EXTINF:8, 20121120T182851-04-92595.ts #EXTINF:8, 20121120T182851-04-92596.ts #EXTINF:8, 20121120T182851-04-92597.ts #EXTINF:8, 20121120T182851-04-92598.ts #EXTINF:8, 20121120T182851-04-92599.ts #EXTINF:8, 20121120T182851-04-92600.ts #EXTINF:8, 20121120T182851-04-92601.ts #EXTINF:8, 20121120T182851-04-92602.ts
那么獲取到 20121120T182851-04-92595.ts 片段地址就為http:\\www.XXX.com\01\XX\20121120T182851-04-92595.ts。
類似情況,例如以下:
#EXTM3U #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:3 #EXT-X-MEDIA-SEQUENCE:6198 #EXTINF:3, aac749f7425bf07f_13b4b0fd1b7_6198.ts?wsApp=HLS&wsMonitor=-1&wsHost=rtmp.cntv.lxdns.com #EXTINF:3, aac749f7425bf07f_13b4b0fe1b8_6199.ts?wsApp=HLS&wsMonitor=-1&wsHost=rtmp.cntv.lxdns.com #EXTINF:3, aac749f7425bf07f_13b4b0ffa08_6200.ts?wsApp=HLS&wsMonitor=-1&wsHost=rtmp.cntv.lxdns.com
另外一種:ts片段地址為文件夾結構,下載地址為:http:\\www.XXX.com\01\XX\1.m3u8。
#EXTM3U #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:9190381 #EXTINF:10, /timeshift/63/20121129165010.ts #EXTINF:10, /timeshift/63/20121129165020.ts #EXTINF:10, /timeshift/63/20121129165030.ts
那么獲取到/timeshift/63/20121129165010.ts片段地址就為http:\\www.XXX.com\01\XX/timeshift/63/20121129165010.ts。
第三種:ts片段地址為文件夾結構,可是和m3u8下載地址文件夾重疊。下載地址為:http:\\www.XXX.com\01\timeshift\63\1.m3u8。
#EXTM3U #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:9190381 #EXTINF:10, /timeshift/63/20121129165010.ts #EXTINF:10, /timeshift/63/20121129165020.ts #EXTINF:10, /timeshift/63/20121129165030.ts
將沖突的文件夾剔除,那么獲取到/timeshift/63/20121129165010.ts片段地址就為http:\\www.XXX.com\01\XX/timeshift/63/20121129165010.ts。
第四種:ts片段地址為完整的片段下載地址,下載地址為:http:\\www.XXX.com\01\XX\1.m3u8。
#EXTM3U #EXT-X-ALLOW-CACHE:NO #EXT-X-TARGETDURATION:10 #EXT-X-MEDIA-SEQUENCE:6297202 #EXTINF:10, http://202.108.17.170:80/ipad/160_12784_1758/20121127185340.ts?userid=2221281760225887_160_12784_1758 #EXTINF:10, http://202.108.17.170:80/ipad/160_12784_1758/20121127185350.ts?userid=2221281760225887_160_12784_1758 #EXTINF:10, http://202.108.17.170:80/ipad/160_12784_1758/20121127185400.ts?userid=2221281760225887_160_12784_1758
這樣的情況下下載地址就不須要拼接了。
直播不同的數據得到的片段下載地址也就基本維持這四種情況,當然林子大了什么鳥都有。也說不定會碰見更奇特的呢。呵呵...
總結:
1、“http”開頭的一定是全下載地址,不須要進行拼接處理的。也些“二桿子源”,會將寫成“HTTP”或“Http”等等。所以我們須要先轉成小寫在進行匹配,當然下載地址的http還需為小寫。
2、帶有文件夾結構的源,相同有些或是這種“timeshift/63/2012129165020.ts”,前面不帶“/”。注意哦!
