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

Not working on Live 9 (Windows) #76

Open
audioop opened this issue Aug 27, 2021 · 6 comments
Open

Not working on Live 9 (Windows) #76

audioop opened this issue Aug 27, 2021 · 6 comments
Labels

Comments

@audioop
Copy link

audioop commented Aug 27, 2021

I downloaded and unzipped the latest release (v2.0) and copied the entire folder into my MIDI Remote Scripts directory. BeatStep Q shows up as a control surface option in Ableton, but after it is selected, none of the buttons/encoders function as they are supposed to. Is this something that can be solved with troubleshooting, or has Live 9 support been stopped?

I really love the idea of this tool! Thanks for putting it together

@raphaelquast
Copy link
Owner

hey, are you working on MacOS?

@audioop
Copy link
Author

audioop commented Aug 31, 2021

No, I am on Windows 10

@raphaelquast
Copy link
Owner

OK, well, then I might be able to help in here...
I primarily developed this on Ableton 10 & 11, but most of the functionality should work just fine on Ableton 9.
(except for the MIDI sequence editor)
However since MidiRemoteScripts in Ableton 9 run on a rather old python 2 version, there might be some functionalities that need to be adjusted to maintain downward-compatibility...

Let's do some basic troubleshooting first and I'll see what I can do:

  1. make sure that you plug in your BeatStep controller after you launch Ableton!
    (otherwise the controller will not be initialized properly)

  2. if the above did not help, go to %appdata%\Ableton\
    then select the sub-folder of your Ableton version and locate the Log.txt file inside the Preferences folder
    (e.g. C:\Users\<USERNAME>\AppData\Roaming\Ableton\<Live X.X.X>\Preferences\Log.txt
    and paste the relevant log-entries like so:

<details>

pase Log.txt here, leave a blank line after the <details> tag!

</details>

(the <details> ... </details> tag will just make the most probably very long comment collapsible )

@audioop
Copy link
Author

audioop commented Aug 31, 2021

I did as you said and still had the same issue. here's the log file:

Log.txt

looks like the error traceback starts on line 4296

so i looked through the code (i'm also an engineer) and it looks like this problem might have something to do with Live 9 not having Collections.

Update:
I think I may have fixed it. in QBrowser.py at the property definition for collections, I did a version check and if it's less than version 10. if it's less than v10, then create the dummy item, but instead of passing the browser.colors list, pass an empty list

@property
    def collections(self):
        if self.app.get_major_version() >= 10:
            return dummy_item("Collections", self.app.browser.colors)
        else:
            return dummy_item("Collections", [])

this worked until I loaded a Live session that had grouped tracks and then I was getting a different error. I'll take a closer look later this evening

Update 2:
the error was coming from QControlComponent.py. I took a look at the Live 9 API and the Track class doesn't have a group_track property. I added another version check on line 510 and that seemed to do the trick

for track in list(song.tracks) + list(song.return_tracks) + [song.master_track]:
            if track.is_grouped and self._parent.application().get_major_version() >= 10:
                group = track.group_track
                if group.fold_state is True:
                    continue
                else:
                    all_tracks.append(track)
            else:
                all_tracks.append(track)

@raphaelquast raphaelquast added bug Something isn't working and removed awaiting follow-up labels Sep 1, 2021
@raphaelquast
Copy link
Owner

hey, thanks for having a close look!
that's exactly what I thought... apparently I've implemented a few features that are not yet available in the Ableton9 API

your fixes look good, only I'd suggest to put the version-check out of the loop so that the check is done only once
If I find some time I'll incorporate this and release a new version on the weekend!

@audioop
Copy link
Author

audioop commented Sep 2, 2021

no problem! again, thanks for the tool. it's breathing a ton of new life into my beatstep!

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

No branches or pull requests

2 participants