utsu icon indicating copy to clipboard operation
utsu copied to clipboard

Import MIDI

Open quicktypes opened this issue 4 years ago • 7 comments

While this is technically not an issue, I realized that Utsu doesn't have an import MIDI feature. Do you mind adding that to a future update if not the next one?

quicktypes avatar Nov 28 '20 20:11 quicktypes

Sure! It wasn't on my task list before but it makes sense as a feature so I'll add it.

titinko avatar Nov 28 '20 23:11 titinko

Does UTSU accept voicebanks in other types of formats like Flac or MP3? I believe it would be an interesting addition, if this option is not yet available ...

pseudo-producer avatar Dec 01 '20 06:12 pseudo-producer

@titinko , I have a very rough midi parser that understand the basic to create a utau file. The workflow could be: 1.- Select the midi file 2.- Select the track (if more that one is present) 3.- Create a new song 4.- Set the time, using Set Tempo Meta message as guide 5.- Create each note, using the information available

Using musescore, I noticed than the lyrics interface is very, very good. The format of musescore is not difficult to parse (all XML), and the note and lyrics are stored in the same object. It could be a very cool way to import massive lyrics in utsu.

Greetings!

clbustos avatar Jan 25 '21 03:01 clbustos

Not too familiar with MIDI, but in the code opening a MIDI file would mean converting it to a Song object similar to what Ust12Reader and Ust20Reader do now. That workflow sounds good to me, although in step 2 it's probably fine to just default to the first track.

In terms of UI, either MIDI files could directly be added as a supported format when opening a Song, or there could be a new "Import MIDI file..." item in the File menu.

titinko avatar Jan 27 '21 04:01 titinko

Not too familiar with MIDI, but in the code opening a MIDI file would mean converting it to a Song object similar to what Ust12Reader and Ust20Reader do now.

So, the MIDI reader should be on com.utsusynth.utsu.files.song package. Sounds fine. MIDI is fairly complex as format, so I need an independent package to manage the related classes. Namespace com.utsusynth.utsu.common.midi should be ok, @titinko ?

That workflow sounds good to me, although in step 2 it's probably fine to just default to the first track.

I like the idea of select track like UTAU does. It would be fairly simple to implement, anyway. No dialog is necessary if only one track is available.

In terms of UI, either MIDI files could directly be added as a supported format when opening a Song, or there could be a new "Import MIDI file..." item in the File menu.

Later should be clearer for users, I think.

clbustos avatar Jan 28 '21 04:01 clbustos

Can you use com.utsusynth.utsu.files.song.midi for a namespace?

Any small dialogs can be placed inside com.utsusynth.utsu.common.dialog.

titinko avatar Jan 28 '21 04:01 titinko

Can you use com.utsusynth.utsu.files.song.midi for a namespace?

Sounds fine.

Any small dialogs can be placed inside com.utsusynth.utsu.common.dialog.

Perfect.

clbustos avatar Jan 28 '21 04:01 clbustos