def velocity_range_from_sequence(ns): """Derive a VelocityRange proto from a NoteSequence.""" velocities = [note.velocity for note in ns.notes] velocity_max = np.max(velocities) if velocities else 0 velocity_min = np.min(velocities) if velocities else 0 velocity_range = music_pb2.VelocityRange(min=velocity_min, max=velocity_max) return velocity_range
def _FillExample(self, sequence, wav_data, filename): velocity_range = music_pb2.VelocityRange(min=0, max=127) feature_dict = { 'id': tf.train.Feature(bytes_list=tf.train.BytesList( value=[filename.encode('utf-8')])), 'sequence': tf.train.Feature(bytes_list=tf.train.BytesList( value=[sequence.SerializeToString()])), 'audio': tf.train.Feature(bytes_list=tf.train.BytesList(value=[wav_data])), 'velocity_range': tf.train.Feature(bytes_list=tf.train.BytesList( value=[velocity_range.SerializeToString()])), } return tf.train.Example(features=tf.train.Features( feature=feature_dict))