Need help better understanding the API #37
Replies: 3 comments
-
Reaper only sends OSC messages when the state changes, if you want to get the existing state you have to ask it to send all the messages for the existing state using The other thing is that with the default pattern (for Reaper and the one in this repo) the number of tracks for the "device" (reaper-osc in this case) is set to 8, so it will only send messages for 8 tracks at a time and you would need to use banks to see more. This library does not currently have support for changing banks, but you could use Let me know how you get on 😄 |
Beta Was this translation helpful? Give feedback.
-
Thanks so much. I'll try that and let you know how it goes.
Best,
Salah
…On Sun, Jun 2, 2024, 00:26 Ben Simpson ***@***.***> wrote:
Reaper only sends OSC messages when the state changes, if you want to get
the existing state you have to ask it to send all the messages for the
existing state using reaper.refreshControlSurfaces(). You could hook that
up using the reaper.onReady() callback, for example.
The other thing is that with the default pattern (for Reaper and the one
in this repo) the number of tracks for the "device" (reaper-osc in this
case) is set to 8, so it will only send messages for 8 tracks at a time and
you would need to use banks to see more. This library does not currently
have support for changing banks, but you could use reaper.sendOscMessage
to send a custom message to /device/track/count with the value you want
(e.g. in onReady before refreshing`), or set it in the pattern file.
Let me know how you get on 😄
—
Reply to this email directly, view it on GitHub
<#37 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A5UDIWFIBLZJWPAEVYGMNMTZFJDAVAVCNFSM6AAAAABIUF6OXKVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4TMMZSHA3TG>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Hey Ben,
I've been trying hard with no luck.
I ended up switching to the Reaper Web interface using direct
XmlHTTPRequests... as described in the
https://github.com/ReaTeam/Doc/blob/master/web_interface_modding.md
I'll be happy to share the code once I have a clear perspective on what is
achievable and what not.
Let's stay in touch.
Thanks!
-Salah
…On Sun, Jun 2, 2024 at 10:40 AM Salah Kamel ***@***.***> wrote:
Thanks so much. I'll try that and let you know how it goes.
Best,
Salah
On Sun, Jun 2, 2024, 00:26 Ben Simpson ***@***.***> wrote:
> Reaper only sends OSC messages when the state changes, if you want to get
> the existing state you have to ask it to send all the messages for the
> existing state using reaper.refreshControlSurfaces(). You could hook
> that up using the reaper.onReady() callback, for example.
>
> The other thing is that with the default pattern (for Reaper and the one
> in this repo) the number of tracks for the "device" (reaper-osc in this
> case) is set to 8, so it will only send messages for 8 tracks at a time and
> you would need to use banks to see more. This library does not currently
> have support for changing banks, but you could use reaper.sendOscMessage
> to send a custom message to /device/track/count with the value you want
> (e.g. in onReady before refreshing`), or set it in the pattern file.
>
> Let me know how you get on 😄
>
> —
> Reply to this email directly, view it on GitHub
> <#37 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/A5UDIWFIBLZJWPAEVYGMNMTZFJDAVAVCNFSM6AAAAABIUF6OXKVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4TMMZSHA3TG>
> .
> You are receiving this because you authored the thread.Message ID:
> ***@***.***>
>
|
Beta Was this translation helpful? Give feedback.
-
Hi Ben,
First of all, this is great work and it appears to be exactly what I was looking for to bootstrap my project. Many thanks for the hard work!
I'm currently writing a React / Material UI application running in its standalone chromium in node.js (electron) to surface a small subset of Reaper's functions including listing existing tracks from the Reaper project open in in the background.
The idea is that we will be controlling Reaper by opening an existing pre-wired template project (in Reaper directly using commands/actions) that can contain up to 16 tracks to allow us start a band recording. I have successfully installed and used your
reaper-ocs
module and it works great for things such asreaper.transport.play()
,reaper.tracks[3].mute()
, etc.However, what we are looking for is to get the actual names and initial values from the open Reaper project for the master track and all other tracks (including FXs).
I couldn't find a proper way to "query" the existing project using your API? and I'm sure I missed something. In the example below, I have a Reaper project with 4 tracks respectively named ['Vox', 'Guitar 1', 'Bass', 'Drums'] with different settings already configured (volume for instance):
Now, when I try to simply get the list of tracks using the code below, I do not get what I was expecting...
So the question boils down to: Is there a way for achieving this ? Have I missed something ?
Many thanks in advance for your help looking into this.
Greetings from France to NZ!
-Salah
Beta Was this translation helpful? Give feedback.
All reactions