-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
[BUGFIX] Fix Audio/Visual Offset causing skips on song start #3732
base: develop
Are you sure you want to change the base?
Conversation
Don't use combined offset here-- using it will cause the instrumental to skip forwards due to your offset. Just use instrumental offset, and don't play it when the song starts-- let resyncVocals do that
Conductor's minimum songPosition when music is playing is now combinedOffset. resyncVocals is also altered a smidge due to the fact that we don't want to apply offsets when resyncing at the start + we don't want to play the music and THEN resync because it makes the sound double up when lag happens on start and it sounds ugly
Throw resyncVocals out of startSong because it complicates matters
Currently a weird awkward pause after the countdown before the song plays. Currently investigating |
+ mild fixes
okay all good :yippe: |
added footage :D |
thank you https://github.com/cyn0x8 for reminding me FlxMath.bound exists Co-authored-by: cyn <cyn0x8+git@gmail.com>
oopsie 👉 👈
Not sure if this is an issue on my end specifically, but after switching to Linux I've found myself using positive visual offset.
|
This reverts commit 452bc2c.
#3039 should be linked to this |
don't know entirely if this fixes everything recorded in the issue, but thank GOD someone else noticed something was wrong, thank you i am free |
Just did some testing, and it works flawlessly! Can't wait for this one to be merged. It's been a pain in the ass dealing with this issue. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested this and it does resolve the skipping on start!
Offsets are still far from playable for me, but this makes it a little better :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just tested this out on Eggnog Erect like in the example, the audio skip is resolved but I can't hit Boyfriend's first down note! It just doesn't respond to inputs at all.
Yeah, I encountered this issue consistently when I tested it a few weeks ago |
This PR fixes the issue with the audio skipping exclusively. The issue with high input offset on Eggnog Erect exists on the develop branch as well, so it was not an issue introduced by this PR. I believe this should be merged as is and then hopefully someone can make a PR that fixes that issue. |
Starting the song previously utilized combinedOffset to offset where in the song the instrumental starts in.
This is no longer the case, instead using instrumentalOffset for starting.
The Conductor and Countdown classes have been altered to reflect this behavior.
function startSong also no longer uses resyncVocals().
It was kind of pointless being there, and needing to play the instrumental before calling it makes the audio double up sometimes and it sounds awful
Does this PR close any issues? If so, link them below.
[TBA, but quick searches about offset don't show much]
Briefly describe the issue(s) fixed.
Audio used to skip forward when negative values of Audio/Visual Offset were present. This is now fixed, along with ugly audio doubling behavior on start.
Include any relevant screenshots or videos.
BEFORE:
2024-10-19.17-06-43.mp4
AFTER:
2024-10-19.17-04-39.mp4
(recorded on -210ms audio/visual offset. yes my headphones are that bad, yes they are bluetooth)