zoukankan      html  css  js  c++  java
  • 网络直播电视之M3U8解析篇 (下)


           在上一篇文章中讲述了网络直播电视的M3U8解析和当中的keyword段。本章我将对我遇见到的不同数据源的M3U8文件进行列举和分析。

         第一种:ts片段地址为文件名,下载地址为:http:\www.XXX.com1XX1.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.com1XX20121120T182851-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.com1XX1.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.com1XX/timeshift/63/20121129165010.ts

     

       第三种:ts片段地址为文件夹结构,可是和m3u8下载地址文件夹重叠。下载地址为:http:\www.XXX.com1 imeshift631.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.com1XX/timeshift/63/20121129165010.ts

     

       第四种:ts片段地址为完整的片段下载地址,下载地址为:http:\www.XXX.com1XX1.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”,前面不带“/”。注意哦!


     

     


     

     

  • 相关阅读:
    HDU 6214 Smallest Minimum Cut 最小割,权值编码
    HDU 6196 happy happy happy 爆搜加剪枝
    2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Coin 概率+矩阵快速幂
    HDU 6199 2017沈阳网络赛 DP
    HDU 6200 2017沈阳网络赛 树上区间更新,求和
    HDU 6203 2017沈阳网络赛 LCA,DFS+树状数组
    docker平时使用异常记录
    AI模型运维——NVIDIA驱动、cuda、cudnn、nccl安装
    python——平时遇到问题记录
    python——虚拟环境管理大合集
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/4205787.html
Copyright © 2011-2022 走看看