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

First pass at implementing TrackData that holds info about the currently playing track. #534

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

aphexcx
Copy link
Collaborator

@aphexcx aphexcx commented Jun 30, 2023

Hacked this up with David and Aravindo - don't merge yet

@aphexcx aphexcx marked this pull request as draft June 30, 2023 02:04
@aphexcx aphexcx requested a review from xian June 30, 2023 02:04
@aphexcx
Copy link
Collaborator Author

aphexcx commented Jun 30, 2023

Still todo: pass this into GLSL land via a plugin (we're not sure how that arcanna works yet)

val artist: String,
// val art: BufferedImage?,
val key: String,
val cueList: List<Long>,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You won't be able to pass variable sized arrays to GLSL. You could make this a size-8 array of float timestamp values, since almost all DJs only use cue points A-H.

@bencbartlett
Copy link
Collaborator

@aphexcx take a look at what @SiriusZael has done in the MIDI pull request. The linked lines are how you can pass the struct to GLSL.

Additionally looking at your code, you won't be able to pass variable-sized arrays to GLSL. You could make it a size-8 array of float timestamp values, since almost all DJs only use cue points A-H.

Would also be really great if you could include fader + crossfader values if possible!

@xian
Copy link
Member

xian commented Aug 2, 2023

Do we want track data in glsl? Wouldn't it more useful in the client?

What'd really be extry cool IMO is waveform data, so you could see what's coming up in the client. Sync stuff looks tricky though.

@xian
Copy link
Member

xian commented Aug 2, 2023

If you're hoping to render text, I've got a thing in progress here. Right now it's super janky because kgl doesn't properly support uniform int arrays, pending bugfix PR merge. :-)

@davidlinn
Copy link

How should we represent musical keys? We're looking at this and the key of the track received from rekordbox is a string, which GLSL doesn't support. We could convert it to an integer (maybe as the camelot wheel representation https://mixedinkey.com/camelot-wheel/ ) or maybe we have a better idea?

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

Successfully merging this pull request may close these issues.

4 participants