Ajuda com instalação (Python/Cython) [RESOLVIDO]

1. Ajuda com instalação (Python/Cython) [RESOLVIDO]

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 21/04/2012 - 14:05h

Tenho um trabalho de Processamento Digital de Sinais para fazer, onde cada aluno deve escolher algum programa que envolva (Áudio ou Vídeo ou Dados) para analisar espectros,tranformadas de fourier e coisas do tipo.Escolhí a parte que diz respeito a Áudio e terei que descrever o funcionamento do programa.

Usarei este aqui: http://www.youtube.com/watch?v=Ff-V6ggv100&feature=related

Você adiciona algum arquivo de áudio e ele mostra acordes a partir deste arquivo.

Até aí tudo bem.

O problema que estou encontrado é justamente instalar("rodar") o mesmo.Na descrição do vídeo,tem dizendo que o programa foi feito em C#,só que quando acessei o link para download,percebí que as extensões são .py,ou seja,python.

E de acordo com a resposta do dono do vídeo,Cython.

Pesquisando um pouco: Cython é "por cima" uma biblioteca que converte arquivos em python para C .

Acesse: github.com/milanboers/pytune e veja que tem dois links: pytune/ e chordfinder.py

Tentei instalar a partir do chordfinder.py mas deu uma sequência de erros.

Executei o pytune/setup.py a partir da ide IDLE e deu no mesmo.Nada de gerar nada.

Tanto no windows quanto no debian não conseguí.

Veja se você consegue instalar e manda um passo-a-passo.

Diga os programas,o que foi preciso instalar,compilar,interpretar.

Agradeço antecipadamente.


  


2. MELHOR RESPOSTA

Joao
stack_of

(usa Slackware)

Enviado em 21/04/2012 - 19:47h

Primeiro você precia obter o programa com o git:

 git clone http://github.com/milanboers/pytune Pytune 


O utilitário vai clonar a árvore do pytune no diretório da sua máquina chamado Pytune.
Observei que o pytune necessita do Cython.

Baixa o cyton, descompacta e executa o setup.py:

wget http://cython.org/release/Cython-0.16.tar.gz
tar xvf Cython-0.16.tar.gz
cd Cython-0.16
python setup.py install


Por fim instala o pytune.



3. Ajuda com instalação (Python/Cython)

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 21/04/2012 - 21:58h

Olá stack_of !

Primeiramente agradeço por ajudar tão prontamente.
Ainda não conseguí.

 git clone http://github.com/milanboers/pytune Pytune 
---> ok
wget http://cython.org/release/Cython-0.16.tar.gz
tar xvf Cython-0.16.tar.gz
cd Cython-0.16
python setup.py

|
--------------> ok

Se eu tentar instalar diretamente através da pasta /pytune/setup.py
python setup.py install

Aparece uma sequência de erros,dos quais,alguns estão aí abaixo:

/home/ubuntu/Pytune/pytune/notefinder.pyx:29:31: undeclared name not builtin: fmod

Error converting Pyrex file to C:
------------------------------------------------------------
...

cpdef str findNoteName(float freq):
"""
Find a note name from a frequency
"""
cdef int halfsteps = <int>fmod(round(log2(freq / 440) * 12), 12)


building 'notefinder' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.6 -c notefinder.c -o build/temp.linux-i686-2.6/notefinder.o
notefinder.c:1:2: error: #error Do not use this file, it is the result of a failed Cython compilation.
error: command 'gcc' failed with exit status 1

--------------------------------------------------------------------------
Esses erros aconteceram com você???
Eles dizem respeito a declarações nos codigos,prefiro acreditar que o código não contêm estes erros,do contrário ninguém conseguiria.
--------------------------------------------------------------------------

Se converter os arquivos em .c,erro em alguns.
cython notefinder.pyx
Pytune/pytune/notefinder.pyx:29:31: undeclared name not builtin: fmod

cython freqset.pyx

Error converting Pyrex file to C:
-----------------------------------------------------------
# Combine these two
freqweights = zip(freqsl, weight)

# Sort this to quickly filter out duplicates
freqweights = sorted(freqweights, key=lambda x: x[0])
-------------------------------------------------------------------------
Diretamente no chordfinder.py:
python chordfinder.py install
------------------------------------------------------------------------
File "chordfinder.py", line 27, in <module>
from pytune import wave2, freqset, noteset, scalefinder, functions
ImportError: cannot import name wave2
-------------------------------------------------------------------------
Bem,neste caso os arquivos estavam dentro da pasta com a extensão .py.
Tentei mudar a extensão dentro do código e deu no mesmo erro.

Definitivamente não deu certo aqui.

Como devo proceder agora,stack_of???




















4. Re: Ajuda com instalação (Python/Cython) [RESOLVIDO]

Joao
stack_of

(usa Slackware)

Enviado em 22/04/2012 - 10:11h

Pode ser que faltam pacotes de desenvolvimento em seu sistema. No meu não testei pois não quero instalar o pytune.
Se for Ubuntu, instala o build-essential.

apt-get update
apt-get install build-essential


5. RE:Ajuda com instalação (Python/Cython)

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 22/04/2012 - 13:02h

Caro stack_of,estou mais perto do que nunca.

antes de tudo:
Estou no debian desta vez e fiz um
apt-get update
apt-get install build-essential

Conseguí converter os arquivos em .c sem nenhum erro.

freqset.c functions.c __init__.c __init__.pyc notefinder.pyx noteset.pyx scalefinder.pyx setup.py wave2.pyx
freqset.pyx functions.pyx __init__.py notefinder.c noteset.c scalefinder.c setup.c wave2.c

Dei o comando python setup.py install e também não ocorreu nenhum erro.Aqui ele só copiou alguns cabeçalhos,mas não instalou nada.
Foi criada uma pasta build onde tenho os arquivos .so e .o

O programa faz a exigência do python 2.4,instalei.
Outra exigência são as bibliotecas Qtgui,QtCore,etc... Todas instaladas.
Mas este p#**@ insiste em dar erro.Dizer que não encontrou alguns arquivos .h que eu mesmo comprovei que estão em seus devidos lugares.
Por exemplo:
Python.h:125:21: error: compile.h: Arquivo ou diretório não encontrado
Python.h:126:18: error: eval.h: Arquivo ou diretório não encontrado
Python.h:128:22: error: pystrtod.h: Arquivo ou diretório não encontrado

Testei com cada versão do Python
locate compile.h
/usr/include/python2.5/compile.h
/usr/include/python2.6/compile.h
/usr/include/python3.1/compile.h

E ainda continua a dizer que alguns arquivos contêm erros.
freqset.c:5: error: expected ‘{’ at end of input
Anteriormente eu havia dito que não acreditava que estes viessem com erros.

Tá complicado.
Vamos combinar uma cosia???
Tenta instalar no seu,por favor.Só para ver se terá os mesmos problemas.

Até mais stack_of!!!


6. Re: Ajuda com instalação (Python/Cython) [RESOLVIDO]

Joao
stack_of

(usa Slackware)

Enviado em 22/04/2012 - 14:28h

Parece que antes de "python setup.py install" tem que digitar "python setup.py build".


7. Ajuda com instalação (Python/Cython)

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 22/04/2012 - 14:42h

python setup.py build
running build
running build_py
running build_ext
building '_imaging' extension


Sinceramente Stack_of,vou começar a procurar outro programa à altura deste.
Já apareceu outro problema
File "setup.py", line 23, in ?
from Cython.Distutils import build_ext
ImportError: No module named Cython.Distutils

kkkkkkkk.

O tempo não é muito aliado meu.Então,eu já poderia estar me aprofundando em outro ao invés de tentar instalar este.
Caso eu encontre algum que seja tão bom quanto,beleza,caso contrário continuarei tentando.
Voltarei aqui para dizer se escolhí ou não outro programa.

Agradeço pelo tempo dedicado.

Até mais Stack.



8. Re: Ajuda com instalação (Python/Cython) [RESOLVIDO]

Joao
stack_of

(usa Slackware)

Enviado em 22/04/2012 - 15:23h

Correto. Um programa que não permite nem mesmo a instalação de forma indolor não deve valer a pena.


9. Ajuda com instalação (Python/Cython)

Vanderson Diniz
VandersonDiniz

(usa Debian)

Enviado em 22/04/2012 - 15:51h

Bem Stack_of,dentre muitos que ví,os mais confiáveis foram o ChordFinder e o Ichords(Que acabei de encontrar.).Cheguei a instalar o chord pickout,chords,chord transcriber e mais alguns.Estes não são tão confiáveis,acho que a média de erros é maior que a de acertos na transcrição dos acordes.
Pelo que pude observar no vídeo do ChordFinder, ele tinha uma alta proporção de acerto em relação às cifras.Na música hotel califórnia,as cifras que ví estavam todas de acordo.Mas infelizmente perdí uma semana tentando instalá-lo sem êxito.
O Ichords tem alguns erros,mas tem uma boa proporção.Acho que escolhendo uma música simples, a identificação dos acordes será mais confiável.
Ele atende aos meus propósitos,então desde já começarei a análise do mesmo.
Que fique a dica,caso alguém procure um programa para transcrever acordes a partir de arquivos de áudio.

Agradeço pela ajuda.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts