def main(unused_argv): if not FLAGS.tfrecord_file: tf.logging.fatal('--tfrecord_file required') return if not FLAGS.output_dir: tf.logging.fatal('--output_dir required') return for note_sequence in note_sequence_io.note_sequence_record_iterator(FLAGS.tfrecord_file): pm = midi_io.sequence_proto_to_pretty_midi(note_sequence) pm.write(os.path.join(FLAGS.output_dir, note_sequence.filename))
def CheckReadWriteMidi(self, filename): """Test writing to a MIDI file and comparing it to the original Sequence.""" source_midi = pretty_midi.PrettyMIDI(filename) sequence_proto = midi_io.midi_to_sequence_proto(source_midi) translated_midi = midi_io.sequence_proto_to_pretty_midi(sequence_proto) # Write the translated midi to a file. with tempfile.NamedTemporaryFile(prefix='MidiIoTest') as temp_file: translated_midi.write(temp_file.name) # Read it back in and compare to source. created_midi = pretty_midi.PrettyMIDI(temp_file.name) created_sequence = midi_io.midi_to_sequence_proto(created_midi) self.CheckPrettyMidiAndSequence(translated_midi, created_sequence)
def CheckReadWriteMidi(self, filename): """Test writing to a MIDI file and comparing it to the original Sequence.""" source_midi = pretty_midi.PrettyMIDI(filename) sequence_proto = midi_io.midi_to_sequence_proto(source_midi) translated_midi = midi_io.sequence_proto_to_pretty_midi(sequence_proto) # Write the translated midi to a file. with tempfile.NamedTemporaryFile(prefix='MidiIoTest') as temp_file: translated_midi.write(temp_file.name) # Read it back in and compare to source. created_midi = pretty_midi.PrettyMIDI(temp_file.name) created_sequence = midi_io.midi_to_sequence_proto(created_midi) self.CheckPrettyMidiAndSequence(translated_midi, created_sequence)
def CheckSequenceToPrettyMidi(self, filename): """Test the translation from Sequence proto to PrettyMIDI.""" source_midi = pretty_midi.PrettyMIDI(filename) sequence_proto = midi_io.midi_to_sequence_proto(source_midi) translated_midi = midi_io.sequence_proto_to_pretty_midi(sequence_proto) self.CheckPrettyMidiAndSequence(translated_midi, sequence_proto)
def CheckSequenceToPrettyMidi(self, filename): """Test the translation from Sequence proto to PrettyMIDI.""" source_midi = pretty_midi.PrettyMIDI(filename) sequence_proto = midi_io.midi_to_sequence_proto(source_midi) translated_midi = midi_io.sequence_proto_to_pretty_midi(sequence_proto) self.CheckPrettyMidiAndSequence(translated_midi, sequence_proto)