UltraStar-Deluxe / USDX

The free and open source karaoke singing game UltraStar Deluxe, inspired by Sony SingStarâ„¢
https://usdx.eu
GNU General Public License v2.0
867 stars 162 forks source link

[Bug] Editor plays beat clicks on V if P was used to play the line without video before. #169

Open bohning opened 7 years ago

bohning commented 7 years ago

Using V in the editor plays the current line along with the music and the video, but without beat clicks. If I then press P to play the line with beat clicks (and without video), then any subsequent pressing of V will also play the beat clicks.

RattleSN4K3 commented 7 years ago

It is by design IIRC. Once P is pressed, Clicks are enabled. V will be similar to P but with the additional Video preview including such ticks (otherwise previewing video with clicks would always imply having to press P before). Clicks can be disabled by using Space or clicking on a note.

bohning commented 7 years ago

Ah, thanks for the clarification. Hitting the space bar does the trick... Nice!

basisbit commented 7 years ago

yes, this is a bit confusing and we should either improve documentation or change the behavior. @bohning how should the key-press combination be changed in your opinion? open for suggestions

bohning commented 7 years ago

@basisbit Good question. I think enabling/disabling click sounds with Space is a good idea, both for P and for V. So if you want clicks, enable it by Space before hitting P or V. If you don't want clicks anymore, disable them by again pressing Space. Of course it would then be helpful to have a switch displayed on the screen (that could even be clickable to enable/disable the click sounds). However, this sounds like quite a bit of implementation effort, so for now, I think it is okay as it is if the Space-feature is documented. I was just confused that having pressed P also triggered beat clicks for V.

basisbit commented 7 years ago

so, I was editing some song files today and only needed V with the clicking enabled. Thus I'd like to set Click := true when V is pressed and video starts playing. Would that be ok for you?

RattleSN4K3 commented 7 years ago

As this really depends on what one are doing with the video, or what someone prefers, forcing either mode isn't really suited well. If bohning or you, basisbit, prefer one way, it might not be the case for others. I personally use Clicks for syncing lyrics (and less video) but IIRC I don't mind having it enabled. I'd say we should go the way it currently is, and/or enable/disable click depending on how V is pressed (Ctrl+V --> Click, V --> no Click; or the other way 'round).

Additonally, the state of Click could be stored globally in order to keep the flag accross editing several files (and not having to enable/disable click everytime).

The best way would be having an UI option either only for displaying purpose or also being toggleable.

basisbit commented 7 years ago

shash... not sure if you are making a joke or not @RattleSN4K3 . Definitely not yet another ui option. Ctrl+V is for pasting copied content - also in the editor. Click is mostly important to check that your syllable timings are correct. V is mostly helpful as a final check and also for checking that audio, lyrics and video are lip-sync. So having the clicking would not be too much distracting. Let's put it in, and have the users decide if they like it or not. Edit: the space bar key is already used for playing a single syllable, so it can't or should not be used for toggling Clicking on or off.

RattleSN4K3 commented 7 years ago

so it can't or should not be used for toggling Clicking on or off.

It currently is used for disabling Click. [P] is used for enabling Click. Make it stored globally, and everyone is happy.

PS: No, I am not making jokes in here. Why should I?

RattleSN4K3 commented 7 years ago

I've commented on the commit (d9ed594).

PS: I've just tested the previous tree (proper to the mentioned commit) in order to verify only needed V with the clicking enabled. Using the preview with clicking, the video keeps the clicking as well, even if you close the editor and open another song. What if someone wants a preview without clicking? You can't anymore.

With the simplified change, [V] can be removed altogether.

basisbit commented 7 years ago

It(Spacebar) currently is used for disabling Click. [P] is used for enabling Click

This is not correct. Spacebar is used to play one syllable and P is used to preview one sentence without video playback. What you mention are just side effects by it overriding the Click value.

RattleSN4K3 commented 7 years ago

Yep. That's what I meant, I assumed we both know what the original functioning of the hotkeys was/is.

However, by forcing Click on P and V, what's the deal of having both modes (including the recent change which also forces to disable midi which results a video preview cannot be seen with the playback if midi notes).

Btw. [Alt]+[V] is used to play the track (with video preview) till the end and not end af the end of the line.

basisbit commented 7 years ago

@RattleSN4K3 please either read the code before posting comments, or don't comment at all.

Btw. [Alt]+[V] is used to play the track (with video preview) till the end and not end af the end of the line.

No, [Alt]+[V] is used to play the track till the end of the lyrics (when editing a duet, till the end of lyrics of P1)

what's the deal of having both modes

P for playback while editing the timings and pitches, V for for final checks when line editing is done, [Alt]+V for final checks when everything is done.

RattleSN4K3 commented 7 years ago

@basisbit "No"?

[Alt]+[V] is used to play the track till the end [Alt]+[V] is used to play the track till the end of the lyrics

??? Didn't you read the comment properly?

With the recent commit (ff70634), you've added playing midi on using [Alt]+[V].

I still don't see a proper difference in V and P and why the need of the change was required removing some existing features.

bohning commented 7 years ago

Is it correct that with this commit, there will be beat clicks for both P and V and it can't be disabled? Then for me this is a regression - especially for adjust the gap of a song, the beat clicks distract and I would like to be able to turn beat clicks off.

basisbit commented 7 years ago

@bohning I guess you mean the syllable clicking. This is not the beat clicking what we changed. How about this:

Alternative would be that we change V to not do any audio play action, but instead only toggle on or off the video, and also have [some other key] for toggling on or off the clicking. But if we do that, usual song editing will require much more key presses in total (to toggle on and off the clicking).

bohning commented 7 years ago

@basisbit: yes, I meant the syllable clicking, not the beat clicking. Your first proposal sounds reasonable and close to what I have been used to from past versions. The toggle approach could be easier for newbies, since the toggles could be buttons in the editor that show the status of the two toggles (video on/off, syllable clicks on/off). So I see advantages and disadvantages for both, I guess. If I had to decide, I would go for the first option because you can't teach an old dog new tricks ;-)

So let me describe what are my steps to stitch together a song with the audio and video (usually, I have a video with a synchronous audio track, so I hardly ever have to work with the video gap). First I adjust the gap, either using Space or V (no clicks!) for playing the first syllable or any suitable syllable in the first or second sentence (suitable means sufficiently clear and long in the audio). Then I usually go to the last line of the song to see if it fits by hitting P (with clicks) and adjust BPM if necessary. Then finally I go to the beginning and use ALT+V to play the song with video from the beginning, don't need clicks for that. If I have a feeling that it is not synchronous somewhere, I interrupt playback and use P to check individual lines, before I continue with ALT+V.

By the way #.1, it just came to my mind: in rare cases, it would be nice to be able to play the song (I guess with video) until the end of the audio track. Say there is more lyrics after the last line that have been forgotten in the text file, you can't even find out in any way in the editor; you have to play the sing in regular mode and wait for 3-5 until you are past the final lyrics line to find out if there are more lyrics or not...

By the way #.2, midi playback currently doesn't work on Mac (just FYI).