206
|
1 from Timeline import *
|
|
2 <<<<<<< TheShow.py
|
|
3 from Submaster import Submasters
|
|
4 from Show import *
|
|
5 =======
|
|
6 from Submaster import Submasters, sub_maxes
|
|
7
|
|
8 class Show:
|
|
9 def __init__(self, timelines, submasters):
|
|
10 self.timelines = dict([(timeline.name, timeline)
|
|
11 for timeline in timelines])
|
|
12 self.submasters = submasters
|
|
13 self.current_timeline = None
|
|
14 self.current_time = 0
|
|
15 try:
|
|
16 self.current_timeline = timelines[0]
|
|
17 except ValueError:
|
|
18 pass
|
|
19 def calc_active_submaster(self):
|
|
20 "get levels from the current timeline at the current time"
|
|
21 if not (self.current_timeline or self.current_time):
|
|
22 return {}
|
|
23 tl = self.current_timeline
|
|
24 tl.set_time(self.current_time)
|
|
25 levels = tl.get_levels()
|
|
26 scaledsubs = [self.submasters.get_sub_by_name(sub) * level \
|
|
27 for sub, level in levels.items()]
|
|
28 maxes = sub_maxes(*scaledsubs)
|
|
29
|
|
30 return maxes
|
|
31 def set_timeline(self, name):
|
|
32 "select a timeline"
|
|
33 self.current_timeline = self.timelines.get(name)
|
|
34 self.set_time(0)
|
|
35 if not self.current_timeline:
|
|
36 print "Show: '%s' is not the same of a timeline."
|
|
37 def set_time(self, time):
|
|
38 "set time of current timeline"
|
|
39 self.current_time = time
|
|
40 self.current_timeline.set_time(time)
|
|
41 def get_timelines(self):
|
|
42 "Get names of all timelines"
|
|
43 return self.timelines.keys()
|
|
44
|
|
45 # this is the default blender
|
|
46 linear = LinearBlender()
|
|
47 def T(time, level, **kw):
|
|
48 """This used to be a synonym for TimedEvent:
|
|
49
|
|
50 T = TimedEvent
|
|
51
|
|
52 It now acts in a similar way, except that it will fill in a default
|
|
53 blender if you don't. The default blender is a LinearBlender. It also
|
|
54 sets frame to MISSING so the track can fill it in."""
|
|
55 if 'blender' not in kw:
|
|
56 global linear
|
|
57 kw['blender'] = linear
|
|
58
|
|
59 return TimedEvent(time, level=level, frame=MISSING, **kw)
|
|
60 >>>>>>> 1.2
|
|
61
|
|
62 quad = ExponentialBlender(2)
|
|
63 invquad = ExponentialBlender(0.5)
|
|
64 smoove = SmoothBlender()
|
|
65 strobe = Strobe(ontime=0.25, offtime=0.25)
|
|
66 lightningstrobe = Strobe(ontime=0.1, offtime=0.15, onlevel=1, offlevel=0.02)
|
|
67 changeatend = InstantEnd()
|
|
68 changeatstart = InstantStart()
|
|
69 sine_7s = Sine(7)
|
|
70 sine_5s = Sine(5)
|
|
71 randomstrobe = RandomStrobe(1000, 0.1, 1)
|
|
72
|
|
73 def make_lighting_track(ltime, sub='upfill'):
|
|
74 ltime -= 0.1
|
|
75 return TimelineTrack('lightning',
|
|
76 T(ltime - 1.6, 0, blender=changeatend),
|
|
77 T(ltime - 1.5, 1, blender=lightningstrobe),
|
|
78 T(ltime - 0.5, 0),
|
|
79 default_frame=sub)
|
|
80
|
|
81 # 01 207.046
|
|
82 song01 = Timeline('song01', [
|
|
83 TimelineTrack('main fade',
|
|
84 T(0, 0),
|
|
85 T(2, 1),
|
|
86 T(207.046, 1),
|
|
87 T(217, 1),
|
|
88 T(222, 0),
|
|
89 default_frame='song01'),
|
|
90 TimelineTrack('frontwhite',
|
|
91 T(-2, 0),
|
|
92 T(0, 0),
|
|
93 T(200.046, 0),
|
|
94 T(204, 1),
|
|
95 T(217, 1),
|
|
96 T(222, 0),
|
|
97 default_frame='frontwhite')
|
|
98 ])
|
|
99
|
|
100 # 02 151.327
|
|
101 song02 = Timeline('song02', translate_tracks_from_file('song02'))
|
|
102
|
|
103 # 03 152.946
|
|
104 song03 = Timeline('song03', translate_tracks_from_file('song03'))
|
|
105
|
|
106 # 04 255.529
|
|
107 song04 = Timeline('song04', [
|
|
108 TimelineTrack('main fade',
|
|
109 T(-2, 0),
|
|
110 T(8, 1),
|
|
111 T(255.529, 1),
|
|
112 T(265, 1),
|
|
113 T(270, 0),
|
|
114 default_frame='song04'),
|
|
115 TimelineTrack('frontwhite',
|
|
116 T(244, 0),
|
|
117 T(248, 1),
|
|
118 T(265.5, 1),
|
|
119 T(270.5, 0),
|
|
120 default_frame='frontwhite'),
|
|
121 ])
|
|
122
|
|
123 # 05 241.162
|
|
124 song05 = Timeline('song05', [
|
|
125 # TimelineTrack('main fade',
|
|
126 # T(-2, 0),
|
|
127 # T(0, 1),
|
|
128 # T(241.162, 1),
|
|
129 # T(251, 1),
|
|
130 # T(256, 0),
|
|
131 # default_frame='song05'),
|
|
132 ])
|
|
133 # 226-230 DELETED!!!!!
|
|
134
|
|
135 # 06 145.005
|
|
136 song06 = Timeline('song06', translate_tracks_from_file('song06'))
|
|
137
|
|
138 # 07 461.923
|
|
139 # song07main = TimelineTrack('main fade',
|
|
140 # T(-2, 0),
|
|
141 # T(0, 0.6),
|
|
142 # T(461.923, 0.6),
|
|
143 # T(471, 1),
|
|
144 # T(476, 0),
|
|
145 # default_frame='song07')
|
|
146
|
|
147 song07 = Timeline('song07', translate_tracks_from_file('song07'))
|
|
148
|
|
149 # 08 200.097
|
|
150 #song08main = TimelineTrack('main fade',
|
|
151 #T(-2, 0),
|
|
152 #T(0, 0.6),
|
|
153 #T(200.097, 0.6),
|
|
154 ##T(210, 1),
|
|
155 #T(215, 0),
|
|
156 #default_frame='song08')
|
|
157
|
|
158 # song08 = Timeline('song08',
|
|
159 # [song08main,
|
|
160 # translate_tracks_from_file('song08')])
|
|
161 song08 = Timeline('song08', [])
|
|
162
|
|
163 song09 = Timeline('song09', translate_tracks_from_file('song09'))
|
|
164 song10 = Timeline('song10', translate_tracks_from_file('song10'))
|
|
165 song11 = Timeline('song11', translate_tracks_from_file('song11'))
|
|
166 song12 = Timeline('song12', translate_tracks_from_file('song12'))
|
|
167 song13 = Timeline('song13', translate_tracks_from_file('song13'))
|
|
168 song14 = Timeline('song14', translate_tracks_from_file('song14'))
|
|
169 song15 = Timeline('song15', translate_tracks_from_file('song15'))
|
|
170 song16 = Timeline('song16', translate_tracks_from_file('song16'))
|
|
171
|
|
172 flashstart = 184
|
|
173 flashend = 204
|
|
174
|
|
175 song17 = Timeline('song17', translate_tracks_from_file('song17') +
|
|
176 [
|
|
177 TimelineTrack('kicking flashes',
|
|
178 T(flashstart, 0, blender=RandomStrobe()),
|
|
179 T(flashend, 0), default_frame='red'),
|
|
180 TimelineTrack('kicking flashes',
|
|
181 T(flashstart, 0, blender=RandomStrobe()),
|
|
182 T(flashend, 0), default_frame='frontwhite')
|
|
183 ])
|
|
184
|
|
185 song18 = Timeline('song18', [])
|
|
186 # translate_tracks_from_file('song18') + [
|
|
187 # make_lighting_track(12),
|
|
188 # ])
|
|
189
|
|
190 # 19 324.675
|
|
191 song19 = Timeline('song19', [
|
|
192 # TimelineTrack('main fade',
|
|
193 # T(-2, 0),
|
|
194 # T(0, 1),
|
|
195 # T(324.675, 1),
|
|
196 # T(334, 1),
|
|
197 # T(339, 0),
|
|
198 # default_frame='song19'),
|
|
199 TimelineTrack('bl',
|
|
200 T(-0.01, 0),
|
|
201 T(0, 1),
|
|
202 T(80, 1),
|
|
203 T(80.01, 0),
|
|
204 T(300, 0),
|
|
205 T(300.01, 1),
|
|
206 T(333, 1),
|
|
207 T(333.01, 0),
|
|
208 default_frame='blacklight'),
|
|
209 TimelineTrack('sill',
|
|
210 T(-0.01, 0),
|
|
211 T(0, 0.4),
|
|
212 T(74, 0.4),
|
|
213 T(76, 0),
|
|
214 T(197, 0),
|
|
215 T(197.01, 1),
|
|
216 T(201, 1),
|
|
217 T(202, 0),
|
|
218 default_frame='sill'),
|
|
219 TimelineTrack('frontwhite',
|
|
220 T(0, 0),
|
|
221 T(46, 0),
|
|
222 T(50, 0.35),
|
|
223 T(74, 0.35),
|
|
224 T(76, 0),
|
|
225 T(79, 0),
|
|
226 T(82, 0.5),
|
|
227 T(152, 0.5),
|
|
228 T(154, 0.7, blender=changeatend),
|
|
229 T(197, 0),
|
|
230 T(200, 0),
|
|
231 T(202, 0.6),
|
|
232 T(263, 0.6),
|
|
233 T(265, 0.8),
|
|
234 T(324, 0.8),
|
|
235 T(328, 1.0),
|
|
236 T(334.7, 1.0),
|
|
237 T(339.7, 0.0),
|
|
238 default_frame='frontwhite'),
|
|
239 TimelineTrack('house',
|
|
240 T(0, 0),
|
|
241 T(263, 0),
|
|
242 T(273, 0.5),
|
|
243 T(320, 0.5),
|
|
244 T(325, 0),
|
|
245 default_frame='house'),
|
|
246 TimelineTrack('fx blue',
|
|
247 T(-2, 0),
|
|
248 T(0, 0.5),
|
|
249 T(50, 0.5),
|
|
250 T(70, 0),
|
|
251 default_frame='blue'),
|
|
252 make_lighting_track(5),
|
|
253 make_lighting_track(20),
|
|
254 make_lighting_track(26),
|
|
255 make_lighting_track(31),
|
|
256 make_lighting_track(36),
|
|
257 # make_lighting_track(75), # problems
|
|
258 make_lighting_track(88),
|
|
259 make_lighting_track(92),
|
|
260 # make_lighting_track(136), # problems
|
|
261 make_lighting_track(140.511),
|
|
262 make_lighting_track(168.568),
|
|
263 make_lighting_track(176.875),
|
|
264 make_lighting_track(219.219),
|
|
265 make_lighting_track(265.169),
|
|
266 make_lighting_track(268.277),
|
|
267 make_lighting_track(271.987),
|
|
268 make_lighting_track(275.566),
|
|
269 make_lighting_track(279.066),
|
|
270 make_lighting_track(282.54),
|
|
271 make_lighting_track(286.145),
|
|
272 make_lighting_track(293.721),
|
|
273 make_lighting_track(300.408),
|
|
274 make_lighting_track(303.987),
|
|
275
|
|
276 ])
|
|
277
|
|
278 randomstrobetest = Timeline('strobing', [
|
|
279 TimelineTrack('whatever1',
|
|
280 T(0, 1, blender=RandomStrobe()),
|
|
281 T(600, 1), default_frame='red'),
|
|
282 TimelineTrack('whatever2',
|
|
283 T(0, 1, blender=RandomStrobe()),
|
|
284 T(600, 1), default_frame='blue'),
|
|
285 TimelineTrack('whatever3',
|
|
286 T(0, 1, blender=RandomStrobe()),
|
|
287 T(600, 1), default_frame='green')
|
|
288 ])
|
|
289
|
|
290 show = Show([
|
|
291 song01,
|
|
292 song02,
|
|
293 song03,
|
|
294 song04,
|
|
295 song05,
|
|
296 song06,
|
|
297 song07,
|
|
298 song08,
|
|
299 song09,
|
|
300 song10,
|
|
301 song11,
|
|
302 song12,
|
|
303 song13,
|
|
304 song14,
|
|
305 song15,
|
|
306 song16,
|
|
307 song17,
|
|
308 song18,
|
|
309 song19,
|
|
310 randomstrobetest,
|
|
311 ], Submasters())
|