Soundflow keeps going offline repeatedly for microseconds
Soundflow keeps going offline repeatedly for microseconds
System Information
SoundFlow 5.6.1
OS: darwin 21.5.0
ProductName: macOS
ProductVersion: 12.4
BuildVersion: 21F79
Steps to Reproduce
- execute script (can be a very basic logic script - i.e. just logging a UI element)
Expected Result
Stay online
Actual Result
It'll go "saving..." then quickly go red "Offline" then flicker back on online. It's fairly inconsistent, but seems to only do it when I'm working on scripts for Logic. The soundflow taskbar icon will always turn vertical, illuminate red when I execute the script.
Workaround
Nope. Just keep hacking the offline notification
Other Notes
Again, only noticing it with Logic pro scripts I'm trying to create. Haven't tested it extensively with ProTools, but it was operating fine today.
Links
User UID: ZPSSH9Crt9fMIadCRVLNqA1931F2
Feedback Key: sffeedback:ZPSSH9Crt9fMIadCRVLNqA1931F2:-NrcqTYA9sRcQg1j9jGU
Feedback ZIP: ozifKm7koM7k101dVutn7E9BePy9IC3HSLxdmR2xoYHqJGk8nECogeu6SPIdvT7xNOlT7dceAJK7yDu0kJ0JNFGxR8p9yhJlJ/bovuP2i54u8e77zphnqddAN9rta/j7zQbUa1QgZNcvwSu0OqOFEbkeaCVxQjbLx/0LnauIugJcO64d5tftzgqi+EVspkGDuQQSAHrIhkqle8b8xvYk/DDq0ovNnsOumXBerfhfN6H332ZZwUEvZcUGQyvePfDQCymzCuWLfHw6l5E3DMlp6VSLATaWrP/Vf6XAtYBcvTRTiJsmuLKyUVpToYpWxNYxndKUQ74+gEBnkT0UMMhy3MDb8EDyHlzwgmQ0RH2HECE=
- Christian Scheuer @chrscheuer2024-02-27 05:22:33.280Z
Hi Tristan,
Thanks for reporting. This definitely appears to be a bug in how SoundFlow deals with Logic's handling of accessibility under the hood.
Can you find a script that reproduces this? I'm assuming you're not seeing this bug with the built-in Logic scripts?
Christian Scheuer @chrscheuer2024-02-27 05:23:29.833Z
What happens is actually a crash, but SF just recovers from it quickly, which is why you see a brief Offline event
sfbackend[582:1590552] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFNumber _fastCharacterContents]: unrecognized selector sent to instance 0x840d698831bed7ce' *** First throw call stack: ( 0 CoreFoundation 0x000000019fcf9198 __exceptionPreprocess + 240 1 libobjc.A.dylib 0x000000019fa43e04 objc_exception_throw + 60 2 CoreFoundation 0x000000019fd8cf40 -[NSObject(NSObject) __retain_OA] + 0 3 CoreFoundation 0x000000019fc58544 ___forwarding___ + 1764 4 CoreFoundation 0x000000019fc57da0 _CF_forwarding_prep_0 + 96
- SIn reply toTristan⬆:SoundFlow Bot @soundflowbot
This issue is now tracked internally by SoundFlow as SF-1083
- In reply toTristan⬆:Christian Scheuer @chrscheuer2024-02-27 05:25:05.092Z
CC @Kitch. It would be great if we can find a way to reproduce this reliably so I can locate the bug in the platform code.
Kitch Membery @Kitch2024-02-27 05:34:39.237Z
Sorry, I missed your reply @chrscheuer. I was busy writing my own reply to Tristan.
There is a good chance he's experiencing what I'm talking about in my first reply.
To reproduce this.
- Create a new session
- Create a Track
- Use the pick button to select the mute button on the track
- Add
value.value
to the end of the picked element - Run the script. (SoundFlow will go offline)
You can instead get the value by replacing
value.value
withvalue.intValue
But until I know more about what Tristan was trying to do I'm just guessing if this is the actual issue. :-)
- In reply toTristan⬆:Kitch Membery @Kitch2024-02-27 05:25:20.682Z
Hi Tristan,
Can you create a script that recreates this offline behavior and then log it via the Script Help workflow? That way we'll have a script to troubleshoot and the logs to go with it. Without that information, we'll be lacking the context we need to dig further.
I don't have any context, but are you by chance trying to log element values using
value.value
? If so this can sometimes cause SoundFlow to go offline... If this is the case rather than usingvalue.value
try usingvalue.intValue
for things like Checkboxes and sliders.Also note, we plan on adding a bunch more to the logic package so if there is a workflow that you're trying to achieve in logic let me know and I'll see if I can add it to the Logic package.
- TTristan Hoogland @Tristan
Hey Kitch,
This one does it, I'll keep an eye out for any others. I'm just in the bounce dialog of Logic Pro X (10.7.4 over here).
Each time I run this the soundflow icon goes offline temporarily. I should also mention nothing's logging here (not that it matters - I worked it out).
sf.ui.logic.appActivate(); const mp3Check = sf.ui.logic.windows.whoseTitle.is("Bounce “Output 1-2”").first.scrollAreas.first.tables.first.children.whoseRole.is("AXRow").allItems[1].children.whoseRole.is("AXCell").first.checkBoxes.first.value.invalidate().value; log(mp3Check)
Kitch Membery @Kitch2024-02-27 06:00:03.495Z
Yep, that looks like it might be the issue,
Try this and let me know if still occurs...
sf.ui.logic.appActivate(); const mp3Check = sf.ui.logic.windows.whoseTitle.is("Bounce “Output 1-2”").first.scrollAreas.first.tables.first.children.whoseRole.is("AXRow").allItems[1].children.whoseRole.is("AXCell").first.checkBoxes.first.value.invalidate().intValue; log(mp3Check)
Side note... there is a bounce script already in the Logic package... But I'm not sure if it's 10.7.4 compatible. If not, let me know and I'll see if I can make it backward-compatible.
- TTristan Hoogland @Tristan
Thanks mate - I just tried that and i'm getting this error:
Couldn't get item #0 as the array's parent node wasn't found - sf.ui.app('com.apple.logic10').windows.whoseTitle.is('Bounce “Output 1-2”').first.scrollAreas.first.tables.first.children.whoseRole.is('AXRow')[1].children.whoseRole.is('AXCell').first (AxElementArrayIndexedItem) (Logic: Line 3)
Still, not going offline.
What is sending it right offline with alert prompts and everything is when I try to click the UI Element of the bounce progress dialog.
I did see those! I'm having some trouble getting them to work straight out of the gate, but I'm also going down some rabbit holes of my own to interface it with ProTools so I'm deep in custom land - ha!
Kitch Membery @Kitch2024-02-27 07:37:43.636Z
Cool, I'll look into it when I get a chance to see how it can be done.
- In reply toTristan⬆:
Christian Scheuer @chrscheuer2024-02-27 16:34:57.353Z
What is sending it right offline with alert prompts and everything is when I try to click the UI Element of the bounce progress dialog.
Would you be able to make a screen recording of how you do this? As in, does this happen when you're writing a script, or when using the UI picker or when building a macro?
That would be super helpful :)
- In reply toTristan⬆:Christian Scheuer @chrscheuer2024-03-03 23:21:24.769Z
Most likely, this should be fixed in the upcoming 5.7 release :) Please re-open the issue if you see the issue reoccur in 5.7.
- SIn reply toTristan⬆:SoundFlow Bot @soundflowbot
The linked internal issue SF-1083 has been marked as Done