Lines Matching refs:Event
125 MSG_TYPE_MISMATCH = 'msg_type does not match event type'
304 def Check (self, event):
305 if event.msg_type in self.events:
313 def Check (self, event):
314 if event.msg_type in (NOTE_ON, NOTE_OFF):
315 if event.note in self.notes:
323 def Check (self, event):
324 if event.msg_type in (NOTE_ON, NOTE_OFF, POLY_KEY_PRESSURE, CONTROL_CHANGE, CHANNEL_PRESSURE, PITCH_BEND):
325 if event.channel in self.channel:
749 def Event (self, event):
750 """Process an event and save any changes in controller values"""
752 if event.msg_type == CONTROL_CHANGE:
753 self.ControlChange(event)
754 elif event.msg_type == CHANNEL_PRESSURE:
755 self.PressureChange(event)
756 elif event.msg_type == PROGRAM_CHANGE:
757 self.ProgramChange(event)
758 elif event.msg_type == PITCH_BEND:
759 self.PitchBendChange(event)
761 def PitchBendChange (self, event):
763 self.pitchbend[event.channel] = event.value
765 def ProgramChange (self, event):
767 self.program[event.channel] = event.program
769 def ControlChange (self, event):
771 controller = event.controller
773 channel = event.channel
774 self.controllers[channel][controller] = event.value
782 elif event.controller == CTRL_RESET_CONTROLLERS:
783 self.ResetControllers[event.channel]
785 def PressureChange (self, event):
787 self.pressure[event.channel] = event.value
796 """Generate an event list based on controller differences."""
846 # search for note-on's in event list
848 event = self[index]
849 if event.msg_type == NOTE_ON:
850 note_off_ticks = event.ticks + event.note_length
859 if (event_to_check.msg_type == NOTE_ON) and (event_to_check.note == event.note):
860 midi_file_logger.debug('Adjusting note length @ %d' % event.ticks)
861 event.note_length = event_to_check.ticks - event.ticks
873 values.Event(self[i])
881 for event in self:
882 if event.ticks >= start:
883 if event.ticks >= end:
885 midi_file_logger.debug('SelectEvent: %s' % event.__str__())
886 selected.append(event)
912 for event in self[start_index:end_index]:
914 if (event.msg_type == CONTROL_CHANGE) and \
915 (event.controller == JET_EVENT_TRIGGER_CLIP) and \
916 ((event.value & 0x40) != 0x40):
919 if (move_meta_events is None) or (event.msg_type != META_EVENT):
920 self.remove(event)
925 event.ticks = move_meta_events
940 for event in self:
941 event.seq = seq
957 for event in self:
958 output.write('%s\n' % event.TimeEventStr(timebase))
960 for event in self:
961 midi_file_logger.debug(event.TimeEventStr(timebase))
1013 stream.Warning('Ignoring data encountered beyond end-of-track meta-event')
1022 # get the event type and process it
1031 # back up so event can process data
1038 # create event type from stream
1039 event = MIDIEvent.ReadFromStream(stream, seq, ticks, msg_type)
1043 self.channel = event.channel
1048 if event.msg_type == NOTE_ON:
1055 if (event.channel == note_on.channel) and (event.note == note_on.note):
1057 stream.Warning(' [%s]: %s' % (stream.timebase.ConvertTicksToStr(event.ticks), event.__str__()))
1058 note_on.note_length = event.ticks - note_on.ticks - 1
1061 event.ticks = note_on.ticks
1065 note_on_list.append(event)
1068 if event.msg_type == NOTE_OFF:
1070 if (event.channel == note_on.channel) and (event.note == note_on.note):
1071 note_on.note_length = event.ticks - note_on.ticks
1072 note_on.note_off_velocity = event.velocity
1077 # stream.Warning(' [%s]: %s' % (stream.timebase.ConvertTicksToStr(event.ticks), event.__str__()))
1080 elif event.msg_type == META_EVENT and event.meta_type == META_EVENT_END_OF_TRACK:
1081 self.end_of_track = event.ticks
1084 elif event.msg_type == META_EVENT and event.meta_type == META_EVENT_SEQUENCE_TRACK_NAME:
1085 self.name = array.array('B', event.msg).tostring()
1087 # append event to event list
1089 self.events.append(event)
1105 # check for missing end-of-track meta-event
1108 stream.Warning('End of track encountered with no end-of-track meta-event')
1121 # save a copy of the event list so we can restore it
1130 # if note-on event, create a note-off event
1131 event = self.events[index]
1133 if event.msg_type == NOTE_ON:
1134 note_off = NoteOffEvent(event.ticks + event.note_length, index, event.channel, event.note, event.note_off_velocity)
1150 for event in self.events:
1152 # write event
1153 event.WriteToStream(stream, self, filters)
1158 # write the end-of-track meta-event
1174 for event in self.events.SelectEvents(start - quantize, start):
1175 midi_file_logger.debug('Trim: Moving event %s to %d' % (event.__str__(), start))
1176 event.ticks = start
1179 for event in self.events.SelectEvents(end - quantize, end):
1180 midi_file_logger.debug('Trim: Moving event %s to %d' % (event.__str__(), end))
1181 event.ticks = end
1186 # find first event inside trim
1199 midi_file_logger.debug('Trim: deleting events up to event %d' % start_event)
1212 midi_file_logger.debug('Trim: trimming section starting at event %d' % end_event)
1216 for event in self.events:
1217 if event.msg_type == NOTE_ON:
1218 if (event.ticks + event.note_length) > end:
1219 midi_file_logger.debug('Trim: trimming note that extends past end %s' % event.TimeEventStr(self.stream.timebase))
1220 event.note_length = end - event.ticks
1221 if event.note_length <= 0:
1230 for event in self.events:
1231 if event.ticks > start:
1232 event.ticks -= start
1234 event.ticks = 0
1311 # determine time of last event
1361 for event in self.tracks.events:
1362 if event.msg_type in MIDI_MESSAGES:
1397 midi_file_logger.error('Dumping from last good event:')