Segundo Trabalho: Problema com o Pd

Segundo Trabalho: Problema com o Pd

por Pedro Henrique Rocha Bruel -
Número de respostas: 2

Olá! Estava resolvendo o segundo trabalho menor, e depois de resolvido e testado - com vários tamanhos de bloco e frequências - fechei o Pd e abri o arquivo novamente. Quando fiz isso, tudo parou de funcionar. Tentei reconectar os blocos, remover algumas coisas adicionadas, tentei até escrever o com o [osc~] e [tabwrite~] num novo array (no mesmo patch), mas nada funcionava. O DSP estava ligado, mas o Pd parecia não responder.

Não sei o que aconteceu, mas entreguei  meu patch que costumava funcionar, mas deixou de fazê-lo quando reiniciei o Pd.

Em resposta à Pedro Henrique Rocha Bruel

Re: Segundo Trabalho: Problema com o Pd

por Pedro Henrique Rocha Bruel -

Consegui resolver os problemas, que tinham a ver com os tamanhos de bloco não sendo inicializados corretamente, e divisões por zero decorrentes disso.

Eu estava usando o [switch~] pra trocar de bloco, e mudei para o [block~]. Não sei se isso resolveu algo, pois não entendi exatamente a diferença entre eles, mas depois de reestruturar o meu patch e tomar alguns cuidados na inicialização, consegui fazer meu patch voltar a funcionar.

Em resposta à Pedro Henrique Rocha Bruel

Re: Segundo Trabalho: Problema com o Pd

por Marcelo Queiroz -

Olá, Pedro.

O [block~] tem como função principal permitir que parte do seu programa processe DSP com janelas de tamanho diferente, e também com diferentes fatores de sobreposição entre janelas sucessivas e fatores de reamostragem dos blocos. Isso permitiria por exemplo fazer análises de FFTs bem longas (e.g. 16384 amostras) em um subpatch e ainda assim rodar um processamento com baixíssima latência (e.g. 64 amostras) no patch principal. O help do [block~] tem um exemplo visual pra ajudar a entender essa questão da blocagem, sobreposição e reamostragem.

O [switch~] tem como função principal permitir ligar/desligar o DSP dentro de sub-patches. Você poderia por exemplo escrever um analisador de pitch que desse a resposta apenas quando solicitada pelo usuário, e não ficasse gastando CPU a toa no resto do tempo. Além disso ele também aceita os mesmos argumentos do [block~] para permitir reblocagem. Parece que na versão atual do pd-extended quando você chama o help do [switch~] aparece o help do [block~], vai entender... mas você encontra o help do [switch~] em Ajuda->Navegação de Ajuda do Pd...->Pure Data->5.reference->switch~-help.pd.

Caso você consiga finalmente entender o que havia de errado no seu patch original, compartilhe a experiência aqui. Só pelas suas duas mensagens não consegui entender muita coisa do seu problema.

Marcelo