Вы можете использовать библиотеку Python socket
для подключения к Pd-патчу, который отправляет информацию через [netsend]
. Вот рабочий минимальный пример. В Pd создайте простое исправление, которое подключает [netsend]
к порту в вашей localhost
сети:
Создание и сохранение сценария слушателя в Python (адаптировано с здесь ). В приведенном ниже сценарии используется Python 3.6:
import socket
import sys
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_address = ('localhost', 13001)
print(f'starting up on {server_address[0]} port {server_address[1]}')
sock.bind(server_address)
sock.listen(1)
while True:
print('waiting for a connection')
connection, client_address = sock.accept()
try:
print('client connected:', client_address)
while True:
data = connection.recv(16)
data = data.decode("utf-8")
data = data.replace('\n', '').replace('\t','').replace('\r','').replace(';','')
print(f'received {data}')
if not data:
break
finally:
connection.close()
Запустите этот сценарий, затем запустите патч Pd. Перетаскивание этого числового поля отправит значения на Python. В этом примере выше все полученные значения просто напечатаны с их метками:
Затем вы можете адаптировать их к вашим потребностям.