Depois de estar ausente 2 dias das publicações no blog, venho anunciar um doce para os leitores, depois de muito investigar, testar e inventar, lá consegui realizar um projecto ambicioso.
Criar um leitor de mp3 para qualquer aplicação flex com um equalizer, algo meio complicado no inicio, mas com um resultado final lindo
Vamos aos detalhes:
* www.msdevstudio.com
* MP3 Player v1.0
* Um simples leitor de mp3 feito totalmente em action script, extendendo
* um canvas, com um spectrum analiser, que nos mostra como podemos usar
* os dados do flash.media.SoundMixer para obter as variações do espectro
* de audio e com elas desenhar a respectiva variação das ondas numa linha.
*
* Podemos definir a cor do spectrum, e fundo, autoPlay e urlMP3
* Por defeito:
* corSpectrum: #43ADF0;
* corFundo: #202021;
* autoPlay=false;
* urlMP3 = http://www.msdevstudio.com/music/Obssesion.mp3
*
* Para usar basta copiar o package (preservando as directorias e nomes com->msdevstudio->playSound)
* para a pasta do vosso projecto, e este player passa a estar disponivel na janela componentes em custom
* ou se preferirem usar em action script, usam apenas para testar:
*
* import com.msdevstudio.playSound;
*
* var meuPlayer:playSound;
*
* e numa função:
* meuPlayer.corSpectrum=”#43ADF0″;
* meuPlayer.corFundo=”#202021″;
* meuPlayer.urlMp3=”http://www.msdevstudio.com/music/Obssesion.mp3″;
* addChild(meuPlayer);
* meuPlayer.play();
*
* estão disponiveis os metodos:
*
* meuPlayer.play();
* meuPlayer.stop();
* meuPlayer.pause();
* meuPlayer.resume();
* meuPlayer.autoPlay=false/true;
* meuPlayer.corSpectrum=”#43ADF0″; //cor
* meuPlayer.corFundo=”#202021″; //cor
* meuPlayer.urlMp3=”http://www.msdevstudio.com/music/Obssesion.mp3″; //ficheiro audio/mp3
*
* estas opções também estão disponiveis no painel de propriedades, em geral, sendo mais facil definir as opções.
*
* Por Mário Santos
* www.msdevstudio.com
* Creative Commons by-nd-nc 3.0 unported
*
Vejam a imagem:
Podem aumentar e diminuir o seu tamanho quase sem limitações… o seu uso como dito em cima é bem simples..vejam algumas personalizações…
Vejam o exemplo online aqui com o código fonte disponível
Se quiserem apenas o package, façam download aqui
p.s. O código ainda não está comentado… mais à frente faço isso.
Deu trabalho, mas vocês merecem! :p
Venham de lá esses comentários!!
Abraço.




21 Comentários
pessoal? alguem ja testou o meu exemplo online? aqui em casa está com o equalizador parado… a alguem acontece o mesmo?
Já testaram em casa?
p.s. parece que funciona passados alguns segundos… tenho que ver o que se passa… penso que será do streaming…Amanha verifico… aguardem alguns segundos para verem o equalizer a funcionar…
Abraço.
Bom, em principio estará a funcionar como deve ser, testem e deixem as vossas opiniões e experiencias.
Abraço.
Não consigo ver o exemplo. Recebo um sandbox violation (erro abaixo), e estranhamente a tentar ler um swf de um site que visitei ontem.
SecurityError: Error #2121: Security sandbox violation: SoundMixer.computeSpectrum: http://www.msdevstudio.com/blog/flexSource/testAS3Mp3Player/tutorial.swf cannot access http://www.montedasfaias.com/som.swf. This may be worked around by calling Security.allowDomain.
at flash.media::SoundMixer$/computeSpectrum()
at com.msdevstudio::playSound/specChange()
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
Está funcionando sim.
Pagongski, esse erro é muito estranho e parece que só pode ter a ver com a cache do browser, tente limpar a cache ou esperimentar com outro browser (IE/Firefox)
Visto que a sandbox está a aceder ou têm um pedido pendente para esse link som.swf.
Se limpar a cache deverá funcionar!
Vitor, Obrigado pela confirmação.
Abraço.
Cara, muito bom mesmo, hein?!!! Parabéns!
Não precisa se culpar por passar dois dias sem atualizar o blog … já estou há uns 2 meses sem atualizar o meu!
Vou me policiar para seguir o seu bom exemplo.
Abraço!
Elvis Fernandes
hehehe Elvis
Obrigado pelo comentário.
Abraço.
Ola, gostaria de saber se posso utilizar o player para um trabalho de sistemas multimidias na universidade que eu estudo, porem preciso do codigo fonte pois preciso estudar o codigo e acrescentar algo a mais para validar o trabalho.
Porem o codigo que peguei somente possui um arquivo playsound.as… nao deveria possuir algum outro arquivo ? da tela ?
estou utilizando o software adobe flash CS3 profissional.
fico no aguardo de seu retorno, obrigada
Oi jerusa.
A verdade é que não há qualquer outro código fonte, apenas mesmo só esse package, e como esse package extende alguns controlos do Flex, apenas funcionará em Adobe Flex 3 visto que ao ser adicionado ao stage ele assume todos os controlos e cria o player automaticamente.
Tente procurar pelo google que encontrará alguns players para flash cs3.
Cumps.
olá, alguem tem o arquivo .fla dessa página, se tiver por favor envie para mim.
Olá td bem mário
faz um passo a passo de como
fazer um mp3 player em flex
Je viens de tester a priori cela marche bien, l’equaliseur bouge.Mais seulement en local.
Quelqu’un sait pourquoi du coté serveur le spectre de l’equaliseur ne bouge pas. Il y a seulement le temps qui se met en route.
Si quelqu’un pouvait me mettre sur la voie.
mrtigre@gmail.com
mrtigre,
Ici il marche comme vous peut voir en ligne ici:
http://www.msdevstudio.com/blog/flexSource/testAS3Mp3Player/
Vous peut voir le source code. (droit clique->View Source)
Il montre quelque erreur ?
sorry in english ,
I try this tutorial, all work good when i do in local on computer.
But when i copy my swf on a servor the equalizer no move only the time is good. Something know where that can coming?
ns1:playSound x=”207″ y=”139″ id=”meuPlayer” urlMP3=”http://www.xx.fr/umek.mp3″ corSpectrum=”# 43ADF0″ corFundo=”# 202021″ autoPlay=”false” width=”347″ height=”234″ visible=”true” childAdd=”meuPlayer” borderColor=”#080808″
/ns1:playSound
mx:Button x=”207″ y=”381″ click=”meuPlayer.play (); ”
/mx:Button
It gives you some error?
Can you show me the online example, thie link for it?
Thanks.
meu equalizer nao funciona on-line
alguma sujestao?
Dá algum erro? Consegue ver no exemplo online o equalizador a mexer?
http://www.msdevstudio.com/blog/flexSource/testAS3Mp3Player/
??
nao da nenhum erro. Consigo ver o seu funcionando online perfeitamente. Fiz uma copia do seu sem mudar nada e hospedei online e nao funcionou. No browse funciona perfeitamente. Online nada.
Felipebusiness
Fiz o player, mas quando eu faço a exportação do projeto com o “export release build” do flex, ele cria o projeto pronto pra web na pasta bin-release. E é justamente lá que o equalizer nao funciona. Ele toca o mp3, o timer conta os segundos, mas não há efeito no equalizer. Na pasta bin-debug funciona perfeito. Se eu copiar a pasta bin-debug pro desktop também não funciona. Acho que o Flex faz alguma referência à alguma classe no projeto, referenciando a pasta bin-debug (caminho absoluto do projeto). Mas não sei o que é essa referencia. Você já teve esse problema?
Voce consegue ver o exemplo que eu coloquei online?
é mto estranho isso estar a acontecer…. da algum erro?
cumps
Tenho um aplicativo em Delphi para trabalhar com radiodifusão e desde que comecei a trabalhar com java (3 anos) tenho tentado fazer alguma coisa semelhante mas o sucesso esta dificil, alguem conhece alguma fonte alguma coisa com fade e etc?