index.html
5.56 KB
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
<!DOCTYPE html>
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Playlist Switching Simulator</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="css/normalize.min.css">
<link rel="stylesheet" href="css/main.css">
<link rel="stylesheet" href="../../node_modules/video.js/dist/video-js/video-js.css">
<script src="js/vendor/modernizr-2.6.2.min.js"></script>
</head>
<body>
<!--[if lt IE 7]>
<p class="chromeframe">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">activate Google Chrome Frame</a> to improve your experience.</p>
<![endif]-->
<div class="header-container">
<header class="wrapper clearfix">
<h1 class="title">Playlist Switching Simulator</h1>
</header>
</div>
<div class="main-container">
<div class="main wrapper clearfix">
<article>
<header>
<p>
You can use this page to visualize the behavior of the
playlist switcher under different network conditions. It
can helpful to understand how tweaks to the switching
logic will affect playback.
</p>
<p>
Flash security restrictions prevent this page from running
over the file protocol. Run <code>grunt connect</code> and
then <a href="http://localhost:9999/test/switcher">reload.</a>
</p>
</header>
<section>
<h2>Timeline</h2>
<p class=timeline>Simulation results will show up here</p>
<button id=run-simulation type=submit>Run Simulation</button>
</section>
<section>
<h2>Parameters</h2>
<form id=parameters>
<ol class=network-timeline>
<li>
<label>
After <input name=time0 class=time type=number value=0 min=0> seconds,
</label>
<label>
the link capacity is <input name=bandwidth0 class=bandwidth type=number value=921600> bits per second
</label>
</li>
<li>
<label>
After <input name=time1 class=time type=number value=150 min=0> seconds,
</label>
<label>
the link capacity is <input name=bandwidth1 class=bandwidth type=number value=450560> bits per second
</label>
</li>
<li>
<label>
After <input name=time2 class=time type=number value=600 min=0> seconds,
</label>
<label>
the link capacity is <input name=bandwidth2 class=bandwidth type=number value=1843200> bits per second
</label>
</li>
</ol>
<p>
You can simulate more complex network conditions by
changing the bandwidth during the run. Start a new time
period and then define its starting time and link
capacity.
<button type=button class=add-time-period>Add time period</button>
</p>
<p>
If you've created a complex scenario you'd like to retry
later, run the simulation and then save the URL of this
page. All of the network conditions you specify are
saved into the URL fragment after the results of a
simulation run are displayed.
</p>
The video is available at
<ul>
<li><input class=bitrate type=number min=1 value=312000> bits per second</li>
<li><input class=bitrate type=number min=1 value=524000> bits per second</li>
<li><input class=bitrate type=number min=1 value=1296000> bits per second</li>
<li><input class=bitrate type=number min=1 value=2125000> bits per second</li>
<li><input class=bitrate type=number min=1 value=3125000> bits per second</li>
</ul>
</form>
</section>
</article>
</div> <!-- #main -->
</div> <!-- #main-container -->
<div class="footer-container">
<footer class="wrapper">
<h3>videojs-contrib-hls</h3>
</footer>
</div>
<div id=fixture></div>
<script src="../../node_modules/sinon/lib/sinon.js"></script>
<script src="../../node_modules/sinon/lib/sinon/util/event.js"></script>
<script src="../../node_modules/sinon/lib/sinon/util/fake_xml_http_request.js"></script>
<script src="../../node_modules/sinon/lib/sinon/util/xhr_ie.js"></script>
<script src="../../node_modules/sinon/lib/sinon/util/fake_timers.js"></script>
<script src="js/vendor/d3.min.js"></script>
<script src="../../node_modules/video.js/dist/video-js/video.js"></script>
<script src="../../node_modules/videojs-contrib-media-sources/src/videojs-media-sources.js"></script>
<script src="../../src/videojs-hls.js"></script>
<script src="../../src/xhr.js"></script>
<script src="../../src/stream.js"></script>
<script src="../../src/m3u8/m3u8-parser.js"></script>
<script src="../../src/playlist-loader.js"></script>
<script src="js/switcher.js"></script>
</body>
</html>