UltraStar-Deluxe / format

UltraStar Format Specification
https://usdx.eu/format
MIT License
9 stars 2 forks source link

[Spec] Add #VOCALS and #INSTRUMENTAL #20

Closed achimmihca closed 9 months ago

achimmihca commented 9 months ago

Suggestion

Melody Mania uses two new fields

#VOCALSAUDIO
#INSTRUMENTALAUDIO

to specify separate audio files for vocals and instrumental.

These files are created from audio separation AI model, e.g., Spleeter

I think it makes sense to add these fields to the format.

Note that I suggest to use AUDIO instead of MP3 in the tag name. This emphasizes that also other audio formats (e.g. ogg) are possible.

Use case

It is used in Melody Mania to change vocals volume when singing a song. This way players can decide how much of the original vocals they want to hear.

Further, the vocals audio is used in the Melody Mania song editor to

Extra info/examples/attachments

No response

achimmihca commented 9 months ago

from @bohning

why not use #VOCALS and #INSTRUMENTAL instead of the longer #VOCALAUDIO and #INSTRUMENTALAUDIO

Good question. "Vocals" and "instrumental" probably do imply audio. So there is no video, image, or other stuff that could be confused with these fields.

So yeah, #VOCALS and #INSTRUMENTAL would make sense

I only wanted to keep a reference to the #AUDIO field (although it is called #MP3). But now that I think about it, the AUDIO prefix is probably redundant.

bohning commented 9 months ago

I guess you mean suffix, not prefix, but yes, for me vocals and instrumental imply audio.

Baklap4 commented 9 months ago

Hmmm what are we going to do with all the instrumental songs out there? (there's quite a lot on ultrastar-es) Personally i'm fine with having the instrumental track within the same song-folder but i know some people who rather split things up if they only want the vocal one or the instrumental one...

I'm all for including them both as it'd make for a way better integration than center muting the vocalized song... (current behavior in performous, its not bad, but far from great either...)

As for popularity, most people would want to sing with vocals so they can match their singing to the original songtrack. Far less people are confident enough to do the instrumental versions as what i have experienced in the last decade For this i'd make #MP3 and #VOCALS mandatory whilst #INSTRUMENTAL can be optional

rakuri255 commented 9 months ago

VOCALS makes no sense to me. It not says that it should contain the background sound.

If you have #INSTRUMENTAL + #VOCALS, someone could think that these gets mixed together. Why not just say what it is? Like #AUDIO, #MUSIC or #AUDIOFILE. For Karaoke #INSTRUMENTAL, #KARAOKE or #KARAOKEAUDIO.

We should anyway mark Karaoke as Karaoke. So, then it should be ok to also split the files/folders. Currently it is marked in the txt file name, like "* [Karaoke].txt". So the games should know if the song is Karaoke or not..

bohning commented 9 months ago

Now you got me confused. I would say that the full song is AUDIO, consisting of VOCALS (the singers voice(s)) and INSTRUMENTAL(S). So AUDIO would have the mixed signal of VOCALS and INSTRUMENTALS. In an ideal situation, the karaoke software could handle the mixture of the two on the fly (one player wants to sing real karaoke -> VOCALS: 0%, INSTRUMETAL: 100%, another player wants to sing pure sing-along -> VOCALS: 100%, INSTRUMENTAL: 100% and a third one wants is in between -> VOCALS: 50%, INSTRUMENTAL: 100%). Then the AUDIO would not be needed anymore, but 1. since this is not yet available in software and 2. the (automated) separation of the mixed signal is or may not be perfect, I think all three should be provided - the mixed AUDIO (or #MP3) as has always been the case, the VOCALS and the INSTRUMENTAL track. Or did I understand something wrong?

rakuri255 commented 9 months ago

If we can support all 3, then it should be good.

achimmihca commented 9 months ago

I would say that the full song is AUDIO, consisting of VOCALS (the singers voice(s)) and INSTRUMENTAL(S). So AUDIO would have the mixed signal of VOCALS and INSTRUMENTALS.

Yes, this is exactly what I have in mind.

  1. since this is not yet available in software and 2. the (automated) separation of the mixed signal is or may not be perfect, I think all three should be provided

I agree.

marwin89 commented 9 months ago

Cool we have a consens here too. 🎉 ✅

I've put #VOCALS and #INSTRUMENTAL to the Overview Version spreadsheet mentioned in #31 .

Baklap4 commented 9 months ago

Lets already come up with the description of the specified tags so this doesnt get lost within the issues. Aka i miss the conclusion in a single post :)

marwin89 commented 9 months ago

SUMMARY / FINAL RESULTS 🏁

So here are the final results for this issue.

We add these tags to version 1.1.0:

#AUDIO: Artist - Title of the song.mp3
#VOCALS: Artist - Title of the song [VOC].mp3
#INSTRUMENTALS: Artist - Title of the song [INSTR].mp3

The description in the spec (website) is:

AUDIO

Definies the audio file that contains the whole music in one (consisting of VOCALS (the singers voice(s)) and INSTRUMENTAL(S). This is the new tag for the deprecated #MP3 tag.

VOCALS

Defines the audio file that contains only the vocals of a singers voice. It's the acapella. This comes in handy when some games have the feature to change the volume of a singer while playing a song from 100%-0%. So that you can decide how loud the singer sings along to your own vocals. Needs to be complemented with #INSTRUMENTAL.

INSTRUMENTAL

Defines the audio file that contains only the instruments of a song without the singers voice. This is for real karaoke.

rakuri255 commented 9 months ago

Have #vocals been discussed in connection with several singers (duet)? You could have Vocal_Lead_Male, Vocal_Lead_Femal, Vocal_Background.

bohning commented 9 months ago

Good point. I guess the most consistent would be #VOCALS (for non-duets), and #VOCALSP1/#VOCALSP2 for duets (extensible to any number of singers #VOCALSPx).

rakuri255 commented 9 months ago

@bohning yes that would be good. But this we could also make for #INSTRUMENTALS. AI can separate nearly all instruments. E.g. someone wants to use his own guitar.

marwin89 commented 9 months ago

Have #vocals been discussed in connection with several singers (duet)? You could have Vocal_Lead_Male, Vocal_Lead_Femal, Vocal_Background.

Let's discuss this in another issue. This could be something for v1.x.0 later.

achimmihca commented 9 months ago

someone wants to use his own guitar

I doubt that this is a valid use case. But if we want to consider this, I suggest to allow multiple paramters, similar to #22 and #19 . Example: