Para essa disciplina, você precisará instalar o software PureData (a.k.a. Pd), na distribuição original (a.k.a. Vanilla) e versão ≥0.50-2: https://puredata.info/downloads/pure-data
Se você usa Ubuntu 20.04, basta rodar no Terminal "sudo apt install puredata".
Assim que instalar o Pd, abra-o e faça um teste de som, acessando o menu Mídia->Testar Áudio e MIDI e em seguida clicando na primeira caixinha com o texto "80" (dB).

Há muito material introdutório na rede sobre Pd, especialmente em https://puredata.info/docs.
A lista abaixo traz algumas recomendações específicas. Especialmente o capítulo 2 do Guia do Andy Farnell são as melhores 15 páginas introdutórias que você encontrará sobre esse software.

Além do Pd, usaremos algumas bibliotecas externas que são fáceis de instalar a partir de sua própria interface. Abra o Pd (puredata no terminal), acesse o menu "Ajuda", opção "Procurar por externals", e busque as bibliotecas cyclone, ggee, iemguts, iemlib, ofelia, windowing e zexy, sempre escolhendo a versão mais nova disponível.

A biblioteca ofelia oferece uma interface entre o Pd e a linguagem de scripting Lua, um recurso que usaremos bastante. Sua instalação pode trazer algumas pequenas dificuldades, por isso leia as dicas abaixo. 

No Linux/Raspbian, é essencial instalar as dependências dessa biblioteca. Para isso, rode os seguintes comandos no terminal (o diretório abaixo pode ser encontrado no menu Arquivo->Preferências->Caminho de busca):

cd ~/.local/lib/pd/extra/ofelia/scripts/nome_da_sua_distribuição
sudo ./install_codecs.sh
sudo ./install_dependencies.sh

Para testar sua instalação, crie um novo arquivo no Pd e dentro dele crie um novo objeto com o nome ofelia. O objeto deve aparecer dentro de um retângulo inteiriço (não-tracejado), com duas marquinhas nos cantos superior e inferior esquerdos. Se esse teste não funcionar, você pode rastrear a causa do problema fazendo

cd ~/.local/lib/pd/extra/ofelia
ldd ofelia.pd_linux | grep "not found"

e instalar com sudo apt install cada uma das bibliotecas não encontradas.

No Windows, se acontecer da biblioteca não carregar, abra o executável vc_redist no diretório do ofelia para instalar os Microsoft Visual C++ Redistributable packages. Se os exemplos em vídeo não funcionarem, tente instalar o K-Lite Codec Pack.

A biblioteca ofelia permite o uso da linguagem textual Lua (https://www.lua.org/portugues.html) dentro de patches Pd. Para quem já programou em Python, C, Java, Octave/Matlab ou essencialmente qualquer outra linguagem textual de uso geral, aprender Lua é antes de mais nada familiarizar-se com algumas pequenas diferenças sintáticas. Os links a seguir podem ajudar:

A linguagem Pure Data pode ser estendida por várias outras bibliotecas, algumas das quais teremos a oportunidade de usar durante o curso. Uma referência útil para se ter à mão é a lista de externals/bibliotecas para Pd: https://puredata.info/docs/ListOfPdExternals/

Em certo ponto do curso, lidaremos com o recurso de metaprogramação (dynamic patching no jargão Pd). Para isso, as referências a seguir serão úteis:
Descrição do formato de arquivo .pd: https://puredata.info/docs/developer/PdFileFormat
Lista de mensagens internas: https://puredata.info/community/pdwiki/PdInternalMessages

O material avançado a seguir não será usado nessa disciplina, mas pode servir para aqueles que desejem aprofundar seus conhecimentos nessa linguagem. Para implementações grandes ou numericamente pesadas, é interessante construir objetos externos ao Pd escritos em C. Algumas referências úteis para isso são:

https://github.com/flschiavoni/pd-external-tutorial/
https://github.com/pure-data/externals-howto


Última atualização: quinta-feira, 30 jun. 2022, 14:06