|
1 <!DOCTYPE html> |
|
2 <html lang="en"> |
|
3 <head> |
|
4 <meta charset="utf-8"> |
|
5 <meta name="viewport" content="width=device-width,initial-scale=1"> |
|
6 <meta name="description" content=""> |
|
7 <meta name="author" content="I.R.I"> |
|
8 <link rel="shortcut icon" href="/img/favicon.ico"> |
|
9 |
|
10 <title>AnnotsRoll</title> |
|
11 |
|
12 <!-- Custom styles for this template --> |
|
13 <link href="/css/annotviz.css" rel="stylesheet"> |
|
14 </head> |
|
15 |
|
16 <body> |
|
17 <h1>Piano Roll vertical</h1> |
|
18 <noscript>You must enable JavaScript</noscript> |
|
19 <div id="canvasContainer"></div> |
|
20 <p> |
|
21 <a href="#" onclick="stop(); return false;">stop intervals</a> - |
|
22 <a href="#" onclick="start(); return false;">start intervals</a> - |
|
23 temps écoulé : <span id="timeStarted"></span> |
|
24 </p> |
|
25 <!--pre id="log"></pre--> |
|
26 <script src="/js/libs-annotviz.js"></script> |
|
27 <script src="/js/annotviz.js"></script> |
|
28 <script> |
|
29 var pianorollChannel = 'PIANOROLL'; |
|
30 var annotationChannel = 'ANNOT'; |
|
31 var eventCode = 'test_1'; |
|
32 var wsUri; |
|
33 if (window.location.protocol === 'file:') { |
|
34 wsUri = 'ws://127.0.0.1:8090/broadcast'; |
|
35 } |
|
36 else { |
|
37 wsUri = 'ws://' + window.location.hostname + ':8090/broadcast'; |
|
38 } |
|
39 wsUriPianoroll = wsUri + '?channel=' + pianorollChannel + '&event_code=' + eventCode; |
|
40 wsUriAnnotation = wsUri + '?channel=' + annotationChannel + '&event_code=' + eventCode; |
|
41 |
|
42 |
|
43 |
|
44 var logger = new annotviz.ConsoleLogger(true); |
|
45 |
|
46 var doubleroll = new annotviz.DoubleRoll({ |
|
47 logger: logger, |
|
48 externalRefresh: true, |
|
49 ws: new annotviz.WsWrapper(wsUriPianoroll, logger), |
|
50 orientation: 'vertical', |
|
51 sceneHeight: 1080, |
|
52 pianorolls : [ |
|
53 { |
|
54 height: 435, |
|
55 timeWidth: 60, |
|
56 lineInterval: 5000, |
|
57 noteHeight: undefined |
|
58 }, |
|
59 ] |
|
60 }); |
|
61 |
|
62 |
|
63 var annotsroll = new annotviz.AnnotsRoll({ |
|
64 logger: logger, |
|
65 externalRefresh: true, |
|
66 ws: new annotviz.WsWrapper(wsUriAnnotation, logger), |
|
67 parentContainer: doubleroll.stage, |
|
68 xInit: 1920 - 435 - 300, |
|
69 yInit: 1080, |
|
70 width: 1920, |
|
71 height: 1080, |
|
72 widthRoll: 300, |
|
73 framerate: doubleroll.framerate, |
|
74 pixelsPerSecond: Math.floor(1920 / 60), |
|
75 annotColors: [{ts: 0, colors: {'ntm' : '#cdc83f'}}], |
|
76 }); |
|
77 |
|
78 var refreshInterval; |
|
79 |
|
80 function stop() { |
|
81 doubleroll.stop(); |
|
82 annotsroll.stop(); |
|
83 window.clearInterval(refreshInterval); |
|
84 } |
|
85 function start() { |
|
86 doubleroll.start(); |
|
87 annotsroll.start(); |
|
88 refreshInterval = setInterval(function() { doubleroll.refresh(); annotsroll.refresh(); }, 1000/doubleroll.framerate); |
|
89 } |
|
90 |
|
91 window.onload = function() { |
|
92 doubleroll.init(); |
|
93 annotsroll.init(); |
|
94 start(); |
|
95 } |
|
96 |
|
97 |
|
98 var sessionJson = |
|
99 { |
|
100 "categories": [ |
|
101 { |
|
102 "color": "rgb(205,200,63)", |
|
103 "subcategories": [ |
|
104 { |
|
105 "color": "rgb(205,200,63)", |
|
106 "code": "ntm", |
|
107 "full_label": "sous-catégorie 1-1", |
|
108 "label": "Batterie" |
|
109 }, |
|
110 { |
|
111 "color": "rgb(205,200,63)", |
|
112 "code": "iam", |
|
113 "full_label": "sous-catégorie 1-2", |
|
114 "label": "Clavier" |
|
115 }, |
|
116 { |
|
117 "color": "rgb(205,200,63)", |
|
118 "code": "hip", |
|
119 "full_label": "sous-catégorie 1-3", |
|
120 "label": "Guitare" |
|
121 }, |
|
122 { |
|
123 "color": "rgb(205,200,63)", |
|
124 "code": "hop", |
|
125 "full_label": "sous-catégorie 1-4", |
|
126 "label": "Trombone" |
|
127 } |
|
128 ], |
|
129 "full_label": "Liste des instruments disponibles", |
|
130 "label": "Instruments" |
|
131 }, |
|
132 { |
|
133 "color": "rgb(222,139,83)", |
|
134 "subcategories": [ |
|
135 { |
|
136 "color": "rgb(222,139,83)", |
|
137 "code": "rock", |
|
138 "full_label": "sous-catégorie 2-1", |
|
139 "label": "Accélération" |
|
140 }, |
|
141 { |
|
142 "color": "rgb(222,139,83)", |
|
143 "code": "rap", |
|
144 "full_label": "sous-catégorie 2-2", |
|
145 "label": "Décélération" |
|
146 }, |
|
147 { |
|
148 "color": "rgb(222,139,83)", |
|
149 "code": "classic", |
|
150 "full_label": "sous-catégorie 2-3", |
|
151 "label": "Pause" |
|
152 } |
|
153 ], |
|
154 "full_label": "catégorie 2", |
|
155 "label": "Rythmique" |
|
156 }, |
|
157 { |
|
158 "color": "rgb(197,163,202)", |
|
159 "subcategories": [ |
|
160 { |
|
161 "color": "rgb(197,163,202)", |
|
162 "code": "drums", |
|
163 "full_label": "sous-catégorie 3-1", |
|
164 "label": "sub cat 3-1" |
|
165 }, |
|
166 { |
|
167 "color": "rgb(197,163,202)", |
|
168 "code": "guitar", |
|
169 "full_label": "sous-catégorie 3-2", |
|
170 "label": "sub cat 3-2" |
|
171 } |
|
172 ], |
|
173 "full_label": "catégorie 3", |
|
174 "label": "Une 3ème cat" |
|
175 }, |
|
176 { |
|
177 "color": "rgb(121,187,146)", |
|
178 "code": "bass", |
|
179 "full_label": "catégorie 4", |
|
180 "label": "Annot'direct" |
|
181 } |
|
182 ] |
|
183 }; |
|
184 </script> |
|
185 </body> |
|
186 </html> |