1、抓取接口内容
通过配置代理抓包工具与itouch连接后,在代理服务端即可抓取itouch访问优酷服务器过程的包。配置教程:
http://jingyan.baidu.com/article/5bbb5a1b4cb92513eaa1797a.html
抓取成功后,如图:
以下优酷服务端响应itouch播放请求的内容:
#EXTM3U
#EXT-X-TARGETDURATION:12
#EXT-X-VERSION:2
#EXTINF:6,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=0&ts_end=5.9&ts_seg_no=0&ts_keyframe=1
#EXTINF:6,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=5.9&ts_end=11.9&ts_seg_no=1&ts_keyframe=1
#EXTINF:6,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=11.9&ts_end=17.9&ts_seg_no=2&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=17.9&ts_end=29.9&ts_seg_no=4&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=29.9&ts_end=41.9&ts_seg_no=5&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=41.9&ts_end=53.9&ts_seg_no=6&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=53.9&ts_end=65.9&ts_seg_no=7&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=65.9&ts_end=77.9&ts_seg_no=8&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=77.9&ts_end=89.9&ts_seg_no=9&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=89.9&ts_end=101.9&ts_seg_no=10&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=101.9&ts_end=113.9&ts_seg_no=11&ts_keyframe=1
#EXTINF:12,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=113.9&ts_end=125.9&ts_seg_no=12&ts_keyframe=1
#EXTINF:4,
http://58.211.22.209/67742D3E9A34883C3013EF4071/03000201005355AEB045B30230E416DE8E7AE4-029D-1B46-B233-8E29C448A69F.flv?ts_start=125.9&ts_end=129.833&ts_seg_no=13&ts_keyframe=1
#EXT-X-ENDLIST
2、解析特殊标签
内容中有一些特殊标签,如#EXTM3U,现在我们来解析这些标签:
编号 |
标签值 |
标签意义 |
备注 |
1、 |
#EXTM3U |
标识播放列表文件扩展名的格式,如
|
该标签必须包含在播放列表中。且只能出现1次 |
2、 |
#EXT-X-TARGETDURATION |
指定媒体段文件最大持续的时间 |
该标签在播放列表文件中只能出现1次。#EXTINF会标识每个段的具体持续时间,该时间只能小于等于#EXT-X-TARGETDURATION |
3、 |
#EXTINF |
指定每个媒体段文件的持续时间。 |
该标签后必须紧跟段文件的URI地址。 |
4、 |
#EXT-X-VERSION |
指定播放列表兼容性版本。相关的媒体文件和服务器都必须全部支持该标签指定的版本。 |
该标签必须包含在播放列表中,且该值在PlayList中只能出现1次 |
5、 |
#EXT-X-DISCONTINUITY |
该标签指示在当前段文件的段前或段后的连续性 |
该标签不能出现在主播放列表中 |
6、 |
#EXT-X-ENDLIST |
该标签指示其后没有媒体文件段了。 |
该标签可以在播放列表的任意位置出现,但只能出现1次 |
7、 |
#EXT-X-BYTERANGE |
该标签指示当前的媒体段文件是一个被媒体URI确定的源文件的子范围 |
该标签只能出现在当前段文件的下一个段文件中。 |
8、 |
#EXT-X-MEDIA-SEQUENCE |
每个媒体段文件在播放列表中都有一个唯一的顺序值,该标签指示第一个出现的段文件的顺序号。 |
如果该值是个十进制的整数,则该值不能在减少。一个播放列表文件一个以上的该标签。如果播放列表不包含此标签,则第一段出现的段文件的序号就是0,该标签不能出现在主播放列表中 |
9、 |
#EXT-X-KEY |
媒体段文件可能会被加密,该标签指示如何解密他们。 |
该标签应用在当前段文件和下一个段文件之间,多个该标签必须提供同样的解密字符。 |
10、 |
#EXT-X-PROGRAM-DATE-TIME |
该标签指定与第一个段文件的实例连接的绝对日期和时间。 |
该标签只能应用在当前段文件的下一个段文件中 |
11、 |
#EXT-X-ALLOW-CACHE |
该标签值指示客户端是否缓存下一个请求的段文件。 |
该标签可以在播放列表的任意位置出现,但只能出现1次。 |
12、 |
#EXT-X-PLAYLIST-TYPE |
该标签值将为播放列表提供多个提示信息。它应用与整个播放列表中。 |
该标签不能出现在主播放列表 |
13、 |
#EXT-X-MEDIA |
该标签用于替换播放列表相关的相同的内容。 |
该标签只能出现在版本4以上的协议中,且不能出现在播放列表中 |
14、 |
#Rendition Groups |
展示一套具有相同GROUP-ID值得EXT-X-MEDIA, |
组内的每个成员必须代表可替代的一段相同内容 |
15、 |
#EXT-X-STREAM-INF |
该标签指定一个流,这个流可以绑定在播放介绍中。 |
如绑定编码,带宽值等。 |
16、 |
#EXT-X-I-FRAMES-ONLY |
该标签指定每个媒体段文件中的关键帧,关键帧被编码为不依赖其他帧。 |
不能出现在主播放文件 |
17、 |
#EXT-X-MAP |
该标签指示了如何从每个段文件的包头中获得信息。它应用在每个紧接着的段文件中。 |
|
18、 |
#EXT-X-I-FRAME-STREAM-INF |
该标签指示一个媒体播放列表文件所包含的的关键帧的帧内容介绍。它是独立的,不应用在主播放列表的特定URI中。 |
该标签不能出现在媒体播放列表中。 |
19、 |
#EXT-X-INDEPENDENT-SEGMENTS |
该标签指示所有的媒体段文件都能被解码,它应用在播放列表中的每个段文件中。 |
协议版本6以上才能支持。 |
20、 |
#EXT-X-START |
该标签指示播放列表中能被优先播放的点。默认为客户端在刚开始播放时,必须处在这个点。 |
此关键字在播放列表中只能出现1次。 |