Pd: mudanças entre as edições

De Pontão Nós Digitais
Ir para navegaçãoIr para pesquisar
 
(21 revisões intermediárias por 3 usuários não estão sendo mostradas)
Linha 11: Linha 11:
<br>  
<br>  


=== Solucao 1: Pacotes binarios ===
=== Binary packages ===


Fefo:
Fefo:  


Baixei daki: http://puredata.info/community/projects/software/pd-extended<br>
Baixei daki: http://puredata.info/community/projects/software/pd-extended<br>  


Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits
Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits  


Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.
Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.  


Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.
Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.  


Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.
Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.  


=== Solução 2: Hacking from Git + SVN ===
<br>


=== Building the Latest Pd-extended from Autobuild + Rsync (not ideal for development)  ===


==== Cloning ====
To just build the entire bleeding-edge pd-extended, download the full thing using the rsync method as described in the instructions from:


Download the '''core''' of Pd extended, which is in Git. We will refere to this code base as pd-extended.git
  http://puredata.info/docs/developer/GettingPdSource
  git clone git://pure-data.git.sourceforge.net/gitroot/pure-data/pd-extended.git pd-extended-git


Download the full community repository for Pd extended which is in Subversion. We suggest using a Git interface as follows, for uniformity:
Then follow these instructions:  
git svn clone https://pure-data.svn.sourceforge.net/svnroot/pure-data/trunk pd-svn


Download Gem from Subversion. We suggest using a Git interface as follows, for uniformity
  http://puredata.info/docs/developer/AutoBuildProcess
  git svn clone https://pd-gem.svn.sourceforge.net/svnroot/pd-gem/trunk pd-gem


=== Building the Latest Pd-extended from Autobuild + Rsync (not for development) ===
However, this option does not give any version control.  
To just build the entire bleeding-edge pd-extended: see Hans' email about downloading from
rsyinc and building from autobuild. However, this option does not give any
version control.


=== Building Pd-Extended for Development ===  
=== Building Pd-Extended for Development ===
To build '''and''' have version control, try one of these options.


==== Full Approach ====
'''This section of the wiki moved into Pd's main site:''' [http://puredata.info/docs/developer/WorkingWithPdExtendedSources working with Pd Extended sources]. Write additional experiences that you have here.  
This approach
centers on pd-svn and links to the latest pd-extended.git and Gem.
If you need many libraries and develop and test things as a whole, this might be the
best approach as it will build all the available libs for Pd.  


* download pd-svn which has everything except gem
The information below is experimental. Please refer to the above link for the up-to-date information.  
* download pd-extended.git which has the '''core''' of pd-exdended
* download Gem from svn
* replace the 'pd' subdir of pd-svn with a symlink to pd-extended.git
cd pure-data/
mv pd pd-original
ln -s ../pd-extended.git pd
* symlink Gem to pd-svn/Gem and pd-svn/externals/Gem
ln -s ../pd-gem/Gem Gem
cd externals
ln -s ../../pd-gem/Gem Gem


* compile using the linux-make approach - follow the instructions in
If you want to use Macambira's fork, do the following:
/home/rfabbri/src/pd-repos/pd-svn-w-extended-git-plus-gem/packages/linux_make/README


==== Minimal Approach ====
    git clone https://github.com/rfabbri/pd-macambira.git
    git clone https://github.com/rfabbri/Gem.git
    cd pd-macambira/
    mv pd pd-original
    ln -s ./pd-original pd
    ln -s ../Gem Gem
    cd externals
    ln -s ../../Gem Gem
    cd ../packages/linux_make
    make install && make package


This approach centers on pd-extended.git, with symlinks inside pd-extended.git/extra to the libraries you want to
<br>
develop at a given time. If you need to isolatedly develop things, this might be
the best option.


* download pd-extended.git, pd-svn and Gem
=== PD + OpenCV: pdp_opencv/pix_opencv ===
* inside pd-extended.git/extra, link to the libs you need, e.g. from pd-svn or Gem. for instance:
libdir -> ../../pure-data/trunk/externals/loaders/libdir
cyclone -> /Applications/Pd-extended.app/Contents/Resources/extra/cyclone/
extra -> ../../pure-data/trunk/externals/extra
  vanilla -> ../../pure-data/trunk/externals/vanilla/
pddp -> ../../pure-data/trunk/externals/pddp
pdlua -> ../../pure-data/trunk/externals/loaders/pdlua/src/


* build everything inside pd-extended.git, so you can quickly test core changes and run Pd directly from there:
==== versao mais recente de desenvolvimento (recomendada)  ====


cd ~/code/pd-extended.git
O puredata_opencv fica no repo comunitario do Pd, em Subversion, no diretorio externals/pix_opencv. No entanto, ele '''nao''' e' compilado pelo metodo do linux_make supracitado. Para compila-lo, veja o arquivo INSTALL. Veja tambem o subdiretorio examples, muito legal.
./autogen.sh
./configure
make
./src/pd
 
=== Things that do *not* work ===
* The svn approach + linux-make using just the svn: this build gives a broken pd as of this date
* Build the pd-0.42 branch from svn using linux-make. This is not as good as the bleeding edge build described above, as of this date.
 
==== Compilando: '''modo errado''' ====


Pd:
==== versao "estavel"  ====


cd pd/pd/src
Tenha o PD extended 0.42.5 binario já instalado (veja acima).  
autoreconf -vi
./configure
make depend
make
sudo make install


Gem:
Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):  


  sudo apt-get install libmagick++-dev
  wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz


cd pd-gem/Gem/src
Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):
./autogen.sh
./configure


* opcionalmente, coloco uma opcao no configure, para desenvolver o Pd sem instalar:
mkdir -p pd-extended/src
   
tar xvzf Pd-0.42.5-extended.tar.gz
  ./configure --with-pd=/home/rfabbri/src/pd-repos/pd-svn/pd
  tar xvzf pix_opencv-0.2-rc6.tar.gz
  tar xvzf gem-0.92-3.tar.gz
mv Pd-0.42.5-extended pd-extended/src
mv gem-0.92-3 pd-extended/src


* finalmente
Agora vamos compilar o external pdp_opencv:


cd pix_opencv
./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
  make
  make
sudo make install


E jogamos os externals compilados no diretório do PD, para ele poder usar:


pix_opencv:
cp *.pd_linux $HOME/pd-extended/extra/
cp *.pd $HOME/pd-extended/doc/5.reference


./configure --with-pd=$HOME/src/pd-repos/pd-svn/pd --with-gem=$HOME/src/pd-repos/pd-gem/Gem
Feito, reinicie seu PD e Help -&gt; Browser -&gt; Pure Data -&gt; 5.reference -&gt; procure os pix_opencv_*
make
sudo make install


(ajuste os caminhos para os sources do Pd e do Gem de acordo com o seu setup)


== Gridflow ==


Terminando de instalar (perigo: instrucoes de novato; podem nao ser o melhor a fazer)
O gridflow [http://gridflow.ca] e' um outro framework para processamento multimidia no Pd.


Instale o pix_opencv na mao caso queira usar o Pd sem instalar (eh o que eu faco para hacking)


  cd ~/src/pd-repos/pd-svn/externals/pix_opencv
  git svn clone http://gridflow.ca/svn/trunk gridflow-git
cp *pd_linux ~/src/pd-repos/pd-svn/pd/extra/


== Hacking  ==


==== Rodando do Codigo de Desenvolvimento: '''modo errado''' ====
* Para comecar, veja secao de compilacao para desenvolvimento acima
 
echo 'alias pd=$HOME/src/pd-repos/pd-svn/pd/bin/pd' >> ~/.bash_aliases
. ~/.bash_aliases
 
Agora eu vou no diretorio do Gem rodar o pd. Deve haver algo melhor a ser feito:
 
cd /home/rfabbri/src/pd-repos/pd-gem/Gem
pd -lib Gem
 
Agora tudo esta disponivel!! Basta criar um novo bloco pix_opencv_edge por exemplo e constatar que '''nao''' fica tracejado.


PS: Estou confirmando se este e' o melhor jeito na lista pd-dev.


=== PD + OpenCV a.k.a pdp_opencv / pix_opencv (versao "estavel" - *nao* para hacking) ===
=== Externals  ===


Tenha o PD extended 0.42.5 binario já instalado (veja acima).


Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):


    wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
&nbsp;Uma external é uma classe que não é construida no pd (geralmente em C ou C++), mas é carregada em tempo de execução. Uma vez carregada na memória do pd, externals não podem mais serem distinguidas de internals.
    wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
    wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz


Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):


    mkdir -p pd-extended/src
    tar xvzf Pd-0.42.5-extended.tar.gz
    tar xvzf pix_opencv-0.2-rc6.tar.gz
    tar xvzf gem-0.92-3.tar.gz
    mv Pd-0.42.5-extended pd-extended/src
    mv gem-0.92-3 pd-extended/src


Agora vamos compilar o external pdp_opencv:
- Como criar suas [[Externals]].


    cd pix_opencv
== Solucionando Problemas ==
    ./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
    make


E jogamos os externals compilados no diretório do PD, para ele poder usar:
Caso o dispositivo de som acuse <tt>snd_pcm_open (output): Device or resource busy</tt>, use o comando:
 
lsof /dev/snd/pcm*
    cp *.pd_linux $HOME/pd-extended/extra/
    cp *.pd $HOME/pd-extended/doc/5.reference
 
Feito, reinicie seu PD e Help -> Browser -> Pure Data -> 5.reference -> procure os pix_opencv_*
 
== Hacking  ==


*todo: informacoes sobre o codigo fonte e sua organizacao
Ele te dira o PID de cada programa que esta ocupando o som.
* Este link [http://puredata.info/docs/developer/DirectoryLayout] sugere que depois de baixar o Pd svn,
o subdir "pd" pode ser substituido pelo pd-extended do Git, depois uns symlinks sao realizados. Todo: confirmar na lista pd-dev
* Este link [http://puredata.info/docs/developer/GettingPdSource], na secao sobre svn, diz que quando uma nova release e' feita do pd-extended, ele pega tudo do SVN exceto o subdir 'pd', o qual e' atualizado com base no core presente no repo pd-extended.git


== Referencias  ==
== Referencias  ==

Edição atual tal como às 00h15min de 23 de maio de 2012

Pure data.

Instalacao

  • Instale sempre o Pd extended.
  • Obrigado por sempre instalar o PD extended
  • Dê preferência ao pd-extended pois ele possui os externals necessários para a maior parte das aplicações
  • «hick209: você instalou o PD e Gem não veio junto? instalasse o pdextended? eu acho que não...
  • Sacou? Então não dê pala.


Binary packages

Fefo:

Baixei daki: http://puredata.info/community/projects/software/pd-extended

Primeiro instalei o .deb do Maverick (10.10) e não deu certo. Meu ubuntu era 64 bits, e o .deb era 32 bits

Como não tem 64bit do 10.10 instalei do Lucid(10.04) de 64bits, e também não funcionou.

Eu e o vilson ficamos quebrando a cabeça pra fazer funcionar direitinho, e NADA.

Conclusão: migrar para o ubuntu 32bits. Foi o que fiz, ai no ubuntu 32bits baixei o .deb do Maverick e funcionou e primeira.


Building the Latest Pd-extended from Autobuild + Rsync (not ideal for development)

To just build the entire bleeding-edge pd-extended, download the full thing using the rsync method as described in the instructions from:

http://puredata.info/docs/developer/GettingPdSource

Then follow these instructions:

http://puredata.info/docs/developer/AutoBuildProcess

However, this option does not give any version control.

Building Pd-Extended for Development

This section of the wiki moved into Pd's main site: working with Pd Extended sources. Write additional experiences that you have here.

The information below is experimental. Please refer to the above link for the up-to-date information.

If you want to use Macambira's fork, do the following:

   git clone https://github.com/rfabbri/pd-macambira.git
   git clone https://github.com/rfabbri/Gem.git
   cd pd-macambira/
   mv pd pd-original
   ln -s ./pd-original pd
   ln -s ../Gem Gem
   cd externals
   ln -s ../../Gem Gem
   cd ../packages/linux_make
   make install && make package


PD + OpenCV: pdp_opencv/pix_opencv

versao mais recente de desenvolvimento (recomendada)

O puredata_opencv fica no repo comunitario do Pd, em Subversion, no diretorio externals/pix_opencv. No entanto, ele nao e' compilado pelo metodo do linux_make supracitado. Para compila-lo, veja o arquivo INSTALL. Veja tambem o subdiretorio examples, muito legal.

versao "estavel"

Tenha o PD extended 0.42.5 binario já instalado (veja acima).

Baixe os sources necessários (sim, você precisa do source do PD e GEM para poder compilar o external, mesmo já tendo ele instalado pelo apt-get):

wget http://sourceforge.net/projects/pure-data/files/pd-extended/0.42.5/Pd-0.42.5-extended.tar.gz
wget http://giss.tv/pd-opencv/pix_opencv-0.2-rc6.tar.gz
wget http://puredata.info/community/projects/software/gem/releases/0.92.3/gem-0.92-3.tar.gz

Descompacte e coloque os códigos do PD e GEM em um local próprio (em Ubuntu, é o que segue):

mkdir -p pd-extended/src
tar xvzf Pd-0.42.5-extended.tar.gz
tar xvzf pix_opencv-0.2-rc6.tar.gz
tar xvzf gem-0.92-3.tar.gz
mv Pd-0.42.5-extended pd-extended/src
mv gem-0.92-3 pd-extended/src

Agora vamos compilar o external pdp_opencv:

cd pix_opencv
./configure --with-pd=$HOME/pd-extended/src/Pd-0.42.5-extended/pd --with-gem=$HOME/pd-extended/src/gem-0.92-3
make

E jogamos os externals compilados no diretório do PD, para ele poder usar:

cp *.pd_linux $HOME/pd-extended/extra/
cp *.pd $HOME/pd-extended/doc/5.reference

Feito, reinicie seu PD e Help -> Browser -> Pure Data -> 5.reference -> procure os pix_opencv_*


Gridflow

O gridflow [1] e' um outro framework para processamento multimidia no Pd.


git svn clone http://gridflow.ca/svn/trunk gridflow-git

Hacking

  • Para comecar, veja secao de compilacao para desenvolvimento acima


Externals

 Uma external é uma classe que não é construida no pd (geralmente em C ou C++), mas é carregada em tempo de execução. Uma vez carregada na memória do pd, externals não podem mais serem distinguidas de internals.


- Como criar suas Externals.

Solucionando Problemas

Caso o dispositivo de som acuse snd_pcm_open (output): Device or resource busy, use o comando:

lsof /dev/snd/pcm*

Ele te dira o PID de cada programa que esta ocupando o som.

Referencias