hiperorganicos 4: audio streaming por dados e parâmetros

postado em: Blog, Processos | 0

Esta é uma proposta de solução para o streaming de áudio via rede OSC. Nenhuma compressão é usada, mas para facilitar, vamos usar o conceito de encoders e decoders.

Neste sistema, tanto os dados quanto a parametrização do sintetizador-encoder são enviados pela rede para controlar os sintetizadores-decoders.

Pegando como exemplo o patch criado pelo prof. Rodrigo Cicchelli, que utiliza os dados enviados pelo terrário:

hiper4 audio streaming 1

 

São adicionados os nós para envio dos parâmetros e valores utilizados (/rodrigo/a, b, c):

hiper4 audio streaming 2O patch decoder é uma versão simplificada do sintetizador e depende do encoder para que mantenha os mesmos dados e parâmetros utilizados:

hiper4 audio streaming 3

 

Abaixo um vídeo demonstrativo desse funcionamento:

proposta de software: osc flow

postado em: Blog, Processos | 0

Proposta de software com interface grafica que funciona em conjunto com o OscGroups, servindo de camada para mapear mais facilmente os processos listados em endereço osc para endereços simples como /a /b /c /, baseado no funcionamento de softwares como Osculator, que faz o mapeamento entre dados OSC e MIDI.

Da mesma maneira como o OscGroups, voce recebe e envia mensagens via endereço local (localhost ou 127.0.0.1). Possivelmente vamos mudar as portas padrão do patch, pois esse software ficaria nas portas 22243 e 22244 utilizadas pelo OscGroups, e no PD, MAX, Processing e afins você usaria as portas 9998 (envio) e 9999 (recebimento).

Como esse software ficará no meio da comunicação OSC, ele terá a informação dos dados selecionados e envia esses dados de volta pra rede (um ping de 1 em 1 segundo, pra não sobrecarregar).

ex: (/kiko/listening/a <=> /terrario/luz)

Com isso será possível tanto o multicast de dados quanto a informação para a visualização de dados mais detalhada, com os pontos conectados entre si.

As conexões perdidas ficam de outra cor pra avisar o usuário, que decide se mantém o link para esperar voltar o sinal, ou muda para outro endereço. Mas depois de 1 min sem resposta, os endereços inativos saem da lista.

nano-osc-flow-monitor

Raspberry Pi: login automático, framework de automação, Arduino

postado em: Processos | 2

login automático

quando o raspberry liga, entra no terminal e é precisa digitar o comando startx para iniciar a interface gráfica.
aqui um passo a passo com instruções para iniciar o sistema automaticamente:
http://raspisimon.no-ip.org/rpi_autologin.php


 

framework de automação
solução de automação que integra Raspberry PI, Arduino, Node.js, MongoDB, HTML5 e Websockets
http://ni-c.github.io/heimcontrol.js/

raspberry pi heimcontrol


 

raspberry pi + arduino
tutorial bem explicado de como conectar os Arduino e Raspberry através da GPIO
http://blog.oscarliang.net/raspberry-pi-and-arduino-connected-serial-gpio/

arduino-raspberry-pi-serial-connect-1024x839

silk pavilion: domo geodésico construído com cnc e 6.500 bichos-da-seda

postado em: Blog | 0

Pesquisadores do MIT Media Lab desenvolvem um domo com ajuda de uma máquina CNC e bichos-da-seda:

fonte: http://www.theverge.com/2013/6/6/4401184/mit-media-lab-silk-pavilion

The Silk Pavilion explores the relationship between digital and biological fabrication on product and architectural scales.The primary structure was created of 26 polygonal panels made of silk threads laid down by a CNC (Computer-Numerically Controlled) machine. Inspired by the silkworm’s ability to generate a 3D cocoon out of a single multi-property silk thread (1km in length), the overall geometry of the pavilion was created using an algorithm that assigns a single continuous thread across patches providing various degrees of density.Overall density variation was informed by the silkworm itself deployed as a biological “printer” in the creation of a secondary structure. A swarm of 6,500 silkworms was positioned at the bottom rim of the scaffold spinning flat non-woven silk patches as they locally reinforced the gaps across CNC-deposited silk fibers. Following their pupation stage the silkworms were removed. Resulting moths can produce 1.5 million eggs with the potential of constructing up to 250 additional pavilions.Affected by spatial and environmental conditions including geometrical density as well as variation in natural light and heat, the silkworms were found to migrate to darker and denser areas. Desired light effects informed variations in material organization across the surface area of the structure. A season-specific sun path diagram mapping solar trajectories in space dictated the location, size and density of apertures within the structure in order to lock-in rays of natural light entering the pavilion from South and East elevations. The central oculus is located against the East elevation and may be used as a sun-clock.Parallel basic research explored the use of silkworms as entities that can “compute” material organization based on external performance criteria. Specifically, we explored the formation of non-woven fiber structures generated by the silkworms as a computational schema for determining shape and material optimization of fiber-based surface structures.Research and Design by the Mediated Matter Research Group at the MIT Media Lab in collaboration with Prof. Fiorenzo Omenetto (TUFTS University) and Dr. James Weaver (WYSS Institute, Harvard University). Mediated Matter researchers include Markus Kayser, Jared Laucks, Carlos David Gonzalez Uribe, Jorge Duro-Royo and Neri Oxman (Director).

Arduino: relé e millis()

postado em: Blog, Processos | 7

Usar o relógio interno do Arduino com o metodo millis() permite criar algoritmos que podem rodar simultaneamente em paralelo, o que não acontece quando usamos delay(), que “pausa” o Arduino por um tempo determinado.

Abaixo um código exemplo para o terrário do NANO, onde ligamos e desligamos uma lâmpada de 8 em 8 horas (mas que poderia ser qualquer intervalo de tempo). A partir desse modelo pode-se criar outras variáveis e ciclos para controlar outros relés (para água por exemplo), e outros dispositivos.

uma explicação rápida:
usamos unsigned long para guardar valores positivos muito longos, adequado para guardar o valor de millis(), que retorna o tempo sempre em milisegundos (1000 equivale a um segundo).
para ler mais facilmente os intervalos, multiplicamos valores como 10 * 1000; mas em C, para definir um número longo a partir de uma operação matemático, precisamos indicar o tipo dos valores, no caso L de long; 10L * 1000L seriam 10.000 milisegundos (= 10 segundos). 8 horas seriam como colocamos: 8L (horas) * 60L (minutos em uma hora) * 60L (segundos em um minuto) * 1000L (milisegundos em um segundo)
criamos o método print_clock, que recebe como parametro um unsigned long e envia para porta serial o cálculo do tempo em que o programa está rodando. criar os próprios métodos ajuda a manter o código modular, fácil de ser transportado para outros programas.
o ciclo só é executado quando a diferença entre o millis atual (tempo) e o millis guardado (tempo_luz) for maior que o ciclo que definimos (tempo_luz_ciclo).
quando o programa começa, tempo_luz é zero, então assim que o millis() atinge um valor maior que tempo_luz_ciclo, ele roda pela primeira vez. aí então ele guarda o valor de tempo_luz pela primeira vez:
depois disso, ele inverte o boleano volt_luz para ligar ou desligar o relé

nano em 3d

postado em: Processos | 1

Depois de algumas semanas de ajustes, finalmente a Printrbot parece estar calibrada. Abaixo um vídeo do processo de impressão da marca do NANO.

Pelo seu desenho, a marca combinou muito com a impressão com textura cocêntrica, uma das que estou tendo melhores resultados, desenhando contornos dos objetos de fora pra dentro.

Realmente, as impressoras 3d não são pra qualquer um, não são plug and play, pelo menos essas comercializadas em kits “faça você mesmo”, as mais baratas do mercado e mais fáceis de replicar. São muitos ajustes mecânicos (alinhamento dos eixos, ajustes milimetricos de parafuso) e regulagens de software (temperatura da extrusão, velocidade da impressão, tipo de preenchimento) para conseguir uma impressão de qualidade “razoável”. Essa dificuldade tem um lado bom: definitivamente você aprende muito, empiricamente, sobre impressão 3d, sobre o CNC, os materiais e as manhas, pois a máquina tem seu ponto ideal para funcionar na maciota…

Esse modelo de impressora 3D foi lançada no crowdfunding americano Kickstarter, mas é baseado no modelo open-hardware Reprap, utiliza o chip Atmega (o mesmo do Arduino) e imprime pela extrusão do plástico ABS derretido.

Os softwares de impressão também são livres: Slic3r, responsável pelo fatiamento dos modelos 3d (arquivo .stl) e gerador do arquivo gcode – arquivo formado por linhas de comando para impressora com todos os parâmetros: velocidade, temperatura, e vetor de desenho 3d; e Pronterface/Printrun, interface de controle da impressora onde você carrega o arquivo gcode para impressão.

pronterface, interface de comando e status da impressora, mostra o andamento da impressão

teste de head tracking 01

postado em: Blog, Processos | 2

Detecção de faces utilizando a biblioteca FaceTracker no openFrameworks e a openCV no Processing.

O objetivo é mudar a perspectiva de um cenário virtual de acordo com a posição do rosto do interator, a fim de criar uma situação 3D mais imersiva e responsiva sem utilização de óculos especiais.

Para um primeiro teste o resultado foi bom. Acho que o FaceTracker não será usado pela funcionalidade – mas as linhas de contorno no rosto são interessantes…


Referências

Em 2007 um vídeo com um experimento de head tracking utilizando controle do Wii, de Johnny Chung Lee, ficou bem conhecido. A sensação de paralax e profundidade é incrível, mesmo para quem está assistindo pelo vídeo (pois ele adapta o sistema a uma câmera e simula nossa visão). Mas este sistema não funciona apenas com um controle de Wii. É preciso que o interator utilize 2 leds infravermelho para que o controle capte os sinais.

Alguns experimentos deste tipo já foram feitos com Kinect. A vantagem é não precisar que o interator utilize acessórios extras, como nos experimentos de Chung Lee.

No vídeo abaixo o head tracking foi feito apenas com uma PSEye.


Insights

Um desafio para esta primeira fase da pesquisa é conseguir o mesmo resultado utilizando apenas uma webcam simples. O segredo provavelmente está nos cálculos espaciais: posição da câmera em relação a tela, tamanho da tela, abertura da lente da câmera, detecção facial e seu posicionamento em relação a tela. Para a detecção da face ser mais precisa é essencial que a câmera tenha foco automático.


Fontes

O código fonte do teste no Processing pode ser acessado aqui:

Abaixo uma série de links úteis para a pesquisa:

 

Cineplanta no Live Cinema

postado em: Blog | 0

Cine Planta é um experimento que associa um dragoeiro a uma interface de edição de imagens em tempo real, criando um organismo híbrido. Formado por uma rede de captação e projeção audiovisual que se retroalimenta com o sistema vivo do vegetal, o sistema integra a planta a circuitos elétricos, eletrônicos e digitais e recoloca a questão dos limites entre vivos e não vivos.

8 de setembro às 15h
http://www.livecinema.com.br/port/134,3312

Sobre os artistas

Paola Barreto apresentou na II Mostra Live Cinema a performance “Cabine de Pensamentos” (2008), primeira da série de “composições para circuito de vídeo-vigilância”. Co-dirigiu o projeto de intervenção urbana “Coreografia para prédios, pedestres e pombos” que ocupou o espaço público do Largo do Machado (2010). Realizou em 2011 a vídeo-instalação “Tá tudo bem #1”, apresentada no Circuito Arte.mov/RJ (2012). Atualmente é Doutoranda na EBA/UFRJ.

Marlus Araújo é designer, artista visual e desenvolvedor de software, formado em Design pela Escola de Belas Artes da UFRJ. É diretor de criação do estúdio Ultraleve e um dos idealizadores da rede Encontros Digitais, um grupo aberto que promove discussões e projetos em cultura, tecnologia e design.

Carlos (Guto) Nóbrega é Doutor pelo programa Planetary Collegium, University of Plymouth UK. É artista, pesquisador e fundou e coordena o NANO – Núcleo de Arte e Novos Organismos, espaço de pesquisa para investigação na intersecção entre arte, ciência e tecnologia.

Telemediações

postado em: Blog | 0

O evento “Telemediações. Explorando paradigmas estéticos em ecologias híbridas”, trata-se de um conjunto de atividades de caráter transdisciplinar e escopo internacional a serem realizadas no âmbito da Universidade Federal do Rio de Janeiro no período dos dias 25 a 29 de abril de 2011. São partes integrantes dessas atividades:

• Simpósio

• Open Lab

• Visitas Laboratoriais

Apoiado pelo Programa de Pós-Graduação em Artes Visuais/EBA/UFRJ, o evento Telemediações  é resultado de uma ação colaborativa entre universidades dos países: Brasil – UFRJ, Dinamarca – IT University  e China – Central Conservatory of Music, Beijing, com base no projeto “The aesthetics of global connectivity: exploring design strategies and networked technologies of distributed sites through artistic processes” (ver detalhes abaixo).

Em linhas gerais, esse projeto tem por finalidade estabelecer metodologias de pesquisa e criação artística, substanciadas por trocas locais e telemáticas (online/off-line) entre artistas e pesquisadores dos países envolvidos, através de oficinas, encontros e seminários. O projeto visa dessa forma o estabelecimento de uma rede telemática distribuída, local e globalmente, com objetivo a estruturar uma robusta plataforma transdisciplinar de pesquisa que atue na intersecção dos campos da arte, ciência e tecnologia.

A primeira etapa desse projeto ocorrerá no Brasil, sob coordenação geral do Prof. Dr. Guto Nóbrega (PPGAV/EBA/UFRJ), e contará com a realização das atividades: simpósio, Open Lab e visitas Laboratoriais. Esta primeira etapa das atividades atenderá pela rubrica  “Telemediacões.Explorando paradigmas estéticos em ecologias híbridas”.

O evento Telemediações tem origem no seguinte projeto de rede:

The aesthetics of global connectivity: exploring design strategies and networked technologies of distributed sites through artistic processes

This project is an explorative investigation of the aesthetics of global connectivity. The aesthetic approach is a way to explore possibilities in technologically mediated relationships, which then inform the development of consistent models that correlate between the participatory experience, the compositional strategies, and the technological design. The offline/online workshops enable an exploration through developing prototypes and staging events, which involve the total communicational complexity of the integrated platform as the artistic medium. The research network is established expecting that researchers at IT University, University Federal do Rio de Janeiro, and Central Conservatory of Music will complement each other in the interdisciplinary research into globally connected performance activities. The workshops will include the participation of a wider selection of researchers, using the events to introduce related institutions and individuals to the project themes. The network project includes three workshops on-site at the respective collaborators, and a continuous process of online collaboration.

Artists-researchers coordinators of this project:

Guto Nóbrega, Ph.D. Assistant Professor, PPGAV/EBA/UFRJ – Brasil

Kjell Yngve Petersen, Ph.D. Assistant Professor, IT University – Dinamarca

Kenneth Fields, Ph.D. Research Professor in Networked Music, Central Conservatory of Music, Beijing China. Canada Research Chair. University of Calgary.