Actionscript/ Actionscript Frameworks/ AS 3.0/ Flash Componentes/ Flash CS 3/ Flash CS4

Criando um player de MP3 com Flash CS4 e actionscript 3.0

O exemplo abaixo, mostra como criar um player de música em actionscript 3.0 feito com alguns componentes básicos do Flash CS4, aquiles que vem por padrão no Flash CS3 e Flash CS4.
O projeto foi feito usando o Flex Builder, então procure nos arquevos do site como usar os componentes do Flash no Flex Builder.

Na atual versão do actionscript 3.0 é bem complicado usar a classe de som, para se ter uma idéia, foi necessário usar as classes Sound, SoundChannel,SoundTransform, só para dar o play e controlar o volume.
Em fim, segue abaixo o exemplo:

playermp3

Código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
package {
	import fl.controls.Button;
	import fl.controls.Slider;
 
	import flash.display.Sprite;
	import flash.events.MouseEvent;
	import flash.net.URLRequest;
	import flash.media.Sound;
	import flash.media.SoundTransform;
	import flash.media.SoundChannel;
	import flash.events.MouseEvent;
	import flash.events.Event;
	import fl.events.SliderEvent;
	import fl.controls.Label;
 
	[SWF(width="400",height="150",backgroundColor="0xF2F2F2",frameRate="25")]
	public class AS3Player extends Sprite
	{
		public var playButton:Button;
		public var stopButton:Button;
		public var volumeControl:Slider;
		public var urlSom:String = "mp3/seusom.mp3";
		public var MP3Request:URLRequest;
		private var musicaTransform:SoundTransform;
		private var musicaCanal:SoundChannel;
		private var musica:Sound;
		private var volLabel:Label;
 
 
		public function AS3Player()
		{
			super();
 
			MP3Request = new URLRequest(urlSom);
 
			musica = new Sound();
			musica.load(MP3Request);
			musicaCanal = new SoundChannel();
			musicaTransform = new SoundTransform(0.5,0);
 
 
 
			/**
			 * Montar os botões e Slider para controlar o som
			 *
			 * playButton - Toca o som;
			 * stopButton - Para o som;
			 * volumeControl - Aumenta e diminue o som;
			 * */
 
			playButton = new Button();
			playButton.label = "Tocar";
			playButton.x = 10;
			playButton.y = 20;
			addChild(playButton);
			playButton.addEventListener(MouseEvent.CLICK,SomAction);
 
			stopButton = new Button();
			stopButton.label = "Parar";
			stopButton.x = playButton.width + 20;
			stopButton.y = 20;
			addChild(stopButton);
			stopButton.addEventListener(MouseEvent.CLICK,SomAction);
 
			volumeControl = new Slider();
			volumeControl.direction = "horizontal"// ou vertical;
			volumeControl.minimum =0;
			volumeControl.maximum =1;
			volumeControl.doubleClickEnabled = true;
			volumeControl.tickInterval = .1;
			volumeControl.snapInterval = .1;
			volumeControl.value = musicaTransform.volume;
			volumeControl.liveDragging = true;
			volumeControl.x = 230;
			volumeControl.y = 20;
			addChild(volumeControl);
			volumeControl.addEventListener(SliderEvent.CHANGE,VolumeAction);
 
			volLabel = new Label();
			volLabel.text = "Volume";
			addChild(volLabel);
			volLabel.x = 250;
			volLabel.y = 40;
		}
 
		/**
		 * @public
		 * Controla o volume da música carregada;
		 * */
		public function VolumeAction(e:SliderEvent):void{
				musicaTransform.volume = volumeControl.value;
				musicaCanal.soundTransform = musicaTransform;
		}
 
		/**
		 * @public
		 * controla o som, play e stop;
		 * */
		public function SomAction(e:MouseEvent):void{
 
				var posicao:int = musicaCanal.position;
				if(playButton.label == "Tocar"){
					playButton.label = "Pausa";
					musicaCanal = musica.play(posicao);
				}else{
					musicaCanal.stop();
					playButton.label = "Tocar";
					musicaCanal.stop();
				}
		}
	}
}
Flash/ Flash 8/ Flash Componentes/ Flash MX 2004/ Notícias

Proteja seus arquivos .swf e .swc do Flash 8


Amayeta acaba de lançar a nova versão do seu obfuscator para arquevos .swf, e um novo produto o .SWC encrypt 1.0 que faz a proteção do código fonte de componentes.

Eu já havia visto um studio de design e multimidia aqui em São Paulo usando o Amayeta e segundo o diretor de arte é uma mão na roda para quem quer proteger seus arquevos finais e deixar que muitos não sugem suas idéias.

Saiba mais sobre o Amayeta em seu site.

Detalhe é que se você usar não só a técnica de obfuscator usando o amayeta, pelo fato de custar $250,00 dolares, você também pode usar alguns truques para deixar os desencriptadores de arquevos .swf vindos do Flash, mx2004 e 8 doidos.

Procure saber mais sobre as classes MD5 para Actionscript 2.0 e também a classe Timer que é padrão no Flash, ambas combinadas dão um resultado inigualável porém não tão 100% seguro quanto o da Amayeta.

Flash/ Flash Componentes/ Labs

Executando comandos do SQL dentro do Flash

Esse final de semana passado, eu iniciei um novo componente para Flash 8 à pedido de sugestões feitas por alguns designers em relação ao último componente anunciado aqui.

Pois bem, eu pretendo concluir esse componente e entregar para os designers começarem a desfrutar de comandos SQL dentro do Flash para carregar em dataGrids, comboBox, Menus, Lists etc.

Ainda tá muito em alpha e já testei localmente e enviei para alguns amigos testarem, e ficaram satisfeitos com a facilidade de usá-lo.

Em carácter pessoal eu acredito que isso possa de certa forma automatizar certas tarefas na hora de exibir informações ao designers, por exemplo no cadastro de novos trabalhos feitos à serem exibidos em seus portifólios pessoais, resultados de Quiz, carregamento de textos dinâmicos, etc. Em fim o uso é abrangente e pode se condicionar à qualquer uso pessoal ou profissional.

É compatível com PHP e ColdFusion, para ASP ainda não sei como fazer por não saber nada de ASP. Se alguém souber peço ajuda e posso portá-lo.

Mais detalhes de como ele funciona eu postarei assim que ele tiver pronto. Por enquanto é só para alertar que está no forno.

Assim que tiver pronto e tudo funcional eu coloco aqui para vocês baixarem. Pensei muito em vender essa extesão já que ela foi inspirada por um dos designers que me alertou sobre essa que é vendida por 29,90 dólares. Mas acho que aqui no caso Brasil muita gente gosta de coisa de grátis, então seria muita sacanagem eu colocar isso à venda. O bom é distribuir gratuitamente. Mas detalhe que não dou suporte à nenhum componente feito, usem pelo seu próprio risco, não por que seria soberbo ou autoritário quanto à isso. Mas é a falta de tempo mesmo em responder todos os e-mails.

E falando-se em e-mails peço desculpas sinceras à todos que já me enviaram e-mails geralmente dúvidas, pois tento manter sempre todos atualizados com seus respectivos e-mails, e todos os dias vou respondendo à todos. Se você não recebeu minha resposta ainda, pode esperar que ela chega.

AS 2.0/ Flash Componentes/ Labs

Componente para Flash 8 focado para designers

A algum tempo atrás, criei uma série de componentes para o Flash 8 voltado para designers. Como é de costume, mas essa regra não se aplica à todos, designers sempre estão desorganizados devido a grande pressão exercída por seus superiores em studios de criação, ou também pelo simples fato de não estarem tão acostumado com actionscript.

Outrora, é muito fácil usar os componentes desenvolvidos, tanto que na época Fábiano Cruz me deu umas ótimas dicas como poderia ajudar, quando ainda trabalhava para a Tesla, onde em um determinado momento, sentamos juntos e bolamos algumas idéias na intenção de ajudar vários designers na hora da produção das suas peças e automatizar certas tarefas.

Pensando nisso, fiz a primeiro componente, que foi o timerSet, um simples componente que ajuda economizando linha de tempo (frames), na hora de contagem de tempo. O que é comum em flash designers usar frames ao invés de código, que pelo resultado final fica mais elegante e o tamanho final do arquevo .swf fica 3x menor.

Alguns designers que posso mencionar de estarem usando é a Morena Carvalho (na Austrália), Equepe de designers da Burn Studio, Fabiano Cruz(TV1), Will Lennon (tesla), Marcio Toledo etc entre outros que receberam acesso aos componentes.

Porém alguns deles ainda tão em fase de alpha e estritamente sem uso comercial ainda. O único que pode ser usado é o Timer Component(Componente de intervalo), com ele você pode controlar. Imagine por exemplo que você tem várias fotos e quer fazer um pulo entre essas fotos mas quer que dure alguns segundos antes que mude de foto. Na cabeça do designer que não está acostumado com programação o que ele acaba fazendo? Ele começa a criar timelines enormes até consegui o produto final. Continue imaginando que depois dele ter feito todo o trabalho o chefe dele pede, “Olha ai figura, agora não vai ser mais 5 segundos, diminua mais um pouco para 3”. Pronto coloque mais 30min para ele reajustar tudo.

Com o timer Component ele apenas arrasta para onde ele queser, dentro ou fora do Palco por ser invisível, e ele pode ter duas opções de pulo de frame, que é baseado em nome do frame e também pelo número do frame. Setando apenas por segundos e não por milisegundos.

É basicamente uma idéia tão simples usando setInterval que para designers é uma mão na roda.

Quer mais detalhes?

Apenas para Flash 8
Funciona no Mac e Windows
Baixe o componente

Veja ele em ação:

Visualizar

Acesso aos próximos componentes eu estarei colocando no ar quando estiverem prontos, só posso dar detalhes quando valer a pena posta-los.
Por equanto designers testem e abusem o Componente de Intervalo, mande sugesões no que poderia ajudar você à automatizar suas tarefas. Será de bom uso para todos.

O exemplo abaixo foi usado com o componente de intervalo

Requer o Flash Player