Old 10-12-2013, 11:54 AM   #281
beyond
Human being with feelings
 
Join Date: Jun 2007
Location: Palm Beach FL
Posts: 263
Default

Oh yes, must enlist Lazarus.
beyond is offline   Reply With Quote
Old 10-12-2013, 12:48 PM   #282
Lazarus
Human being with feelings
 
Join Date: Aug 2013
Posts: 1,355
Default

I'm just busting balls, although I must care enough to do that in the first place. I can't wait till I ascend from this pesky human form.
Lazarus is offline   Reply With Quote
Old 10-12-2013, 04:39 PM   #283
beyond
Human being with feelings
 
Join Date: Jun 2007
Location: Palm Beach FL
Posts: 263
Default

hehe, I know what you mean.
beyond is offline   Reply With Quote
Old 10-19-2013, 10:30 AM   #284
axel_ef
Human being with feelings
 
axel_ef's Avatar
 
Join Date: Jan 2007
Location: Erfurt
Posts: 596
Default

Quote:
Originally Posted by beyond View Post
...replaced all the "RPR_" with "Reaper."
"FNG_" with "Reaper.FNG_" ...
I have used this method to convert GuitarChorder.
It works, but takes a long time to draw the notes.
I could not figure out why.
Attached Files
File Type: zip GuitarChorderTest.zip (8.0 KB, 62 views)
axel_ef is offline   Reply With Quote
Old 10-19-2013, 11:38 AM   #285
spk77
Human being with feelings
 
Join Date: Aug 2012
Location: Finland
Posts: 2,541
Default

Quote:
Originally Posted by axel_ef View Post
I have used this method to convert GuitarChorder.
It works, but takes a long time to draw the notes.
I could not figure out why.
Try to increase the "indentation level" from line 3532 to 4138.
spk77 is offline   Reply With Quote
Old 10-19-2013, 12:04 PM   #286
spk77
Human being with feelings
 
Join Date: Aug 2012
Location: Finland
Posts: 2,541
Default

Playing with tkinter and rtmidi module:

(seems to be a little laggy in this gif)
spk77 is offline   Reply With Quote
Old 10-22-2013, 01:40 PM   #287
spk77
Human being with feelings
 
Join Date: Aug 2012
Location: Finland
Posts: 2,541
Default

Experimenting with tkinter and python-osc 1.2 (OSC module) - it's quite fast:



Code:
from tkinter import *
from tkinter import ttk

import argparse
import random
import time

from pythonosc import osc_message_builder
from pythonosc import udp_client

hostIP = "10.0.0.4"
port = 8000

class OSCApp:

    def __init__(self, root):
        self.root = root
        self.root.wm_attributes("-topmost", 1)

        self.sliderRangeBottom = 0
        self.sliderRangeUpper = 1000

        parser = argparse.ArgumentParser()
        parser.add_argument("--ip", default=hostIP,
                            help="The ip of the OSC server")
        parser.add_argument("--port", type=int, default=port,
                            help="The port the OSC server is listening on")
        args = parser.parse_args()
        self.client = udp_client.UDPClient(args.ip, args.port)

        self.makeWidgets()

    def makeWidgets(self):
        self.sliderVal = IntVar()
        self.sliderVal.set(500)
        self.sliderScrub = ttk.Scale(self.root, from_=self.sliderRangeBottom, to=self.sliderRangeUpper, command=self.sendOsc, variable=self.sliderVal)
        self.sliderScrub.grid(sticky=(N,W,E,S), row=0, column=0)
        self.sliderScrub.bind("<ButtonRelease-1>", self.onMouseUp)

        self.btnPlay = ttk.Button(self.root,
                        command=lambda: self.client.send(osc_message_builder.OscMessageBuilder(address = "/play").build()),
                        text = "Play/Pause")
        self.btnPlay.grid(sticky=(N,W,E,S), row=2, column=0)

        self.btnStop = ttk.Button(self.root,
                        command=lambda: self.client.send(osc_message_builder.OscMessageBuilder(address = "/stop").build()),
                        text = "Stop")
        self.btnStop.grid(sticky=(N,W,E,S), row=3, column=0)

    def sendOsc(self, event):
        slider = float(self.sliderVal.get())
        if slider == 500:
            return
        elif slider <= 500:
            msg = osc_message_builder.OscMessageBuilder(address = "/scrub")
            msg.add_arg(-1)

        elif slider > 500:
            msg = osc_message_builder.OscMessageBuilder(address = "/scrub")
            msg.add_arg(1)
##        msg.add_arg(slider / 1000)
##        msg.add_arg(slider)
        msg = msg.build()
        self.client.send(msg)

    def onMouseUp(self, event):
        self.sliderVal.set(500)

if __name__ == '__main__':
    root = Tk()
    app = OSCApp(root)
    root.mainloop()
Here's the python-osc 1.2:
https://pypi.python.org/pypi/python-osc/1.2#downloads
spk77 is offline   Reply With Quote
Old 10-28-2013, 09:53 AM   #288
mim
Human being with feelings
 
Join Date: Mar 2009
Posts: 346
Default

I just discover a strange bug in REAPER (rather than in beyond) : This script only works if there is a fx on the (selected) track.

If not, REAPER still get the new foldcomp value, but doesn't update the GUI to hide or show child tracks. Only the folder arrow icon of the track is changing according to the new foldcomp value.

Here is a licecap :



Maybe other stuff are not properly updated in other cases too....
mim is offline   Reply With Quote
Old 10-28-2013, 02:42 PM   #289
spk77
Human being with feelings
 
Join Date: Aug 2012
Location: Finland
Posts: 2,541
Default

Quote:
Originally Posted by mim View Post
I just discover a strange bug in REAPER (rather than in beyond) : This script only works if there is a fx on the (selected) track.

If not, REAPER still get the new foldcomp value, but doesn't update the GUI to hide or show child tracks. Only the folder arrow icon of the track is changing according to the new foldcomp value.

Here is a licecap :

Maybe other stuff are not properly updated in other cases too....
You can update the track list with:

r.TrackList_AdjustWindows(False)

(after Track.Send() in your script)
spk77 is offline   Reply With Quote
Old 10-31-2013, 02:13 AM   #290
mim
Human being with feelings
 
Join Date: Mar 2009
Posts: 346
Default

Quote:
Originally Posted by spk77 View Post
You can update the track list with:

r.TrackList_AdjustWindows(False)

(after Track.Send() in your script)
Good to know !
Thanks !
mim is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 03:54 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.