PDP
Pure Data Packet site
oficial
Biblioteca do
PD usada para manipulação de vídeo e dados empacotados..
é dependencia do
PiDiP, uma outra lib do
PD que potencializa mais ainda a manipulação de videos.
CompilandoPD contém informacoes a respeito da instalacao do pdp e do pd a partir do código fonte.
Caso você queira um Pure Data com PDP instalado de maneira fácil e use Ubuntu Feisty (a versão mais nova), baixe o pacote "pdextras" do
RepositorioDoNighto. Este pacote não interfere no PD "oficial" instalado.
Lista de objetos e abstrações
sendo traduzido de
http://zwizwa.fartit.com/pd/pdp/REFERENCE.txt
ver os patches no diretório /doc para mais descrições das funcionalidades dos objetos.
Modulos de uso geral do PDP
pdp_del - atrasador de pacotes de fila
pdp_reg - registrador de pacotes
pdp_snap - foto do sinal de vídeo
pdp_trigger - imilar ao objeto trigger do pd
pdp_route - redireciona um pacote para uma saída específica
pdp_loop - a packet loop sampler (packet array)
pdp_description - dá saída num símbolo descrevendo o tipo de pacote
pdp_convert - conversão entre dois tipos de pacotes
Entradas/Saídas de imagens
pdp_xv - exibir images usando a extensão xvideo
pdp_glx - exibir imagens usando a extensào opengl
pdp_sdl - exibir imagens usando a extensão sdl
pdp_v4l - ler images de um dispositivo video4linux
pdp_qt - ler filmes quicktime com saída de som para tabarray
pdp_yqt - ler filmes quicktime com saída de som direta
Processadores de imagens
pdp_abs - valor absoluto
pdp_add - adiciona duas imagens
pdp_and - operacao binaria: e (bitwize and)
pdp_bitdepth - configura a profundidade binária (bit depth)
pdp_bitmask - aplicar uma máscara binária
pdp_bq - filtro biquad espacial
pdp_bqt - filtro biquad temporal
pdp_cog - gaussian blob estimator
pdp_constant - fills an image with a constant
pdp_conv - horizontal/vertical seperable convolution filter
pdp_cheby - chebyshev color shaper
pdp_chrot - rotaciona os componentes cromaticos
pdp_flip_lr - flipa esquerda <-> direita
pdp_flip_tb - flip top <-> bottom
pdp_grey - converts an image to greyscale
pdp_grey2mask - converts a greyscale image to an image mask
pdp_hthresh - hard thresholding
pdp_mul - multiplies two images
pdp_mix - crossfade between 2 images
pdp_mix2 - mixes 2 images after applying a gain to each of them
pdp_noise - a noise generator
pdp_not - bitwize not
pdp_or - bitwize or
pdp_plasma - plasma generator
pdp_pointcloud - convert an image to a point cloud
pdp_positive - assinala funcão que cria uma mascara de bits
pdp_randmix - crossfades 2 images by taking random pixels
pdp_rotate - tiled rotate
pdp_scale - re-escala uma imagem
pdp_sign - funcão de sinal
pdp_sthresh - soft thresholding
pdp_zoom - tiled zoom
pdp_zrot - tiled zoom + rotate
pdp_zthresh - zero threshold (x<0 -> 0)
pdp_xor - bitwize xor
Objetos dsp
pdp_scope~ - um osciloscópio bem simples
pdp_scan~ - phase input scanned synthesis oscillator
pdp_scanxy~ - x,y coordinate input scanned synthesis oscillator
Abstrações úteis
pdp_pps computes the packet rate in packets/sec
Abstrações de imagens
pdp_agc automatic gain control (intensity maximizer)
pdp_blur blurs an image
pdp_blur_hor horizontal blur
pdp_blur_ver vertical blur
pdp_contrast contrast enhancement
pdp_dither a dither effect
pdp_phase applies an allpass filter to an image
pdp_phase_hor horizontal allpass
pdp_phase_ver vertical allpass
pdp_motion_blur blurs motion
pdp_motion_phase phase shifts motion
pdp_offset add an offset to an image
pdp_alledge an all edge detector
pdp_conv_emboss emboss
pdp_conv_sobel_hor horizontal sobel edge detector
pdp_conv_sobel_ver vertical sobel edge detector
pdp_conv_sobel_edge sum of squares of hor and ver
pdp_saturation change colour saturation
pdp_sub subtract 2 images
pdp_invert inverse video
pdp_gain3 set 3 channel gains independently
pdp_gradient converts a greyscale to colour using a colour gradient
pdp_png_to convert a png file (on disk) to a certain packet type
pdp_tag tag a packet (to use it with route)
Processadores de matrix
pdp_m_mv matrix vector multiply
pdp_m_mm matrix matrix multiply
pdp_m_+=mm matrix matrix multiply add
pdp_m_LU compute LU decomposition
pdp_m_LU_inverse compute matrix inverse from LU decomp
pdp_m_LU_solve solve a linear system using LU decomp
matrix abstractions
pdp_m_inverse compute matrix inverse
SEPARATE LIBRARIES:
cellular automata
(pdp_scaf)
pdp_ca computes a cellular automaton (as a generator or a filter)
pdp_ca2image convert a CA packet to a greyscale image (obsolete: use pdp_convert)
pdp_image2ca convert an image to a CA packet (black and white) (obsolete: use pdp_convert)
3d drawing objects
(pdp_opengl)
3dp_windowcontext a drawable window
3dp_draw draw objects (cube, sphere, ...)
3dp_view viewing transforms (rotate, translate, ...)
3dp_light light source
3dp_push push a matrix (modelview, texture, ...)
3dp_dlist compile a display list
3dp_snap copies the drawing buffer to a texture packet
3dp_mode set the current matrix mode
3dp_toggle set some opengl state variables
3d drawing abstractions (pdp_opengl)
3dp_mouserotate connect to 3dp_windowcontext to rotate the scene
3dp_blend turn on accumulative blending mode
converter um dv bruto pra mov que abre no PDP
Instale o
Transcode
rode o seguinte comando no seu terminal, dentro da pasta onde se encotra seu video
transcode --uyvy -i arquivo_de_entrada.avi -o arquivo_de_saida.mov -y mov -F yv12 -r 2
sendo
arquivo_de_entrada.avi o vídeo que se quer converter
e
arquivo_de_saida.mov o nome do vídeo que será gerado após a conversão
com o comando acima funcionando, caso você queira converter todos os vídeos do diretório de uma vez:
for i in *.avi ; do transcode --uyvy $i -o `basename $i avi`mov -y mov -F yv12 -r 2; done
caso o vídeo que você queira converter não esteja em avi, você poderá tentar primeiro convertê-lo diretamente com o transcode; caso não consiga, tente convertê-lo para mencoder. Por exemplo, caso você queira usar no PD um vídeo baixado do Youtube, converta-o primeiro de flv para avi com:
mencoder video.flv -oac mp3lame -ovc xvid -xvidencopts pass=1 -o video.avi
e então converta o vídeo avi gerado para mov da maneira descrita acima.
Naturalmente, a mesma lógica do for também funciona para este caso, se quiser converter um monte de vídeos faça-o com:
for i in *.flv ; do mencoder $i -oac mp3lame -ovc xvid -xvidencopts pass=1 -o `basename $i flv`avi ; done