-
Notifications
You must be signed in to change notification settings - Fork 0
/
init.go
81 lines (77 loc) · 1.84 KB
/
init.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
package hls
import (
"strings"
)
func init() {
m0 := Master{}
m0.Decode(strings.NewReader(sampleMaster))
m1 := Media{}
m1.Decode(strings.NewReader(sampleMedia))
m2 := Media{}
m2.Decode(strings.NewReader(sampleFrag))
}
var sampleMedia = `
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-PLAYLIST-TYPE:EVENT
#EXT-X-START:TIME-OFFSET=25,PRECISE=YES
#EXT-X-TARGETDURATION:10
#EXT-X-MEDIA-SEQUENCE:1
#EXT-X-DISCONTINUITY-SEQUENCE:2
#EXTINF:10.0,
ad0.ts
#EXTINF:8.0,
ad1.ts?m=142
#EXT-X-DISCONTINUITY
#EXT-X-PROGRAM-DATE-TIME:2021-01-11T07:59:41.005Z
#EXTINF:10.0,
movieA.ts
#EXTINF:10.0,
movieB.ts
#EXT-X-ENDLIST
`
var sampleMaster = `
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-INDEPENDENT-SEGMENTS
#EXT-X-STREAM-INF:BANDWIDTH=1111,AVERAGE-BANDWIDTH=1000,RESOLUTION=1x1,FRAME-RATE=29.970,CODECS="avc1.4D401F,mp4a.40.2"
m1.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=2222,AVERAGE-BANDWIDTH=2000,RESOLUTION=2x2,FRAME-RATE=29.970,CODECS="avc1.4D401F,mp4a.40.2"
m2.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=3333,AVERAGE-BANDWIDTH=3000,RESOLUTION=3x3,FRAME-RATE=29.970,CODECS="avc1.4D401F,mp4a.40.2"
m3.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=4444,AVERAGE-BANDWIDTH=4000,RESOLUTION=4x4,FRAME-RATE=29.970,CODECS="avc1.4D401E,mp4a.40.2"
m4.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=5555,AVERAGE-BANDWIDTH=5000,RESOLUTION=5x5,FRAME-RATE=29.970,CODECS="avc1.4D401E,mp4a.40.2"
m5.m3u8
#EXT-X-STREAM-INF:BANDWIDTH=6666,AVERAGE-BANDWIDTH=6000,RESOLUTION=6x6,FRAME-RATE=29.970,CODECS="avc1.4D400D,mp4a.40.2"
m6.m3u8
`
var sampleFrag = `
#EXTM3U
#EXT-X-VERSION:7
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PLAYLIST-TYPE:VOD
#EXT-X-MAP:URI="init.mp4"
#EXTINF:6.000000,
0.m4s
#EXTINF:6.000000,
1.m4s
#EXTINF:6.000000,
2.m4s
#EXTINF:6.000000,
3.m4s
#EXTINF:6.000000,
4.m4s
#EXTINF:6.000000,
5.m4s
#EXTINF:6.000000,
6.m4s
#EXTINF:6.000000,
7.m4s
#EXTINF:4.208333,
8.m4s
#EXT-X-ENDLIST
`