Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support duet format #P1 #P2 #107

Closed
SarutaSan72 opened this issue Oct 17, 2022 · 4 comments
Closed

Support duet format #P1 #P2 #107

SarutaSan72 opened this issue Oct 17, 2022 · 4 comments
Assignees
Milestone

Comments

@SarutaSan72
Copy link
Owner

Duets are recognized when they have this format:

P 1
... (notes for singer 1)
P 2
... (notes for singer 2)
P 3
... (notes for both singers)

The number is a bit mask, bit 0 = P1, bit 1 = P2. (https://yass-along.com/duets/)
Yass checks if singers share exactly the same line, and uses P 3 if possible.

Duets are not recognized when they have that format:

#P1
... (notes for singer 1)
#P2
... (notes for singer 2)

I am not sure if #P3 is used, and if so, does is target P1+P2 or simply P3?

Would it be okay to simply rewrite the tags when loading?
#P1 --> P 1
#P2 --> P 2
#P3 --> ??
#P4 --> ??

Or preserve that format when the files are stored?

@SarutaSan72 SarutaSan72 self-assigned this Oct 17, 2022
@SarutaSan72 SarutaSan72 added this to the 2.4.1 milestone Oct 17, 2022
@SarutaSan72
Copy link
Owner Author

SarutaSan72 commented Oct 18, 2022

Just checked the source code of major karaoke players. USDX + USWP support the original USDX-CMD format (P command + space + bitmask = P 1, P 2, P 3). Vocaluxe and Performous support it too, but also support a tag format (bitmasks #P1, #P2, #P3) that is incompatible with USDX and USWP and is logged as error. Vocaluxe further uses the #DUETSINGERP1 tag (with and without space).

Tags imo represent header information. Restricting tags to a header section allows for quickly loading song info.

So I'll go with this:

  • Autocorrect #P1/#P2/#P3 to P 1 / P 2 / P 3 when loading the song
  • Error detection for incomplete duet tags P 1, P 2, P 3, #DUETSINGERP1 and #DUETSINGERP2

@TeLiXj
Copy link
Collaborator

TeLiXj commented Oct 20, 2022

Hi! We will drop the P3 support in the next version of USWP, in fact we only create duets using P1 and P2 in our website.
And it seems fine to remove # before the P :)

SarutaSan72 added a commit that referenced this issue Dec 21, 2022
* revised open/split/merge tracks (in-memory, no auto-save) #110
* add 'open folder' menu entry #114
* add autocorrect for invalid player tags (#P1 --> P 1) #107
* add 'save as' for single track and multitrack #31
* support third (P 4)+ forth player (P 8), number is bitmask, see https://yass-along.com/duets/
* show matching pages for all tracks, compared to active track
* add missing action shortcuts to menu
* rm interalways store tracks sequentially ('duet-sequential')
* rm proprietary [VERSION] handling in filename and title
* minor: clean code (rm game mode artefacts, rm intellij warnings)
* translate + fix sidebar drag
* fix open/close/reopen issues
* fix undo state (multi table)
* fix multitrack icon in library
* fix repaint issues in editor
* fix play button location for overlapping notes
* fix scale in track display
* fix stall when try going after end
@SarutaSan72
Copy link
Owner Author

Done in release 2.4.1, not released yet

@TeLiXj see my writeup at https://yass-along.com/duets

I have chosen to stay compatible with "P 3", but do not use it when saving data.

Singer 3 is stored as "P 4".
Singer 4 as "P 8".

Implementation on your side should be easy, same holds for the other projects.
There's no need to drop "P 3" support.

Example:

#TITLE:Brother Jacob [MULTI]
#ARTIST:Unknown
#LANGUAGE:Multilingual
#GENRE:Folk
#MP3:Unknown - Brother Jacob.mp3
#COVER:Unknown - Brother Jacob [CO].jpg
#BACKGROUND:Unknown - Brother Jacob [BG].jpg
#BPM:240
#GAP:240
#DUETSINGERP1:GERMAN
#DUETSINGERP2:ENGLISH
#DUETSINGERP3:FRENCH
#DUETSINGERP4:POLISH
P 1
: 0 7 0 Bru
: 9 7 2 der
: 18 7 4  Ja
: 27 7 0 kob,
- 36
: 38 7 0 Bru
: 47 7 2 der
: 56 7 4  Ja
: 65 7 0 kob,
- 74
: 76 7 4 Schläfst
: 85 7 5  du
: 94 16 7  noch?
- 112
: 114 7 4 Schläfst
: 123 7 5  du
: 132 16 7  noch?
- 150
: 152 2 7 Hörst
: 157 2 9  du
: 162 2 7  nicht
: 167 2 5  die
: 172 6 4  Glo
: 181 5 0 cken?
- 188
: 190 2 7 Hörst
: 195 2 9  du
: 200 2 7  nicht
: 205 2 5  die
: 210 6 4  Glo
: 219 5 0 cken?
- 226
: 228 7 0 Ding
: 237 7 -5  dang
: 246 16 0  dong,
- 264
: 266 7 0 ding
: 275 7 -5  dang
: 284 16 0  dong.
P 2
: 76 7 0 Are
: 85 7 2  you
: 94 7 4  slee
: 103 7 0 ping,
- 112
: 114 7 0 Are
: 123 7 2  you
: 132 7 4  slee
: 141 7 0 ping,
- 150
: 152 7 4 Bro
: 161 7 5 ther
: 170 16 7  John?
- 188
: 190 7 4 Bro
: 199 7 5 ther
: 208 16 7  John?
- 226
: 228 2 7 Mor
: 233 2 9 ning
: 238 2 7  bells
: 243 2 5  are
: 248 6 4  ring
: 257 5 0 ing
- 264
: 266 2 7 Mor
: 271 2 9 ning
: 276 2 7  bells
: 281 2 5  are
: 286 6 4  ring
: 295 5 0 ing
- 302
: 304 7 0 Ding
: 313 7 -5  ding
: 322 16 0  dong,
- 340
: 342 7 0 ding
: 351 7 -5  ding
: 360 16 0  dong.
- 378
: 380 7 0 Ding
: 389 7 -5  ding
: 398 16 0  dong,
- 416
: 418 7 0 ding
: 427 7 -5  ding
: 436 16 0  dong
P 4
: 152 7 0 Frè
: 161 7 2 re
: 170 7 4  Ja
: 179 7 0 cque,
- 188
: 190 7 0 Frè
: 199 7 2 re
: 208 7 4  Ja
: 217 7 0 cque,
- 226
: 228 7 4 Dor
: 237 7 5 mez
: 246 16 7  vous,
- 264
: 266 7 4 dor
: 275 7 5 mez
: 284 16 7  vous?
- 302
: 304 2 7 Son
: 309 2 9 nez
: 314 2 7  les
: 319 2 5  ma
: 324 6 4 ti
: 333 5 0 nes?
- 340
: 342 2 7 Son
: 347 2 9 nez
: 352 2 7  les
: 357 2 5  ma
: 362 6 4 ti
: 371 5 0 nes?
- 378
: 380 7 0 Ding
: 389 7 -5  ding
: 398 16 0  dong,
- 416
: 418 7 0 ding
: 427 7 -5  ding
: 436 16 0  dong
P 8
: 228 7 0 Pa
: 237 7 2 nie
: 246 7 4  Ja
: 255 7 0 nie!
- 264
: 266 7 0 Pa
: 275 7 2 nie
: 284 7 4  Ja
: 293 7 0 nie!
- 302
: 304 7 4 Ra
: 313 7 5 no
: 322 16 7  wstań!
- 340
: 342 7 4 Ra
: 351 7 5 no
: 360 16 7  wstań!
- 378
: 380 2 7 Wszys
: 385 2 9 tkie
: 390 2 7  dzwo
: 395 2 5 ny
: 400 6 4  bi
: 409 5 0 ją,
- 416
: 418 2 7 Wszys
: 423 2 9 tkie
: 428 2 7  dzwo
: 433 2 5 ny
: 438 6 4  bi
: 447 5 0 ją,
- 454
: 456 7 0 Bim,
: 465 7 -5  bam,
: 474 16 0  bum,
- 492
: 494 7 0 bim,
: 503 7 -5  bam,
: 512 16 0  bum.
E

@SarutaSan72
Copy link
Owner Author

Just released new version; wish you a happy christmas!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants