Jump to content


cancao

Member Since 04/06/2007
Offline Last Active 07/02/2009, 21:39
-----

Topics I've Started

Tocador De Mp3

26/07/2008, 01:41

oi galera apesar de ter varios topicos sobre o assunto não encontrei nenhum que resolvese o meu problema.
baixei um player de mp3 para site em flash e as musicas não passa de uma para a outra automaticamente, alguem poderia me dizer o que ha de errado
/*

 Matéria Player de MP3 com XML, ComboBox, Controles e Time no Macromedia Flash 8
 Revista WWW.COM.BR Editora Europa
 Autor: Johnatan Oliveira
 E-mail: contato@johnatan.net
 Site: http://www.johnatan.net
 
*/

////////////////////////////////////////////////
//////////////////// MENU ///////////////////////
////////////////////////////////////////////////
// Cria um novo menu instanciado como MeuMenu
var meuMenu = new ContextMenu();
// Cria um novo item instanciado como item
var item = new ContextMenuItem();
// Adiciona um nome de exibição ao item
item.caption = "action by: www.johnatan.net";
// Ativa-o
item.enabled = true;
// Caso o item seja selecionado
item.onSelect = function (){
	// Adiciona um link
	getURL("http://www.johnatan.net/", "_blank");
};
// Adiciona o item ao menu
meuMenu.customItems = [item];
// Apaga os outros itens padrões
meuMenu.hideBuiltInItems();
// Adiciona o meuMenu ao Movie
_root.menu = meuMenu;
////////////////////////////////////////////////
///////////////// FIM DE MENU //////////////////
////////////////////////////////////////////////

//////////////////////////////////////////////////////
////////////// FUNÇÕES DE INTERAÇÃO //////////////////
/////////////////////////////////////////////////////

// Primeira Função a ser chamada assim que ComboBox for selecionado
_global.tocaMusica = function(nome){
	
	 // Diretorio das musicas!
	 var diretorio:String = "musicas/";
	 // Variavel que contem, diretorio + nome da musica! 
	 var lista = diretorio + nome;
	 // Declara uma nova instancia de objeto da classe Sound.
	 _global.novoSom = new Sound();
	
	// Evento chamado automaticamente quando a reprodução do som é concluída. 
	_global.novoSom.onSoundComplete = function (){
		_global.paraMusica();
	};
	
	/*
	_global.novoSom.loadSound(url, Streaming);
	url é o local onde se encontra o som .mp3 a ser carregado.
	Streaming é um valor booleano (true/false),
	Se true o som será tocado enquanto vai sendo carregado.
	O Flash o armazena em buffer.
	Se false o Flash carrega todo o som	e só depois o reproduz. 
	*/
	_global.novoSom.loadSound(lista, true);
	
	// Setando o buffer do som para 10 segundos
	_soundbuftime = 10;
	
	// Variaveis apenas para teste nas funções
	// Preenchemos a variavel somPausado como true, caso a musica esteja pausada!
	var somPausado:Boolean = false;
	// Preenchemos a variavel somParado como true, caso a musica esteja parada!
	var somParado:Boolean = false;
	
	// Setamos o volume do novoSom com o valor da variavel vol
	/*
	_global.novoSom.setVolume();
	 Define o nível de volume do som que vai de 0 a 100.
	 */
	_global.novoSom.setVolume(vol);
	// Setamos o valor do Text com o valor da variavel vol
	_root.controles.txtvolume.text = vol;
	
	// Setamos o balanço do novoSom com o valor da variavel bal
	/*
	_global.novoSom.setPan();
	Define a distribuição direita/esquerda do som.
	Os valores vão de 100 a -100 onde 100 é usado para que o som saia na direita
	e -100 para que o som saia na esquerda, 0 distribui igualmente para ambos os lados. 
	*/
	_global.novoSom.setPan(bal);
	// Setamos o valor do Text com o valor da variavel bal
	_root.controles.txtbalanco.text = bal;
	
	// Inicia a contagem do tempo da musica
	_global.verTime();
	
}

// Função utilizada para retorna a musica atual
_global.tocaMusicaAtual = function (){
	
	// Start na musica!
	// Aqui e dá um start daonde a musica foi pausada
	_global.novoSom.start();
	
	// Inicia a contagem do time novamente
	_global.verTime();
	
	// Setamos as variaveis booleanas como false
	somPausado = false;
	somParado = false;
	// Habilitamos os controles
	_root.controles._visible=true;
	// Habilitamos o mcPausa e desabilitamos o mcPlay
	mcPausa._visible=true;
	mcPlay._visible=false;
	// Habilitamos o text como o Time
	tTime._visible=true;
} 

// Função que pausa a música
_global.pausaMusica = function (){
	
	// Gravamos a posição onde a musica foi pausada
	_global.PosPausa = _global.novoSom.position;
	// Paramos a musica na posição
	_global.novoSom.stop();
	
	// Setamos a variavel booleana somPausado como true
	somPausado = true;
	somParado = false;
	
	// Habilitamos o mcPlay e desabilitamos o mcPausa
	mcPlay._visible=true;
	mcPausa._visible=false;	
	
	// Paramos o Time
	_global.paraTime();
	
}

// Função para retornar a musica de onde foi parada
_global.tiraPausa = function (){
	
	// Iniciamos a musica na posição que foi parada
	_global.novoSom.start(_global.PosPausa / 1000);
	
	// Setamos as variaveis booleanas como false
	somPausado = false;
	somParado = false;
	
	// Habilitamos o mcPausa e desabilitamos o mcPlay
	mcPausa._visible=true;
	mcPlay._visible=false;
	
	// Habilitamos novamento o Time de onde foi parado
	_global.verTime();
	
}

// Função para parar a música
_global.paraMusica = function (){
	
	// Paramos a musica
	_global.novoSom.stop();
	
	// Setamos a variavel booleana somParado como true
	somPausado = false;
	somParado = true;
	
	// Desabilitamos o mcPausa e habilitamos o mcPlay
	mcPausa._visible=false;
	mcPlay._visible=true;
	
	// Desabilitamos os controles
	_root.controles._visible=false;
	
	// Desabilitamos a barra de progresso
	_root.barra._visible = false;
	
	// Paramos o Time
	_global.paraTime();
	// Setamos o tTime como 00:00
	tTime.text="00:00";
	// Desabilitamos a visualização dele
	tTime._visible=false;
}
///////////////////////////////////////////////////////
/////////// FIM DE FUNÇÕES DE INTERAÇÃO ///////////////
//////////////////////////////////////////////////////


/////////////////////////////////////////////////////////////
///////////////// GERENCIAMENTO DOS BUTÕES //////////////////
/////////////////////////////////////////////////////////////

// Gerenciamento do Butão Play
mcPlay.onRelease = function (){
		// Caso o som esteja Pausado
		if (somPausado==true && somParado==false){
			// Tira a pausa
			_global.tiraPausa();
		}else{
				// Se não! Toma musica atual
				_global.tocaMusicaAtual();
		}
};

// Gerenciamento do Butão Pausa
mcPausa.onRelease = function (){
	// Pausa Musica
	_global.pausaMusica();
};

// Gerenciamento do Butão Stop
mcStop.onRelease = function (){
		// Para Musica
		_global.paraMusica();
};

// Gerenciamento do Butão Aumenta Volume 
controles.volAumenta.onRelease = function (){
	// Se o volume foi igual a 100
	if (vol == 100) {
		// Não aumenta nada
		vol += 0;
	} else {
		// Se não! Diminui de 10 em 10
		vol += 10;
		// Seta o novo volume
		_global.novoSom.setVolume(vol);		
		// Modifica o Text de volume
		_root.controles.txtvolume.text=vol;		
	}
}
	
// Gerenciamento do Butão Diminui Volume 
controles.volDiminui.onRelease = function (){
	// Se o volume foi igual a 0
	if (vol == 0) {
		// Não diminui nada
		vol -= 0;
	} else {
		// Se não! Diminui de 10 em 10
		vol -= 10;
		// Seta o novo volume
		_global.novoSom.setVolume(vol);
		// Modifica o Text de volume
		_root.controles.txtvolume.text=vol;
	}
}
	
// Gerenciamento do Butão Aumenta Balanço
controles.balAumenta.onRelease = function (){
	// Se o balanço foi igual a 100
	if (bal == 100) {
		// Não aumenta nada
		bal += 0;
	} else {
		// Se não! Aumenta de 10 em 10
		bal += 10;
		// Seta o novo balanço
		_global.novoSom.setPan(bal);
		// Modifica o Text de balanço
		_root.controles.txtbalanco.text = bal;		
	}
}
	
// Gerenciamento do Butão Diminui Balanço
controles.balDiminui.onRelease = function (){
	// Se o balanço foi igual a -100
	if (bal == -100) {
		// Não Diminui nada
		bal -= 0;
	} else {
		// Se não! Diminiu de 10 em 10
		bal -= 10;
		// Seta o novo balanço
		_global.novoSom.setPan(bal);
		// Modifica o Text de balanço
		_root.controles.txtbalanco.text = bal;		
	}
}
/////////////////////////////////////////////////////////////
////////////// FIM DE GERENCIAMENTO DOS BUTÕES //////////////
/////////////////////////////////////////////////////////////




/////////////////////////////////////////////////////////////
//////////// GERENCIAMENTO DO TEMPO DAS MUSICAS /////////////
/////////////////////////////////////////////////////////////

// Função que gera o Time
_global.pegaTime = function (){
	 // Declara uma nova instancia de objeto da classe Date.
	var tempo = new Date(_global.novoSom.position);
	// Setamos o text do time com a junção dos minutos com os segundos, devidamente formatados
	tTime.text = [formZeros(tempo.getMinutes(), 2), formZeros(tempo.getSeconds(), 2)].join(":");
	
	/*
	_global.novoSom.duration = Retorna a duração de um som em milisegundos. 
	_global.novoSom.position = Retorna a posição do som em milisegundos. 
	*/
	// Setamos o tamanho da barra de acordo com o calculo da posição divido pela duração.
	_root.barra.barra_d._xscale = _global.novoSom.position/_global.novoSom.duration*100
	
}

// Função administradora do Time
_global.verTime= function (){
	// Define a função para ser executada em cada intervalo de tempo.
   var progresso = setInterval(pegaTime, 100);
   
   	// Habilitamos a barra de progresso
	_root.barra._visible = true;
}

// Para Time
_global.paraTime= function (){
	// Anula a função do setInterval
	clearInterval(progresso);
}

// Função para formatar os numero adquiridos
_global.formZeros = function(n, q){

// transformamos n em um string e contamos o número de caracteres que ela contém
var a1 = q - n.toString().length;
// potenciamos nosso a1 à base 10, no nosso caso vai dar 10. 
var a2 = Math.pow(10, a1);
// pegamos o valor de a2 e transformamos em um string
var a3 = a2.toString();
// pegamos o valor de a3 (string) e mostramos ele a partir da posição 1,
//dessa forma por exemplo o 1 de 10 não aparece, restando somente 0. 
var a4 = a3.substr(1);
// retornamos a4, que no nosso caso é 0 e somamos com n.
return a4 + n;

}


/////////////////////////////////////////////////////////////
////////// FIM DE GERENCIAMENTO DO TEMPO DAS MUSICAS ////////
/////////////////////////////////////////////////////////////




/////////////////////////////////////////////////////////////
////////// LEITOR DE XML E GERENCIAMENTO DE COMBOBOX ////////
/////////////////////////////////////////////////////////////

// Declaramos o objeto musicasXML como sendo do tipo XML
var musicasXML:XML = new XML();
// Ignora os espaços em branco do arquivo XML
musicasXML.ignoreWhite = true;

// Criamos uma função
musicasXML.onLoad = function():Void {

	// Declaramos a Array que conterá as musicas
	var arrayMusicas = new Array();

	// For que vai de a = 0 ate a menor que o tamanho de musicasXML.childNodes[0].childNodes.length
	for (var a = 0; a<musicasXML.childNodes[0].childNodes.length; a++) {
		
		// Adiciona o valor adquirido à arrayMusicas
		arrayMusicas.push(musicasXML.childNodes[0].childNodes[a].attributes.nomeMusica);
		
	}
	
	// Adiciona todos os dados obtidos, agora localizados em arrayMusicas ao componente ComboBox cb_musicas
	// Componente que já se encontra no palco e devidamente instanciado
	cb_musicas.dataProvider = arrayMusicas;
	
	// Altera o estilo do componente ComboBox cb_musicas
	cb_musicas.setStyle("themeColor", "0xF0ECD0");
	cb_musicas.setStyle("color", "0x000000");
	cb_musicas.setStyle("fontFamily", "Trebuchet MS");
	// Adicionamos um evento
	cb_musicas.addEventListener("change", link);

}

// Cria o objeto Link
// Este objeto servirá para adicionarmos uma ação de linkagem a cada item no ComboBox preenchido anteriormente
var link = new Object();
// Criamos a função, que será automaticamente chamada quando algum item for selecionado.
link.change = function () {
	
	// Caso o item selecionado seja o nome Padrão
	// Este item padrão foi colocado dentro do nosso XML, sendo sempre o primeiro item
	if (cb_musicas.selectedItem=="Selecione Uma Música"){
		// Não inicializa nada!
	break;
	 }else{
		 // Se não!
		 // Para a música atual, caso tenha.
		 _global.paraMusica();
		 // Toca a música selecionada
		 tocaMusica(cb_musicas.value);
		 // Habilita a visualização dos controles
		 _root.controles._visible=true;
		 // Habilita a visualização dos botões
		 mcPausa._visible=true;
		 mcStop._visible=true;
		 mcPlay._visible=false;
		 // Habilita a visualização do Time
		 tTime._visible=true;
		 } 
};

// Arquivo XML a ser carregado
musicasXML.load("musicas.xml");

/////////////////////////////////////////////////////////////
////// FIM DE LEITOR DE XML E GERENCIAMENTO DE COMBOBOX /////
/////////////////////////////////////////////////////////////


/////////////////////////////////////////////////////////////
//////////////////// SETAGEM INICIAL ////////////////////////
/////////////////////////////////////////////////////////////

// Desabilita a visualização de todos os botões
mcPausa._visible=false;
mcPlay._visible=false;
mcStop._visible=false;
tTime._visible=false;

// Declaramos as variaveis que receberão Volume e balanço
var vol:Number = 100;
var bal:Number = 0;

// Desabilitamos a visualização dos controles
_root.controles._visible=false;

// Desabilitamos a barra de progresso
_root.barra._visible = false;
_root.barra.barra_d._xscale = 1;

/////////////////////////////////////////////////////////////
//////////////// FIM DE SETAGEM INICIAL /////////////////////
/////////////////////////////////////////////////////////////

Site Som Automotivo

13/07/2008, 12:44

:boxing: Galera blz, é o seguinte, peguei um trabalho aqui e o cliente quer um site de loja de som misturado com cobertura de eventos que será realizado pela loja
fiz aqui um modelo e gostaria da opnião de voces :assobio:
imagem 1
imagem 2

IPB Skin By Virteq