lenerafa 0 Denunciar post Postado Março 6, 2010 Estou tentando abandonar o AS2 em meus projetos e gostaria que alguém me ajudasse a fazer a música da animação ter um efeito de fade in para iniciar e de fade out quando estivesse terminando. Eu já tentei diversos códigos, mas não consigo a solução. Sei que o código abaixo está perto, mas não sei corrigir. var tmp:Timer=new Timer(50) var sc:SoundChannel=new SoundChannel() var som:Sound=new Sound() som.load( new URLRequest("champ.mp3")) var fade:Number=1 var fadein:SoundTransform=new SoundTransform(fade) tmp.addEventListener(TimerEvent.TIMER, toca) tmp.start() sc=som.play(0,0,fadein) function toca(event:TimerEvent): void{ fade-=0.01 trace(fade) if(fade>1){ tmp.stop() } } Compartilhar este post Link para o post Compartilhar em outros sites
Elektra 102 Denunciar post Postado Março 7, 2010 Bom, não sei qual a versão do Flash você usa, mas no CS3 e CS4 há um recurso para editar o arquivo de som, efetuar cortes, e aplicar fade in e fade out independente da versão do action. No CS3, painel Properties, aba Sound > Edit, no CS4 idem, ícone do lápis, abre o painel Edit Envelope. Pessoalmente, prefiro usar o programa Audacity para editar arquivos de som, é gratuito e dispensa instalação. Uso em português, é simples de trabalhar e possui mais recursos (para salvar em mp3 instale a "Lame", tem dicas no baixaki e no site do desenvolvedor). Abraços Compartilhar este post Link para o post Compartilhar em outros sites
lenerafa 0 Denunciar post Postado Março 7, 2010 Você não entendeu. Se fosse para editar o arquivo de som, seria simples. Eu quero controlar esse som por actions Numa animação que tem um quadro só... Ou poucos. Só o suficiente para que todos os códigos façam o planejado. Abraços. Compartilhar este post Link para o post Compartilhar em outros sites
Michel Araújo 0 Denunciar post Postado Março 7, 2010 Falta só você aplicar o valor do volume ao SoundTransform e aplicar o SoundTransform ao SoundChannel. Na função para o FadeOut por exemplo, poderia ficar assim (usei os mesmos nomes de variáveis que você, embora alguns no caso n façam setido. A ideia seria a função fadeOut ser chamada a partir do Evento Timer do tmp): function fadeOut(event:TimerEvent):void { fadein.volume -= 0.01; sc.soundTransform = fadein; if(fadein.volume <= 0){ fadein.volume = 0; tmp.removeEventListener(TimerEvent.TIMER, fadeOut); tmp.stop(); } } não coloquei para parar o SoundChannel também... se n for dar o fadeIn depois, é bom para-lo =) Você pode usar uma classe como a TweenMax para fazer isso também, caso esteja usando em outras partes do código pode valer a pena =) OBS.: O Forum está transformando o sinal de menor que... é só mudar...<span class="pun"><br></span> Compartilhar este post Link para o post Compartilhar em outros sites
lenerafa 0 Denunciar post Postado Março 10, 2010 Agora eu aprendi amigo. Você ajudou muito e fico muito agradecido. Deus lhe pague. Compartilhar este post Link para o post Compartilhar em outros sites