Phrase Analysis Tool (+ energy, cue countdowns ...)

I read through your documentation. It’s not the bug about the library being open. As you can see in my screenshot, the library is in its small view.

Yes, as you described in your documentation, a track must be loaded before launching your app.

None of the playlists are imported by Traktor. That is simply my playlist naming convention in iTunes/Music. Yes, the tracks are analyzed. I have also tested both tracks from iTunes and the Djay Collection.

Resizing the window is working, my mistake.

Yes, I’ve gone through those 8 points several times. It’s perplexing. I even checked that I have x-code command line tools installed in case there’s a dependency you didn’t mention. Nothing.

Edit: I am on MacOS 15.7.8 - Perhaps that’s an issue?

Hi regarding your picture. I dont see the bar/beats countdown to next hot cue clearly. Just seconds counter. It’s the most important part of this imo.

v1.2.2 is up — three real bugs fixed since v1.2.1, plus a follow-up for @skymakai and an answer for @Jay_Dizzle.

Releases page — same setup as before, compile from source or grab the prebuilt .app.

What’s fixed

  • Cue points could be missing, or occasionally show a nonsense value or a phantom entry. Two separate bugs, both found by checking the decoder against a known cue list instead of guessing: a rare case where a garbage huge number appeared instead of a real countdown, and a subtler one where the binary tag marking a cue’s stored time turned out not to be a fixed width — so some cues were silently dropped. (A same-day fix attempt at that briefly introduced a phantom “cue” that was actually a loop’s start time, before the real cause was found.) Your cue points should now match djay’s list exactly.

  • The panels could overlap, or need more screen width than a laptop has. The per-deck width was capped to a flat number regardless of screen size — it now scales with djay’s own window width instead.

  • A denied “access data from other apps” permission looked identical to “track not analyzed yet.” Both showed “Searching djay’s database…” forever, with no way to tell them apart from the outside. The panel now says explicitly when djay’s data folder isn’t accessible.


@Jay_Dizzle — on the bar/beat countdown to the next cue

I dont see the bar/beats countdown to next hot cue clearly. Just seconds counter. It’s the most important part of this imo.

It is there, but I clearly haven’t made it readable enough — in your screenshot it’s the cyan group: 2.6s (M28) · 6t, meaning next cue in 2.6 seconds, at bar 28, 6 beats away. So seconds, bar number and beats are all present, just packed tight and in the same size as everything else.

If that’s the single most important number for you, it shouldn’t be competing with the rest for attention. I’d rather fix the hierarchy than add anything: give the beats/bars countdown the same visual weight the phrase number has now, and let the seconds be the small secondary detail rather than the first thing you read. Does that match what you’re after, or would you rather have the bar/beat figure on its own line entirely?


@skymakai — a specific test, if you’re still up for it

Thanks for going through all of that so carefully. Everything you ruled out in your last post is genuinely ruled out on my side too — library view, naming/metadata, tracks being analyzed, resizing. That leaves the “access data from other apps” popup as the main suspect: it’s a different macOS permission from Accessibility, and the 8-step routine in this thread doesn’t touch it — which would explain why running through it several times changed nothing for you.

Until v1.2.2 the app had no way to tell you that. If that permission was denied, it just sat on “Searching djay’s database…” indefinitely, exactly like an unanalyzed track would. Now it should say so outright.

Could you:

  1. Grab v1.2.2 and see what the panel says — a “can’t access djay’s data” message, or still just “Searching…”?

  2. If the “access data from other apps” popup appears again at launch, click Allow this time rather than dismissing it.

  3. If it does report denied access, run this in Terminal and relaunch:

    tccutil reset SystemPolicyAppData com.yannick-djay-phrase-tool.phrasecounterapp
    

On macOS 15.7.8 — I don’t think that’s the cause in itself; nothing here depends on a version newer than that. But I’m only testing on my own machine, so if v1.2.2 still says nothing useful, your OS version becomes worth a proper look rather than a guess.

Whatever it reports now should point at the actual cause instead of more guessing from a distance. Appreciate you sticking with it.


2 Likes

@Yan you’re really good at this!

1 Like

Not me Ai :winking_face_with_tongue:

Please give me feed back if you are using it .

Small follow-up — v1.2.3 is up, one more bug found since yesterday’s post:

Tracks with no artist tag never calibrated. The title displayed fine, but the panel stayed on “Searching djay’s database…” forever, no matter how long you waited. If your library has files with a blank artist field — some older or less-tagged ones do — that was the cause. Fixed.

Get it:

Everything else is unchanged from v1.2.2, so if you grabbed that one yesterday, this is a one-file swap.

@skymakai — worth flagging since you’re mid-diagnosis, though I don’t think it’s your case: the track in your screenshot showed its artist fine, so this particular bug shouldn’t be what’s stopping you. The test I asked about still stands, just run it with v1.2.3 instead of v1.2.2.

I’ve gone ahead and updated. No change so far.

One point to make… I never dismissed the window asking for the app to access other apps. I have always pressed “Allow.”

Also, that window still pops up every time I open the app. I have tried the terminal command but no change.

Thanks for trying though.

@skymakai — thanks for the correction, that’s an important detail: if you’ve been clicking Allow all along and the popup still returns every launch, then this was never a declined permission. That changes the shape of the problem.

Ruled out so far: the library-open bug, metadata/naming, “track never analyzed,” resizing, a declined permission, and a stale TCC entry.

A permission that’s granted but never sticks points at something specific: macOS may be running the app from a randomized temporary location. It’s a security feature called App Translocation — when you download and unzip an app and run it without moving it in Finder, macOS can execute it from a different random read-only path at every launch. TCC then sees a “new” app each time, so nothing you grant is ever remembered, and tccutil reset has nothing stable to reset. That fits every symptom you’ve described, and it also explains why I never see it: I build locally, so my copy is never quarantined.

Worth testing in this order — the first one is a single drag:

  1. Move the app in Finder. If PhraseCounterApp.app is still where you unzipped it (Downloads, most likely), drag it into Applications. Moving it with Finder is what breaks translocation — copying it, or moving it from Terminal, doesn’t. Then launch it from there.

  2. If the popup still returns, clear the quarantine flag: in Terminal type xattr -dr com.apple.quarantine (trailing space), drag the app in so its path fills in, press Enter, relaunch. You can check whether it was quarantined at all with xattr -l /path/to/PhraseCounterApp.app — look for com.apple.quarantine in the output.

  3. If it still returns after both, two screenshots would help: the exact popup itself, and System Settings → Privacy & Security → Files and Folders (does PhraseCounterApp appear there at all, toggle on or off?). If macOS isn’t even registering the app in that list, we’re looking at something that no amount of clicking Allow will fix — most likely that this permission category needs a proper Apple Developer ID signature to persist, which is a real limitation of an unsigned project rather than a bug I can patch.

Really appreciate you working through this — even the negative results are narrowing it down.

I hope it will work because I will not have any access to my computer for several weeks

This is what community is about, what a contribution !

1 Like