problems with live electronics environment
problems with live electronics environment
Objective:
I need assistance in creating a *.bat script that will:
Execute a Python script designed to:
Collect sensor data from a gamepad controller
Transmit the data via Open Sound Control (OSC)
Launch Ableton Live Standard with a specific session containing:
A Control Voltage (CV) Max for Live (M4L) device
Any additional required components
***
@echo off
:: Enhanced Triple Launcher with error handling
setlocal
echo Launching applications...
echo.
:: 1. Launch Python script
if exist "%~dp0gamepad.py" (
echo Starting Python script...
start "" /D "%~dp0" python "gamepad.py"
) else (
echo ERROR: gamepad.py not found at "%~dp0gamepad.py"
)
:: 2. Launch Processing GUI
if exist "%~dp0gui\windows-amd64\gui.exe" (
echo Starting Processing GUI...
start "" /D "%~dp0gui\windows-amd64" "gui.exe"
) else (
echo ERROR: gui.exe not found at "%~dp0gui\windows-amd64\gui.exe"
dir "%~dp0gui\windows-amd64" /s
)
:: 3. Launch Ableton
if exist "C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe" (
if exist "%~dp0cv5_.als" (
echo Starting Ableton with session file...
start "" "C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe" "%~dp0cv5_.als"
) else (
echo ERROR: Session file cv5_.als not found at "%~dp0cv5_.als"
)
) else (
echo ERROR: Ableton not found at standard location
)
echo.
echo All launch commands executed.
timeout /t 5
exit
***
here is the python gamepad module::
import pygame
from pythonosc import udp_client
import time
# Initialize Pygame and the joystick module
pygame.init()
pygame.joystick.init()
# Check for at least one joystick
if pygame.joystick.get_count() == 0:
print("No joystick/gamepad found!")
exit()
# Use the first joystick
joystick = pygame.joystick.Joystick(0)
joystick.init()
print(f"Using joystick: {joystick.get_name()}")
# Set up the OSC client
osc_ip = "127.0.0.1" # Change this to your OSC server IP
osc_port = 8000 # Change this to your desired OSC port
client = udp_client.SimpleUDPClient(osc_ip, osc_port)
# Helper function to send joystick data
def send_joystick_data():
pygame.event.pump() # Update Pygame events
# Send axis data
for i in range(joystick.get_numaxes()):
axis = joystick.get_axis(i)
client.send_message(f"/gamepad/axis/{i}", axis)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Send button data
for i in range(joystick.get_numbuttons()):
button = joystick.get_button(i)
client.send_message(f"/gamepad/button/{i}", button)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Send hat (D-pad) data
for i in range(joystick.get_numhats()):
hat = joystick.get_hat(i)
client.send_message(f"/gamepad/hat/{i}", hat)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Main loop
try:
print("Streaming gamepad data over OSC...")
while True:
send_joystick_data()
time.sleep(0.01) # Limit sending rate (~100Hz)
except KeyboardInterrupt:
print("\nStopped by user")
finally:
pygame.quit()
***
regarding the m4l devices:
- a device containing:
- an udp receive mapped to port 8000
- 12 MapButton.maxpat devices
a device containing:
- two beap oscillators mapped to LFOs
a standard LFO mapped to the MapButton thing
***
my doubts:
- the *.bat script is not executing live;
- the python script was initially working and i was able to collect the data in max, but:
- now i have a dumpout error message, and i am not being able to collect sensor data in ableton;
- the python script is still running correctly;
- i am not being able to currently open my m4l patches in ableton (any of the devices i open are opening, but max is getting prompted, and i just can't open the patches)
***
what am i doing uncorrectly
***
now here is the osc thing (it just misses the mapbutton.maxpat:
<pre><code>
----------begin_max5_patcher----------
1383.3oc2Ys0aaaCE9YGf7ePvO6ov6W5aqnuTf0W1drnnPQhwgIxRF5RV5J1
9sORJeQV1lRoHLcyHvQlGSpy24ije7bj990WMa9skOqpmG8tnOGMa12MVl4r
YsLaqgYyWk7bZdRsqiyKT+Y4sOLewleqQ8biydsd4+ryZQ6JcQtpwMD3Vq5L
WOMC+Wnvc8ccRS585hkesRk1zgEI.DKjbBAioDHRxkvEQTJNVPXPpjPEPFfr
HBCiAKhPnXPzW545x1li7cmslusV04BKdKRxmG8EWG96quxd0bYwaMS.7wDB
FNlwoHDPBXbLgv3WrLAQ5kIPrXBEIkBBUhwRHAc4xDBeLAWHiQX.my.PnjfE
vK30DbuLA0Db.gI1oLBkHHxK30DLuLAjDyMhEXHDxgTLjItbYBpOlfw4wlUC
PffwjbJWPvWtLAwKSP.wXBTHXHDByPT3E7ZBrWl.fiMRkLFlyIRF2nZd4xDH
eLAkQ6xrBhQlMGPASdwxDXumcPQBWlUl8GB.jynjK20DXumcPjfXpTfjTJSR
fRA6+SYautRWzLcpv6ZBHPZCQBCYufQiEufe3nYUaditNWmop1CnJUspnIoQ
WVzCTXGlP.G6SMYAagF4.T0ejGD305+xMC.QasjVVzjkzjbP2RSJxzl+ona3
AqON3eGv.9YXn2R6PXhKNXc2YFvdQ.56gaWlVlWV00eyuXVSZO4BXjvwbD08
M6WnCP1x6KqatMwMPJ3nXi0K1.wD.VhP1uch.r2TL5n6CZKvjHH0JeZ9lYKT
28hBjhA2u0pjG6EP931c9fe.V26ngC3n8YyWX9r+26VgMz6fX1Yi9cP.ui+s
cSP2FhHaFUvgwXRUxJUip5qphjaycnY2LP85jTyh.qM7tsu2qSerPUWe50gh
sNGJrH05WJmQ3PGVjVimC2jIOzWeonjGit6z+cFAJzo1+38ABf.c6e.Nc.ih
8OtlbHTiqLdQEcyRypg0IY2j7rt9Fvf1vAsQCZiGzlLnMce6aaaZJK56gMVf
GYAcjE7QVHGYYeoF45BUZYaQyApBGNchOwzoXByljNYP1FwclmYSr+s9ujOA
X5uMybTTpR+jxnoC.S+XY1TXIj6.YI+myR9bSTEmVtZkpW9F6h7O8wO7wnlx
neyzqWzZlS8HA89rQ2jUhaECU3ZH8jhRej9Paci9NiL41DE.gjMtqpb0qBe3
sJWA1cFFnaGj7+l7w6a04YQeqrsJxQMp6tyD.Q2qpTufr38l5JriGnNF.1sU
AJd6IhyxAeP8jNUE8jppw3n7nb8J8KHwcuObXpa1GQc5DPLtKi49A+85rL0g
IGeF93NSFx6xa1luTO6ElSGbH5WMI4XNeH5ORJpi9jJS2tJ52UKayMoe9pqp
tRmoMHc5bk2GAfzoY.6tP3GSUSgW.miWpzlo12WlmEFZPWLcV.NAV.1wBfwX
A3XrvQG0XqJc+cahjT2.b5jCesbtXv9CCntZinR5VmtIgCSbs20YJyd6hc6r
+79W.WT+JIprkh5em+KCBfQg.HvPPNFBruwofh.wnHPDXDvGEA7.i.1nHfEX
DPGEAz.i.xnHfDXDfGEA3.i.znH.EZIowP.Nz6EFUSDy9Yi.34TkguUyBND.
CHBPSBAn.h.7jP.NfHfLIDPBHBnSBAz.h.1jP.KfHfOIDvCHBDSBAh.h.4jP
fLjJRSSTDFTUwIJKFJcQ1TNaHjIqNI.vC3YSCO36LyBapa50vgSwenS5tM0I
lrd8Spp5MinySlZoen6s8HVz0VWz0tqF14UpmzaGBbisjJS8wMlhiaq5JQ8Y
1lG517UkFNtnUuklsAq02t50skzZe8NcCxVW+0WY5v+RdVPEb
-----------end_max5_patcher-----------
</code></pre>
***
and here is the beap stuff
<pre><code>
----------begin_max5_patcher----------
1288.3oc6ZszaaiCD9rCP9OHnyYMDkrcr6sVrsmRQ.5dLnvfVhVlozjBjTNN
awt+1W9PunrksTw5rMcyEYiYHol4a93LhO990WMxeEaOR368NuG7FM56JIiL
xzRFUJXj+V39XBTXZnOE8Da0i92TnaGjSgaQFUYPY7FDuRmDsWZUTIhluESI
HoYrBJkhSLMSMt+FXVUaMCGlltjihkViLZ53fa7lEZddq9YXv3.uu1X3Y4xC
F+RCy5Vk90H+0XBZGhKvLpVG3lREvrrFxG0rSZ33QlYrleSsLL0JCTKii1gq
F5FxgbkaIU9TN2ha6mMwuwPwRPbZN1zsBo+00WUYalPgFyEYvX6.nCYU5qQq
oKzHDHXlAtlDn+Yx7l.lJZmRXweCkzDuF4yxPTLMiiDHpDJKbhZ8In0vbhb4
ZFUJv+owJ.5nxwZv5By73ZqXOumigjZ2HkiSXTsg3FZzxKekO3ALDB8yF9jo
ITX1w5thiovmtzJTNatXEjqibqHlWRXkVIiQb0U2SBZsrPeFlRaCnRV1Izxw
oaNUuWwTZ2dxg2nRrLmZUuTQRjKEvcsPdIjPJlA25MrGRwagRjDaiGgA0ZQT
nxg2Hh4LBw0usp1cLUIJ9eL5Ibhbi4k4POTc.mURr7qC6I3TjP1RnDlJZIRH
e1FBZJKeUwL8kRz1LhxaZ0B0LGrPJ1vdRTzxR5mCTTmSzYleybitJZkibUqL
gGjobU1369z8O.9paKvnmLjKLAKe1Mahl5tds.UL01LW1YlrgDZlJmvUvUU7
HnYChI33uI2vY4oaNP4AQ4incWGZWkpSacnXFOwl20cr1K4PaVJGO7nUGNnB
wTGP6HUItMvTfHLzj3CDYJT..yZCWtUKl5f0F4xmyJxy3KvoTc5od9uVuH23
9XEYQY19UsPkdu7+5L8WZd2ajtgS5lbNRWzjouQ55hz84I24cet7MhWmDuvt
HdQ8j3MEXPo48i2EzESoHR8eJa4dQLlnpdy3uUg7TblYcwYB6YExnYljUQfI
8hzDNrjUcmNpN.+SBO6MR1fIY8sf3uvbLBdGZbLa6V0hjcPipM93N+NwUPWS
dAmCXmal6BVXWcu847AjtWacOlKj3033501+JAcB5I5nQjW2nyWFN5L+bfCX
pc+R.K9eH5b64QmI+hLy5C4XRh2yrbt26ySvLuOtdsxM8TEDQN8ffonXVNUd
Pt2dAoyNKjZKB.lYpTBrKNJbwqQL0BjRl2cplNb12Y20hEQ10OZPpYQudIeV
fZMms8GDpN6RdlaStGXfpam7yJTcRT52M6Np2NDWpLBhGAuEKGNVs3bX0TCH
EVjZKZxAGZhoiavIIs1L7yfgNa8OX7A5p2We02qJYTu+.REdeFkfy258ETZN
Ax+2+SxbOcpVmBEIOU4M+s+fWD9YWO0hhu1v7yzniiwm3Ccc.y.WvbneD7gG
ph2GXjjWdrFS+AfZPOgZvqPntwQToq610gLXbZcC5HHHTk0iKsvhkh40B.RP
prazpbaOTuYR5V1epvfsE8ty2OiQa0fKusD1WaI5xaKfdEjBeYBRQ81XtvQo
ICgwDb4sEPeskvKusD16fzKfwzeFyEdtT3fR3cgou80VdAlV2Wx6omTWpn9R
m3quHAIKs2chkPojiWkKsEvbtPMC7b8SIrUPRqSh+nm6ekEY9SwuUkTaeecL
1S66oS66nywteNm3t4bv8xo.d5593b8UpF7O.L61o2A
-----------end_max5_patcher-----------
</code></pre>
***
import oscP5.*;
import netP5.*;
import controlP5.*;
OscP5 oscP5;
ControlP5 cp5;
float[] axisValues = new float[8];
int[] buttonValues = new int[16];
int[][] hatValues = new int[4][2];
// GUI elements
Slider[] axisSliders;
Toggle[] buttonToggles;
Textlabel[] hatLabels;
void setup() {
fullScreen();
// size(600, 600);
frameRate(60);
// Start OSC
oscP5 = new OscP5(this, 8000);
// Setup GUI
cp5 = new ControlP5(this);
// Axis sliders
axisSliders = new Slider[axisValues.length];
for (int i = 0; i < axisValues.length; i++) {
axisSliders = cp5.addSlider("Axis " + i)
.setPosition(20, 40 + i * 30)
.setSize(150, 20)
.setRange(-1, 1)
.setValue(0);
}
// Button toggles
buttonToggles = new Toggle[buttonValues.length];
for (int i = 0; i < buttonValues.length; i++) {
buttonToggles = cp5.addToggle("Button " + i)
.setPosition(200 + (i % 4) * 80, 40 + (i / 4) * 30)
.setSize(60, 20)
.setValue(false);
}
// Hat labels
hatLabels = new Textlabel[hatValues.length];
for (int i = 0; i < hatValues.length; i++) {
hatLabels = cp5.addTextlabel("Hat " + i)
.setPosition(20, 300 + i * 25)
.setText("Hat " + i + ": (0, 0)");
}
}
void draw() {
background(0);
fill(255);
textSize(16);
text("Gamepad OSC to ControlP5 GUI", 20, 20);
}
void oscEvent(OscMessage m) {
String addr = m.addrPattern();
if (addr.startsWith("/gamepad/axis/")) {
int axisIndex = int(split(addr, '/')[3]);
if (axisIndex < axisValues.length) {
float val = m.get(0).floatValue();
axisValues[axisIndex] = val;
axisSliders[axisIndex].setValue(val);
}
} else if (addr.startsWith("/gamepad/button/")) {
int buttonIndex = int(split(addr, '/')[3]);
if (buttonIndex < buttonValues.length) {
int val = m.get(0).intValue();
buttonValues[buttonIndex] = val;
buttonToggles[buttonIndex].setState(val == 1);
}
} else if (addr.startsWith("/gamepad/hat/")) {
int hatIndex = int(split(addr, '/')[3]);
if (hatIndex < hatValues.length && m.arguments().length >= 2) {
int x = m.get(0).intValue();
int y = m.get(1).intValue();
hatValues[hatIndex][0] = x;
hatValues[hatIndex][1] = y;
hatLabels[hatIndex].setText("Hat " + hatIndex + ": (" + x + ", " + y + ")");
}
}
}
I need assistance in creating a *.bat script that will:
Execute a Python script designed to:
Collect sensor data from a gamepad controller
Transmit the data via Open Sound Control (OSC)
Launch Ableton Live Standard with a specific session containing:
A Control Voltage (CV) Max for Live (M4L) device
Any additional required components
***
@echo off
:: Enhanced Triple Launcher with error handling
setlocal
echo Launching applications...
echo.
:: 1. Launch Python script
if exist "%~dp0gamepad.py" (
echo Starting Python script...
start "" /D "%~dp0" python "gamepad.py"
) else (
echo ERROR: gamepad.py not found at "%~dp0gamepad.py"
)
:: 2. Launch Processing GUI
if exist "%~dp0gui\windows-amd64\gui.exe" (
echo Starting Processing GUI...
start "" /D "%~dp0gui\windows-amd64" "gui.exe"
) else (
echo ERROR: gui.exe not found at "%~dp0gui\windows-amd64\gui.exe"
dir "%~dp0gui\windows-amd64" /s
)
:: 3. Launch Ableton
if exist "C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe" (
if exist "%~dp0cv5_.als" (
echo Starting Ableton with session file...
start "" "C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe" "%~dp0cv5_.als"
) else (
echo ERROR: Session file cv5_.als not found at "%~dp0cv5_.als"
)
) else (
echo ERROR: Ableton not found at standard location
)
echo.
echo All launch commands executed.
timeout /t 5
exit
***
here is the python gamepad module::
import pygame
from pythonosc import udp_client
import time
# Initialize Pygame and the joystick module
pygame.init()
pygame.joystick.init()
# Check for at least one joystick
if pygame.joystick.get_count() == 0:
print("No joystick/gamepad found!")
exit()
# Use the first joystick
joystick = pygame.joystick.Joystick(0)
joystick.init()
print(f"Using joystick: {joystick.get_name()}")
# Set up the OSC client
osc_ip = "127.0.0.1" # Change this to your OSC server IP
osc_port = 8000 # Change this to your desired OSC port
client = udp_client.SimpleUDPClient(osc_ip, osc_port)
# Helper function to send joystick data
def send_joystick_data():
pygame.event.pump() # Update Pygame events
# Send axis data
for i in range(joystick.get_numaxes()):
axis = joystick.get_axis(i)
client.send_message(f"/gamepad/axis/{i}", axis)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Send button data
for i in range(joystick.get_numbuttons()):
button = joystick.get_button(i)
client.send_message(f"/gamepad/button/{i}", button)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Send hat (D-pad) data
for i in range(joystick.get_numhats()):
hat = joystick.get_hat(i)
client.send_message(f"/gamepad/hat/{i}", hat)
time.sleep(0.02) # 5 milliseconds delay to prevent UDP overload
# Main loop
try:
print("Streaming gamepad data over OSC...")
while True:
send_joystick_data()
time.sleep(0.01) # Limit sending rate (~100Hz)
except KeyboardInterrupt:
print("\nStopped by user")
finally:
pygame.quit()
***
regarding the m4l devices:
- a device containing:
- an udp receive mapped to port 8000
- 12 MapButton.maxpat devices
a device containing:
- two beap oscillators mapped to LFOs
a standard LFO mapped to the MapButton thing
***
my doubts:
- the *.bat script is not executing live;
- the python script was initially working and i was able to collect the data in max, but:
- now i have a dumpout error message, and i am not being able to collect sensor data in ableton;
- the python script is still running correctly;
- i am not being able to currently open my m4l patches in ableton (any of the devices i open are opening, but max is getting prompted, and i just can't open the patches)
***
what am i doing uncorrectly
***
now here is the osc thing (it just misses the mapbutton.maxpat:
<pre><code>
----------begin_max5_patcher----------
1383.3oc2Ys0aaaCE9YGf7ePvO6ov6W5aqnuTf0W1drnnPQhwgIxRF5RV5J1
9sORJeQV1lRoHLcyHvQlGSpy24ije7bj990WMa9skOqpmG8tnOGMa12MVl4r
YsLaqgYyWk7bZdRsqiyKT+Y4sOLewleqQ8biydsd4+ryZQ6JcQtpwMD3Vq5L
WOMC+Wnvc8ccRS585hkesRk1zgEI.DKjbBAioDHRxkvEQTJNVPXPpjPEPFfr
HBCiAKhPnXPzW545x1li7cmslusV04BKdKRxmG8EWG96quxd0bYwaMS.7wDB
FNlwoHDPBXbLgv3WrLAQ5kIPrXBEIkBBUhwRHAc4xDBeLAWHiQX.my.PnjfE
vK30DbuLA0Db.gI1oLBkHHxK30DLuLAjDyMhEXHDxgTLjItbYBpOlfw4wlUC
PffwjbJWPvWtLAwKSP.wXBTHXHDByPT3E7ZBrWl.fiMRkLFlyIRF2nZd4xDH
eLAkQ6xrBhQlMGPASdwxDXumcPQBWlUl8GB.jynjK20DXumcPjfXpTfjTJSR
fRA6+SYautRWzLcpv6ZBHPZCQBCYufQiEufe3nYUaditNWmop1CnJUspnIoQ
WVzCTXGlP.G6SMYAagF4.T0ejGD305+xMC.QasjVVzjkzjbP2RSJxzl+ona3
AqON3eGv.9YXn2R6PXhKNXc2YFvdQ.56gaWlVlWV00eyuXVSZO4BXjvwbD08
M6WnCP1x6KqatMwMPJ3nXi0K1.wD.VhP1uch.r2TL5n6CZKvjHH0JeZ9lYKT
28hBjhA2u0pjG6EP931c9fe.V26ngC3n8YyWX9r+26VgMz6fX1Yi9cP.ui+s
cSP2FhHaFUvgwXRUxJUip5qphjaycnY2LP85jTyh.qM7tsu2qSerPUWe50gh
sNGJrH05WJmQ3PGVjVimC2jIOzWeonjGit6z+cFAJzo1+38ABf.c6e.Nc.ih
8OtlbHTiqLdQEcyRypg0IY2j7rt9Fvf1vAsQCZiGzlLnMce6aaaZJK56gMVf
GYAcjE7QVHGYYeoF45BUZYaQyApBGNchOwzoXByljNYP1FwclmYSr+s9ujOA
X5uMybTTpR+jxnoC.S+XY1TXIj6.YI+myR9bSTEmVtZkpW9F6h7O8wO7wnlx
neyzqWzZlS8HA89rQ2jUhaECU3ZH8jhRej9Paci9NiL41DE.gjMtqpb0qBe3
sJWA1cFFnaGj7+l7w6a04YQeqrsJxQMp6tyD.Q2qpTufr38l5JriGnNF.1sU
AJd6IhyxAeP8jNUE8jppw3n7nb8J8KHwcuObXpa1GQc5DPLtKi49A+85rL0g
IGeF93NSFx6xa1luTO6ElSGbH5WMI4XNeH5ORJpi9jJS2tJ52UKayMoe9pqp
tRmoMHc5bk2GAfzoY.6tP3GSUSgW.miWpzlo12WlmEFZPWLcV.NAV.1wBfwX
A3XrvQG0XqJc+cahjT2.b5jCesbtXv9CCntZinR5VmtIgCSbs20YJyd6hc6r
+79W.WT+JIprkh5em+KCBfQg.HvPPNFBruwofh.wnHPDXDvGEA7.i.1nHfEX
DPGEAz.i.xnHfDXDfGEA3.i.znH.EZIowP.Nz6EFUSDy9Yi.34TkguUyBND.
CHBPSBAn.h.7jP.NfHfLIDPBHBnSBAz.h.1jP.KfHfOIDvCHBDSBAh.h.4jP
fLjJRSSTDFTUwIJKFJcQ1TNaHjIqNI.vC3YSCO36LyBapa50vgSwenS5tM0I
lrd8Spp5MinySlZoen6s8HVz0VWz0tqF14UpmzaGBbisjJS8wMlhiaq5JQ8Y
1lG517UkFNtnUuklsAq02t50skzZe8NcCxVW+0WY5v+RdVPEb
-----------end_max5_patcher-----------
</code></pre>
***
and here is the beap stuff
<pre><code>
----------begin_max5_patcher----------
1288.3oc6ZszaaiCD9rCP9OHnyYMDkrcr6sVrsmRQ.5dLnvfVhVlozjBjTNN
awt+1W9PunrksTw5rMcyEYiYHol4a93LhO990WMxeEaOR368NuG7FM56JIiL
xzRFUJXj+V39XBTXZnOE8Da0i92TnaGjSgaQFUYPY7FDuRmDsWZUTIhluESI
HoYrBJkhSLMSMt+FXVUaMCGlltjihkViLZ53fa7lEZddq9YXv3.uu1X3Y4xC
F+RCy5Vk90H+0XBZGhKvLpVG3lREvrrFxG0rSZ33QlYrleSsLL0JCTKii1gq
F5FxgbkaIU9TN2ha6mMwuwPwRPbZN1zsBo+00WUYalPgFyEYvX6.nCYU5qQq
oKzHDHXlAtlDn+Yx7l.lJZmRXweCkzDuF4yxPTLMiiDHpDJKbhZ8In0vbhb4
ZFUJv+owJ.5nxwZv5By73ZqXOumigjZ2HkiSXTsg3FZzxKekO3ALDB8yF9jo
ITX1w5thiovmtzJTNatXEjqibqHlWRXkVIiQb0U2SBZsrPeFlRaCnRV1Izxw
oaNUuWwTZ2dxg2nRrLmZUuTQRjKEvcsPdIjPJlA25MrGRwagRjDaiGgA0ZQT
nxg2Hh4LBw0usp1cLUIJ9eL5Ibhbi4k4POTc.mURr7qC6I3TjP1RnDlJZIRH
e1FBZJKeUwL8kRz1LhxaZ0B0LGrPJ1vdRTzxR5mCTTmSzYleybitJZkibUqL
gGjobU1369z8O.9paKvnmLjKLAKe1Mahl5tds.UL01LW1YlrgDZlJmvUvUU7
HnYChI33uI2vY4oaNP4AQ4incWGZWkpSacnXFOwl20cr1K4PaVJGO7nUGNnB
wTGP6HUItMvTfHLzj3CDYJT..yZCWtUKl5f0F4xmyJxy3KvoTc5od9uVuH23
9XEYQY19UsPkdu7+5L8WZd2ajtgS5lbNRWzjouQ55hz84I24cet7MhWmDuvt
HdQ8j3MEXPo48i2EzESoHR8eJa4dQLlnpdy3uUg7TblYcwYB6YExnYljUQfI
8hzDNrjUcmNpN.+SBO6MR1fIY8sf3uvbLBdGZbLa6V0hjcPipM93N+NwUPWS
dAmCXmal6BVXWcu847AjtWacOlKj3033501+JAcB5I5nQjW2nyWFN5L+bfCX
pc+R.K9eH5b64QmI+hLy5C4XRh2yrbt26ySvLuOtdsxM8TEDQN8ffonXVNUd
Pt2dAoyNKjZKB.lYpTBrKNJbwqQL0BjRl2cplNb12Y20hEQ10OZPpYQudIeV
fZMms8GDpN6RdlaStGXfpam7yJTcRT52M6Np2NDWpLBhGAuEKGNVs3bX0TCH
EVjZKZxAGZhoiavIIs1L7yfgNa8OX7A5p2We02qJYTu+.REdeFkfy258ETZN
Ax+2+SxbOcpVmBEIOU4M+s+fWD9YWO0hhu1v7yzniiwm3Ccc.y.WvbneD7gG
ph2GXjjWdrFS+AfZPOgZvqPntwQToq610gLXbZcC5HHHTk0iKsvhkh40B.RP
prazpbaOTuYR5V1epvfsE8ty2OiQa0fKusD1WaI5xaKfdEjBeYBRQ81XtvQo
ICgwDb4sEPeskvKusD16fzKfwzeFyEdtT3fR3cgou80VdAlV2Wx6omTWpn9R
m3quHAIKs2chkPojiWkKsEvbtPMC7b8SIrUPRqSh+nm6ekEY9SwuUkTaeecL
1S66oS66nywteNm3t4bv8xo.d5593b8UpF7O.L61o2A
-----------end_max5_patcher-----------
</code></pre>
***
import oscP5.*;
import netP5.*;
import controlP5.*;
OscP5 oscP5;
ControlP5 cp5;
float[] axisValues = new float[8];
int[] buttonValues = new int[16];
int[][] hatValues = new int[4][2];
// GUI elements
Slider[] axisSliders;
Toggle[] buttonToggles;
Textlabel[] hatLabels;
void setup() {
fullScreen();
// size(600, 600);
frameRate(60);
// Start OSC
oscP5 = new OscP5(this, 8000);
// Setup GUI
cp5 = new ControlP5(this);
// Axis sliders
axisSliders = new Slider[axisValues.length];
for (int i = 0; i < axisValues.length; i++) {
axisSliders = cp5.addSlider("Axis " + i)
.setPosition(20, 40 + i * 30)
.setSize(150, 20)
.setRange(-1, 1)
.setValue(0);
}
// Button toggles
buttonToggles = new Toggle[buttonValues.length];
for (int i = 0; i < buttonValues.length; i++) {
buttonToggles = cp5.addToggle("Button " + i)
.setPosition(200 + (i % 4) * 80, 40 + (i / 4) * 30)
.setSize(60, 20)
.setValue(false);
}
// Hat labels
hatLabels = new Textlabel[hatValues.length];
for (int i = 0; i < hatValues.length; i++) {
hatLabels = cp5.addTextlabel("Hat " + i)
.setPosition(20, 300 + i * 25)
.setText("Hat " + i + ": (0, 0)");
}
}
void draw() {
background(0);
fill(255);
textSize(16);
text("Gamepad OSC to ControlP5 GUI", 20, 20);
}
void oscEvent(OscMessage m) {
String addr = m.addrPattern();
if (addr.startsWith("/gamepad/axis/")) {
int axisIndex = int(split(addr, '/')[3]);
if (axisIndex < axisValues.length) {
float val = m.get(0).floatValue();
axisValues[axisIndex] = val;
axisSliders[axisIndex].setValue(val);
}
} else if (addr.startsWith("/gamepad/button/")) {
int buttonIndex = int(split(addr, '/')[3]);
if (buttonIndex < buttonValues.length) {
int val = m.get(0).intValue();
buttonValues[buttonIndex] = val;
buttonToggles[buttonIndex].setState(val == 1);
}
} else if (addr.startsWith("/gamepad/hat/")) {
int hatIndex = int(split(addr, '/')[3]);
if (hatIndex < hatValues.length && m.arguments().length >= 2) {
int x = m.get(0).intValue();
int y = m.get(1).intValue();
hatValues[hatIndex][0] = x;
hatValues[hatIndex][1] = y;
hatLabels[hatIndex].setText("Hat " + hatIndex + ": (" + x + ", " + y + ")");
}
}
}
Last edited by tiago_vla on Mon Jun 02, 2025 3:31 pm, edited 6 times in total.
Re: problems with live electronics environment
regarding the prompted execution of ableton session alongside with python script, i think i may have found the session
the problem was the following:
- i needed two separate command instructions for running them both
the reason was:
- the python script was running continuously
- the python script was preventing ableton from running
***
here is the corrected version of the script:
***
@echo off
setlocal enabledelayedexpansion
:: =============================================
:: Ableton Live Launcher with Python Preloader
:: =============================================
:: Configuration
set ABLETON_PATH="C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe"
set PYTHON_SCRIPT="%~dp0gamepad.py"
set SESSION_FILE="%~dp0cv5.als"
set WAIT_TIME=3
:: Launch Python script in a NEW WINDOW (non-blocking)
echo Starting gamepad controller in new window...
start "Gamepad Controller" cmd /c python %PYTHON_SCRIPT%
:: Wait briefly to let Python initialize
timeout /t %WAIT_TIME% /nobreak >nul
:: Launch Ableton in main window
echo Launching Ableton Live...
start "" /D "%~dp0" %ABLETON_PATH% %SESSION_FILE%
echo Both processes started successfully!
echo - Python running in separate window
echo - Ableton Live launching in main window
:: Optional: Close this window after 5 seconds
timeout /t 5 /nobreak >nul
exit
***
the other problems persist
the problem was the following:
- i needed two separate command instructions for running them both
the reason was:
- the python script was running continuously
- the python script was preventing ableton from running
***
here is the corrected version of the script:
***
@echo off
setlocal enabledelayedexpansion
:: =============================================
:: Ableton Live Launcher with Python Preloader
:: =============================================
:: Configuration
set ABLETON_PATH="C:\ProgramData\Ableton\Live 10 Standard\Program\Ableton Live 10 Standard.exe"
set PYTHON_SCRIPT="%~dp0gamepad.py"
set SESSION_FILE="%~dp0cv5.als"
set WAIT_TIME=3
:: Launch Python script in a NEW WINDOW (non-blocking)
echo Starting gamepad controller in new window...
start "Gamepad Controller" cmd /c python %PYTHON_SCRIPT%
:: Wait briefly to let Python initialize
timeout /t %WAIT_TIME% /nobreak >nul
:: Launch Ableton in main window
echo Launching Ableton Live...
start "" /D "%~dp0" %ABLETON_PATH% %SESSION_FILE%
echo Both processes started successfully!
echo - Python running in separate window
echo - Ableton Live launching in main window
:: Optional: Close this window after 5 seconds
timeout /t 5 /nobreak >nul
exit
***
the other problems persist
Re: problems with live electronics environment
regarding the issue of not receiving osc data and max not opening:
- i was running the ableton with dsp off
this was causing:
- malfunction instantiation (these features depend on ableton dsp to be activated, and of continuous schedulling of audio rate ableton dsp), which:
- was making ableton stuck
to fix this:
- turn ableton dsp on
it would be interested if:
- this bug could be fixed (both in older and newer versions of live, within major releases)
- i was running the ableton with dsp off
this was causing:
- malfunction instantiation (these features depend on ableton dsp to be activated, and of continuous schedulling of audio rate ableton dsp), which:
- was making ableton stuck
to fix this:
- turn ableton dsp on
it would be interested if:
- this bug could be fixed (both in older and newer versions of live, within major releases)
Re: problems with live electronics environment
now:
- i would just fix this to get more continuous data
***
import pygame
from pythonosc import udp_client
import time
# Initialize Pygame and the joystick module
pygame.init()
pygame.joystick.init()
# Check for at least one joystick
if pygame.joystick.get_count() == 0:
print("No joystick/gamepad found!")
exit()
# Use the first joystick
joystick = pygame.joystick.Joystick(0)
joystick.init()
print(f"Using joystick: {joystick.get_name()}")
# Set up the OSC client
osc_ip = "127.0.0.1" # Change this to your OSC server IP
osc_port = 8000 # Change this to your desired OSC port
client = udp_client.SimpleUDPClient(osc_ip, osc_port)
# Helper function to send joystick data
def send_joystick_data():
pygame.event.pump() # Update Pygame events
# Send axis data
for i in range(joystick.get_numaxes()):
axis = joystick.get_axis(i)
client.send_message(f"/gamepad/axis/{i}", axis)
# Send button data
for i in range(joystick.get_numbuttons()):
button = joystick.get_button(i)
client.send_message(f"/gamepad/button/{i}", button)
# Send hat (D-pad) data
for i in range(joystick.get_numhats()):
hat = joystick.get_hat(i)
client.send_message(f"/gamepad/hat/{i}", hat)
# Main loop
try:
print("Streaming gamepad data over OSC...")
while True:
send_joystick_data()
time.sleep(0.01) # Limit sending rate (~100Hz)
except KeyboardInterrupt:
print("\nStopped by user")
finally:
pygame.quit()
- i would just fix this to get more continuous data
***
import pygame
from pythonosc import udp_client
import time
# Initialize Pygame and the joystick module
pygame.init()
pygame.joystick.init()
# Check for at least one joystick
if pygame.joystick.get_count() == 0:
print("No joystick/gamepad found!")
exit()
# Use the first joystick
joystick = pygame.joystick.Joystick(0)
joystick.init()
print(f"Using joystick: {joystick.get_name()}")
# Set up the OSC client
osc_ip = "127.0.0.1" # Change this to your OSC server IP
osc_port = 8000 # Change this to your desired OSC port
client = udp_client.SimpleUDPClient(osc_ip, osc_port)
# Helper function to send joystick data
def send_joystick_data():
pygame.event.pump() # Update Pygame events
# Send axis data
for i in range(joystick.get_numaxes()):
axis = joystick.get_axis(i)
client.send_message(f"/gamepad/axis/{i}", axis)
# Send button data
for i in range(joystick.get_numbuttons()):
button = joystick.get_button(i)
client.send_message(f"/gamepad/button/{i}", button)
# Send hat (D-pad) data
for i in range(joystick.get_numhats()):
hat = joystick.get_hat(i)
client.send_message(f"/gamepad/hat/{i}", hat)
# Main loop
try:
print("Streaming gamepad data over OSC...")
while True:
send_joystick_data()
time.sleep(0.01) # Limit sending rate (~100Hz)
except KeyboardInterrupt:
print("\nStopped by user")
finally:
pygame.quit()
Re: problems with live electronics environment
now here is the osc thing (it just misses the mapbutton.maxpat:
<pre><code>
----------begin_max5_patcher----------
1383.3oc2Ys0aaaCE9YGf7ePvO6ov6W5aqnuTf0W1drnnPQhwgIxRF5RV5J1
9sORJeQV1lRoHLcyHvQlGSpy24ije7bj990WMa9skOqpmG8tnOGMa12MVl4r
YsLaqgYyWk7bZdRsqiyKT+Y4sOLewleqQ8biydsd4+ryZQ6JcQtpwMD3Vq5L
WOMC+Wnvc8ccRS585hkesRk1zgEI.DKjbBAioDHRxkvEQTJNVPXPpjPEPFfr
HBCiAKhPnXPzW545x1li7cmslusV04BKdKRxmG8EWG96quxd0bYwaMS.7wDB
FNlwoHDPBXbLgv3WrLAQ5kIPrXBEIkBBUhwRHAc4xDBeLAWHiQX.my.PnjfE
vK30DbuLA0Db.gI1oLBkHHxK30DLuLAjDyMhEXHDxgTLjItbYBpOlfw4wlUC
PffwjbJWPvWtLAwKSP.wXBTHXHDByPT3E7ZBrWl.fiMRkLFlyIRF2nZd4xDH
eLAkQ6xrBhQlMGPASdwxDXumcPQBWlUl8GB.jynjK20DXumcPjfXpTfjTJSR
fRA6+SYautRWzLcpv6ZBHPZCQBCYufQiEufe3nYUaditNWmop1CnJUspnIoQ
WVzCTXGlP.G6SMYAagF4.T0ejGD305+xMC.QasjVVzjkzjbP2RSJxzl+ona3
AqON3eGv.9YXn2R6PXhKNXc2YFvdQ.56gaWlVlWV00eyuXVSZO4BXjvwbD08
M6WnCP1x6KqatMwMPJ3nXi0K1.wD.VhP1uch.r2TL5n6CZKvjHH0JeZ9lYKT
28hBjhA2u0pjG6EP931c9fe.V26ngC3n8YyWX9r+26VgMz6fX1Yi9cP.ui+s
cSP2FhHaFUvgwXRUxJUip5qphjaycnY2LP85jTyh.qM7tsu2qSerPUWe50gh
sNGJrH05WJmQ3PGVjVimC2jIOzWeonjGit6z+cFAJzo1+38ABf.c6e.Nc.ih
8OtlbHTiqLdQEcyRypg0IY2j7rt9Fvf1vAsQCZiGzlLnMce6aaaZJK56gMVf
GYAcjE7QVHGYYeoF45BUZYaQyApBGNchOwzoXByljNYP1FwclmYSr+s9ujOA
X5uMybTTpR+jxnoC.S+XY1TXIj6.YI+myR9bSTEmVtZkpW9F6h7O8wO7wnlx
neyzqWzZlS8HA89rQ2jUhaECU3ZH8jhRej9Paci9NiL41DE.gjMtqpb0qBe3
sJWA1cFFnaGj7+l7w6a04YQeqrsJxQMp6tyD.Q2qpTufr38l5JriGnNF.1sU
AJd6IhyxAeP8jNUE8jppw3n7nb8J8KHwcuObXpa1GQc5DPLtKi49A+85rL0g
IGeF93NSFx6xa1luTO6ElSGbH5WMI4XNeH5ORJpi9jJS2tJ52UKayMoe9pqp
tRmoMHc5bk2GAfzoY.6tP3GSUSgW.miWpzlo12WlmEFZPWLcV.NAV.1wBfwX
A3XrvQG0XqJc+cahjT2.b5jCesbtXv9CCntZinR5VmtIgCSbs20YJyd6hc6r
+79W.WT+JIprkh5em+KCBfQg.HvPPNFBruwofh.wnHPDXDvGEA7.i.1nHfEX
DPGEAz.i.xnHfDXDfGEA3.i.znH.EZIowP.Nz6EFUSDy9Yi.34TkguUyBND.
CHBPSBAn.h.7jP.NfHfLIDPBHBnSBAz.h.1jP.KfHfOIDvCHBDSBAh.h.4jP
fLjJRSSTDFTUwIJKFJcQ1TNaHjIqNI.vC3YSCO36LyBapa50vgSwenS5tM0I
lrd8Spp5MinySlZoen6s8HVz0VWz0tqF14UpmzaGBbisjJS8wMlhiaq5JQ8Y
1lG517UkFNtnUuklsAq02t50skzZe8NcCxVW+0WY5v+RdVPEb
-----------end_max5_patcher-----------
</code></pre>
<pre><code>
----------begin_max5_patcher----------
1383.3oc2Ys0aaaCE9YGf7ePvO6ov6W5aqnuTf0W1drnnPQhwgIxRF5RV5J1
9sORJeQV1lRoHLcyHvQlGSpy24ije7bj990WMa9skOqpmG8tnOGMa12MVl4r
YsLaqgYyWk7bZdRsqiyKT+Y4sOLewleqQ8biydsd4+ryZQ6JcQtpwMD3Vq5L
WOMC+Wnvc8ccRS585hkesRk1zgEI.DKjbBAioDHRxkvEQTJNVPXPpjPEPFfr
HBCiAKhPnXPzW545x1li7cmslusV04BKdKRxmG8EWG96quxd0bYwaMS.7wDB
FNlwoHDPBXbLgv3WrLAQ5kIPrXBEIkBBUhwRHAc4xDBeLAWHiQX.my.PnjfE
vK30DbuLA0Db.gI1oLBkHHxK30DLuLAjDyMhEXHDxgTLjItbYBpOlfw4wlUC
PffwjbJWPvWtLAwKSP.wXBTHXHDByPT3E7ZBrWl.fiMRkLFlyIRF2nZd4xDH
eLAkQ6xrBhQlMGPASdwxDXumcPQBWlUl8GB.jynjK20DXumcPjfXpTfjTJSR
fRA6+SYautRWzLcpv6ZBHPZCQBCYufQiEufe3nYUaditNWmop1CnJUspnIoQ
WVzCTXGlP.G6SMYAagF4.T0ejGD305+xMC.QasjVVzjkzjbP2RSJxzl+ona3
AqON3eGv.9YXn2R6PXhKNXc2YFvdQ.56gaWlVlWV00eyuXVSZO4BXjvwbD08
M6WnCP1x6KqatMwMPJ3nXi0K1.wD.VhP1uch.r2TL5n6CZKvjHH0JeZ9lYKT
28hBjhA2u0pjG6EP931c9fe.V26ngC3n8YyWX9r+26VgMz6fX1Yi9cP.ui+s
cSP2FhHaFUvgwXRUxJUip5qphjaycnY2LP85jTyh.qM7tsu2qSerPUWe50gh
sNGJrH05WJmQ3PGVjVimC2jIOzWeonjGit6z+cFAJzo1+38ABf.c6e.Nc.ih
8OtlbHTiqLdQEcyRypg0IY2j7rt9Fvf1vAsQCZiGzlLnMce6aaaZJK56gMVf
GYAcjE7QVHGYYeoF45BUZYaQyApBGNchOwzoXByljNYP1FwclmYSr+s9ujOA
X5uMybTTpR+jxnoC.S+XY1TXIj6.YI+myR9bSTEmVtZkpW9F6h7O8wO7wnlx
neyzqWzZlS8HA89rQ2jUhaECU3ZH8jhRej9Paci9NiL41DE.gjMtqpb0qBe3
sJWA1cFFnaGj7+l7w6a04YQeqrsJxQMp6tyD.Q2qpTufr38l5JriGnNF.1sU
AJd6IhyxAeP8jNUE8jppw3n7nb8J8KHwcuObXpa1GQc5DPLtKi49A+85rL0g
IGeF93NSFx6xa1luTO6ElSGbH5WMI4XNeH5ORJpi9jJS2tJ52UKayMoe9pqp
tRmoMHc5bk2GAfzoY.6tP3GSUSgW.miWpzlo12WlmEFZPWLcV.NAV.1wBfwX
A3XrvQG0XqJc+cahjT2.b5jCesbtXv9CCntZinR5VmtIgCSbs20YJyd6hc6r
+79W.WT+JIprkh5em+KCBfQg.HvPPNFBruwofh.wnHPDXDvGEA7.i.1nHfEX
DPGEAz.i.xnHfDXDfGEA3.i.znH.EZIowP.Nz6EFUSDy9Yi.34TkguUyBND.
CHBPSBAn.h.7jP.NfHfLIDPBHBnSBAz.h.1jP.KfHfOIDvCHBDSBAh.h.4jP
fLjJRSSTDFTUwIJKFJcQ1TNaHjIqNI.vC3YSCO36LyBapa50vgSwenS5tM0I
lrd8Spp5MinySlZoen6s8HVz0VWz0tqF14UpmzaGBbisjJS8wMlhiaq5JQ8Y
1lG517UkFNtnUuklsAq02t50skzZe8NcCxVW+0WY5v+RdVPEb
-----------end_max5_patcher-----------
</code></pre>
Re: problems with live electronics environment
and here is the beap stuff
<pre><code>
----------begin_max5_patcher----------
1288.3oc6ZszaaiCD9rCP9OHnyYMDkrcr6sVrsmRQ.5dLnvfVhVlozjBjTNN
awt+1W9PunrksTw5rMcyEYiYHol4a93LhO990WMxeEaOR368NuG7FM56JIiL
xzRFUJXj+V39XBTXZnOE8Da0i92TnaGjSgaQFUYPY7FDuRmDsWZUTIhluESI
HoYrBJkhSLMSMt+FXVUaMCGlltjihkViLZ53fa7lEZddq9YXv3.uu1X3Y4xC
F+RCy5Vk90H+0XBZGhKvLpVG3lREvrrFxG0rSZ33QlYrleSsLL0JCTKii1gq
F5FxgbkaIU9TN2ha6mMwuwPwRPbZN1zsBo+00WUYalPgFyEYvX6.nCYU5qQq
oKzHDHXlAtlDn+Yx7l.lJZmRXweCkzDuF4yxPTLMiiDHpDJKbhZ8In0vbhb4
ZFUJv+owJ.5nxwZv5By73ZqXOumigjZ2HkiSXTsg3FZzxKekO3ALDB8yF9jo
ITX1w5thiovmtzJTNatXEjqibqHlWRXkVIiQb0U2SBZsrPeFlRaCnRV1Izxw
oaNUuWwTZ2dxg2nRrLmZUuTQRjKEvcsPdIjPJlA25MrGRwagRjDaiGgA0ZQT
nxg2Hh4LBw0usp1cLUIJ9eL5Ibhbi4k4POTc.mURr7qC6I3TjP1RnDlJZIRH
e1FBZJKeUwL8kRz1LhxaZ0B0LGrPJ1vdRTzxR5mCTTmSzYleybitJZkibUqL
gGjobU1369z8O.9paKvnmLjKLAKe1Mahl5tds.UL01LW1YlrgDZlJmvUvUU7
HnYChI33uI2vY4oaNP4AQ4incWGZWkpSacnXFOwl20cr1K4PaVJGO7nUGNnB
wTGP6HUItMvTfHLzj3CDYJT..yZCWtUKl5f0F4xmyJxy3KvoTc5od9uVuH23
9XEYQY19UsPkdu7+5L8WZd2ajtgS5lbNRWzjouQ55hz84I24cet7MhWmDuvt
HdQ8j3MEXPo48i2EzESoHR8eJa4dQLlnpdy3uUg7TblYcwYB6YExnYljUQfI
8hzDNrjUcmNpN.+SBO6MR1fIY8sf3uvbLBdGZbLa6V0hjcPipM93N+NwUPWS
dAmCXmal6BVXWcu847AjtWacOlKj3033501+JAcB5I5nQjW2nyWFN5L+bfCX
pc+R.K9eH5b64QmI+hLy5C4XRh2yrbt26ySvLuOtdsxM8TEDQN8ffonXVNUd
Pt2dAoyNKjZKB.lYpTBrKNJbwqQL0BjRl2cplNb12Y20hEQ10OZPpYQudIeV
fZMms8GDpN6RdlaStGXfpam7yJTcRT52M6Np2NDWpLBhGAuEKGNVs3bX0TCH
EVjZKZxAGZhoiavIIs1L7yfgNa8OX7A5p2We02qJYTu+.REdeFkfy258ETZN
Ax+2+SxbOcpVmBEIOU4M+s+fWD9YWO0hhu1v7yzniiwm3Ccc.y.WvbneD7gG
ph2GXjjWdrFS+AfZPOgZvqPntwQToq610gLXbZcC5HHHTk0iKsvhkh40B.RP
prazpbaOTuYR5V1epvfsE8ty2OiQa0fKusD1WaI5xaKfdEjBeYBRQ81XtvQo
ICgwDb4sEPeskvKusD16fzKfwzeFyEdtT3fR3cgou80VdAlV2Wx6omTWpn9R
m3quHAIKs2chkPojiWkKsEvbtPMC7b8SIrUPRqSh+nm6ekEY9SwuUkTaeecL
1S66oS66nywteNm3t4bv8xo.d5593b8UpF7O.L61o2A
-----------end_max5_patcher-----------
</code></pre>
<pre><code>
----------begin_max5_patcher----------
1288.3oc6ZszaaiCD9rCP9OHnyYMDkrcr6sVrsmRQ.5dLnvfVhVlozjBjTNN
awt+1W9PunrksTw5rMcyEYiYHol4a93LhO990WMxeEaOR368NuG7FM56JIiL
xzRFUJXj+V39XBTXZnOE8Da0i92TnaGjSgaQFUYPY7FDuRmDsWZUTIhluESI
HoYrBJkhSLMSMt+FXVUaMCGlltjihkViLZ53fa7lEZddq9YXv3.uu1X3Y4xC
F+RCy5Vk90H+0XBZGhKvLpVG3lREvrrFxG0rSZ33QlYrleSsLL0JCTKii1gq
F5FxgbkaIU9TN2ha6mMwuwPwRPbZN1zsBo+00WUYalPgFyEYvX6.nCYU5qQq
oKzHDHXlAtlDn+Yx7l.lJZmRXweCkzDuF4yxPTLMiiDHpDJKbhZ8In0vbhb4
ZFUJv+owJ.5nxwZv5By73ZqXOumigjZ2HkiSXTsg3FZzxKekO3ALDB8yF9jo
ITX1w5thiovmtzJTNatXEjqibqHlWRXkVIiQb0U2SBZsrPeFlRaCnRV1Izxw
oaNUuWwTZ2dxg2nRrLmZUuTQRjKEvcsPdIjPJlA25MrGRwagRjDaiGgA0ZQT
nxg2Hh4LBw0usp1cLUIJ9eL5Ibhbi4k4POTc.mURr7qC6I3TjP1RnDlJZIRH
e1FBZJKeUwL8kRz1LhxaZ0B0LGrPJ1vdRTzxR5mCTTmSzYleybitJZkibUqL
gGjobU1369z8O.9paKvnmLjKLAKe1Mahl5tds.UL01LW1YlrgDZlJmvUvUU7
HnYChI33uI2vY4oaNP4AQ4incWGZWkpSacnXFOwl20cr1K4PaVJGO7nUGNnB
wTGP6HUItMvTfHLzj3CDYJT..yZCWtUKl5f0F4xmyJxy3KvoTc5od9uVuH23
9XEYQY19UsPkdu7+5L8WZd2ajtgS5lbNRWzjouQ55hz84I24cet7MhWmDuvt
HdQ8j3MEXPo48i2EzESoHR8eJa4dQLlnpdy3uUg7TblYcwYB6YExnYljUQfI
8hzDNrjUcmNpN.+SBO6MR1fIY8sf3uvbLBdGZbLa6V0hjcPipM93N+NwUPWS
dAmCXmal6BVXWcu847AjtWacOlKj3033501+JAcB5I5nQjW2nyWFN5L+bfCX
pc+R.K9eH5b64QmI+hLy5C4XRh2yrbt26ySvLuOtdsxM8TEDQN8ffonXVNUd
Pt2dAoyNKjZKB.lYpTBrKNJbwqQL0BjRl2cplNb12Y20hEQ10OZPpYQudIeV
fZMms8GDpN6RdlaStGXfpam7yJTcRT52M6Np2NDWpLBhGAuEKGNVs3bX0TCH
EVjZKZxAGZhoiavIIs1L7yfgNa8OX7A5p2We02qJYTu+.REdeFkfy258ETZN
Ax+2+SxbOcpVmBEIOU4M+s+fWD9YWO0hhu1v7yzniiwm3Ccc.y.WvbneD7gG
ph2GXjjWdrFS+AfZPOgZvqPntwQToq610gLXbZcC5HHHTk0iKsvhkh40B.RP
prazpbaOTuYR5V1epvfsE8ty2OiQa0fKusD1WaI5xaKfdEjBeYBRQ81XtvQo
ICgwDb4sEPeskvKusD16fzKfwzeFyEdtT3fR3cgou80VdAlV2Wx6omTWpn9R
m3quHAIKs2chkPojiWkKsEvbtPMC7b8SIrUPRqSh+nm6ekEY9SwuUkTaeecL
1S66oS66nywteNm3t4bv8xo.d5593b8UpF7O.L61o2A
-----------end_max5_patcher-----------
</code></pre>
Re: problems with live electronics environment
so, now:
- I am missing the osc->parameter mappings (shall be fixed by the end of the day);
- I am missing the mapping logics
I shall have it fixed by the end of the day. at the time i will post my updates. I will leave this forum thread opened in case any doubts may occur
- I am missing the osc->parameter mappings (shall be fixed by the end of the day);
- I am missing the mapping logics
I shall have it fixed by the end of the day. at the time i will post my updates. I will leave this forum thread opened in case any doubts may occur
Re: problems with live electronics environment
I am getting my dsp frozen with cpu overload at times
even just with a couple devices and nothing like way too wild
even just with a couple devices and nothing like way too wild
Re: problems with live electronics environment
by the way, is there like a touchdesigner visualization you guys can recommend me for this?
or a video tutorial? specially if it's focused on audio reactive gpu particle systems?
cheers
or a video tutorial? specially if it's focused on audio reactive gpu particle systems?
cheers
Re: problems with live electronics environment
the reason why the dsp is getting stuck and overloaded may simply be:
- the fact that i am running the asio4all drivers with clam 2 Bluetooth headphones
the bluetooth audio streaming via ASIO may be getting the audio to overload
a possible mean to fix this is: using the ASIO driver with focusrite scarlett solo either via asio4all or common asio
- the fact that i am running the asio4all drivers with clam 2 Bluetooth headphones
the bluetooth audio streaming via ASIO may be getting the audio to overload
a possible mean to fix this is: using the ASIO driver with focusrite scarlett solo either via asio4all or common asio