-
-
Notifications
You must be signed in to change notification settings - Fork 1.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
AutoDJ: don't use removed Intro end and outro start makers, use transition time instead #11830
Conversation
…deleted it. Use transition time instead if possible, else fall back to last sound.
…it deleted it. Use transition time instead if possible, else fall back to first sound.
This is the first step fixing #11648 entirely. |
double outroEndFromTime = outroStartSecond + m_transitionTime; | ||
if (outroEndFromTime < lastSoundSecond) { |
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.
you'll also need to check for outroEndFromTime < trackEndPosition
IIUC.
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.
lastSoundSecond has been clamped to be <= trackEndPosition
I will add a note.
// No outro start and outro end set, use Last Sound. | ||
return lastSoundSecond; |
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.
wasn't this dependent on transition mode?
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.
Here we calculate a reliable OutroEnd position, as an input to the transition mode dependent code.
The change here takes place in case we have an OutroStart. Than we try to use the transition time to calulate a better OutroEnd than just the lastSoundSecond as the last resort.
Done |
LGTM @ikr83 @Bacadam Can you confirm AutoDJ behaves as expected for your use cases? You shared your feedback in #11648, though I'd like to make sure you tested this PR. |
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.
Changes LGTM, just a question and comment fixes.
Didn't do a manual test yet.
Some other parts of the processor are still a mystery to me.
double introEndSecond = framePositionToSeconds(introEndPosition, pDeck); | ||
if (m_transitionTime >= 0 && firstSoundSecond < introEndSecond) { | ||
double introStartFromTime = introEndSecond - m_transitionTime; | ||
if (introStartFromTime > firstSoundSecond) { |
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.
This would exclude introStart in the preroll if m_transitionTime
> introEndSecond
.
Is this intended?
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.
I think originally it was intended. But now I see no strong reason for it. So let's allow it.
Co-authored-by: ronso0 <ronso0@mixxx.org>
Done |
This is one part of #11648