O documento discute a comunicação de rede entre aplicações Max/MSP através de protocolos como UDP e OSC. Apresenta os objetos [udpsend], [udpreceive] para envio e recebimento de mensagens simples e estruturadas (OSC), e os objetos jit.net.send e jit.net.recv para transmissão de dados de vídeo entre patches Jitter em diferentes computadores.
3. Comunicação em rede O patch tem (normalmente) apenas um papel bem definido: Emissor ou receptor O Emissor precisa de saber o endereço do receptor: hostname ou endereço IP (do computador) Porta de rede (escolhida pelo programador) O Receptor apenas precisa de definir: Porta de rede onde pretende ficar à escuta (A porta é simplesmente um número inteiro à escolha do programador. Convém ser um valor superior a 1024 para não colidir com portas atribuídas a outras funções de sistema) 18-04-2010 Jorge C. S. Cardoso 3
4. udpsend/udpreceive – mensagens simples O emissor usa [udpsend] Dois parâmetros: hostname/ip e porta (do receptor) O receptor usa [udpreceive] Um parâmetro: porta Mensagens Todas as mensagens enviadas para o [udpsend] são transmitidas para o [udpreceive] Hostname/IP Para testes em apenas uma máquina podemos usar: “localhost” ou 127.0.0.1 (ambos designam a própria máquina onde o programa está a correr) Exemplos 1-SendReceive.maxpat 18-04-2010 Jorge C. S. Cardoso 4
5. udpsend/udpreceive – mensagens estruturadas via OSC OSC – Open Sound Control Protocolo baseado em mensagens de texto Defina estrutura das mensagens e tipos de dados Funciona sobre UDP, TCP, etc Estrutura típica das mensagens: /nomeMensagem parametro1 parametro2 … Começa sempre com “/” Os parâmetros podem ser de vários tipos Inteiro, float, string Várias aplicações suportam OSC Os objectos [udpsend] e [udpreceive] estão já preparados para enviar e receber mensagens no formato OSC 18-04-2010 Jorge C. S. Cardoso 5
6. udpsend/udpreceive – mensagens estruturadas via OSC Exemplo 2-SendReceive-OSC.maxpat Comunicação entre Max e OSCControl OSCControl: aplicação windows que permite criar uma interface gráfica com vários controlos e enviar os valores desses controlos via OSC 18-04-2010 Jorge C. S. Cardoso 6
7. Dados de vídeo Para enviar vídeo entre patchs de Jitter em computadores diferentes existem dois objectos especializados: jit.net.send e jit.net.recv Tal como com os objectos [udpsend] e [udpreceive] é necessário saber o IP e porta do receptor. Exemplo 3-SendReceiveVideo.maxpat 18-04-2010 Jorge C. S. Cardoso 7