Någon som vet hur man får bort den lilla millisekunden i en loop?
allstå när musiken loopas blir det en litet hack innan ljudfilen spelas om?
Ljud; Flytande loop
10 svar · 394 visningar · startad av xhlin
det kan inte vara din loop som har en millisekunds tystnad i slutet/början ?
Jag har gjort flera loopar och inte märkt detta problem förr.
*EDIT*
Kollade nu på en sida jag gjorde förut, http://www.bullitmusic.com om du klickar på bandspelaren nere till vänster sen väljer band 1 så märker du att det är samma problem där, men väljer du band 2 så funkar det galant. Detta beror helt på att när looparna gjordes så vart det nån millisekund i början/slutet där det är tyst.
phred skrev:
det kan inte vara din loop som har en millisekunds tystnad i slutet/början ?
Jag har gjort flera loopar och inte märkt detta problem förr.*EDIT*
Kollade nu på en sida jag gjorde förut, http://www.bullitmusic.com om du klickar på bandspelaren nere till vänster sen väljer band 1 så märker du att det är samma problem där, men väljer du band 2 så funkar det galant. Detta beror helt på att när looparna gjordes så vart det nån millisekund i början/slutet där det är tyst.
finns inget hack i loopen, men det klickar ändå...testade att importera ljudet som wav och låta flash konventera ist...blev lite bättre men ändå inte prefekt ;(
en annan fråga är hur man ställer in volymen för en enskild ljud fil ?
mySound=new Sound(this);
mySound.attachSound("vattenpalats");
mySound.setVolume(50);
mySound.start(0,999);
myJumpSound=new Sound(this);
myJumpSound.attachSound("jump");
mySound.setVolume(50); påverkar allt ljud?
För att kunna påverka ett enskilt ljud (utan att alla andra ljud påverkas) så måste du lägga ljudet i ett eget movieclip (egen tidslinje). Så här typ:
_root.createEmptyMovieClip("soundeffect1", 1); //sista ettan anger depth (z)
vattenpalats = new Sound(soundeffect1);
vattenpalats.attachSound("vattenpalats");
vattenpalats.setVolume(50);
vattenpalats.start(0, 999);
Samma procedur för nästa ljud ("soundeffect2", 2)
osv...
/Alar
Glömde påpeka att alla ljud som ligger på samma tidslinje påverkas av t.ex setVolume.
En egen tidslinje är alltså det enda sättet att komma runt problemet.
/Alar
Att få bort ett hack i en ljudloop tror jag inte går att göra i Flash.
Själv brukar jag redigera ljudet i ett ljudredigeringsprogram typ "Audacity". Där kan man bl.a visuellt kolla (och justera) amplitud, envelope etc. Det är naturligtvis så att om ett ljud har en viss amplitud i början och en annan på slutet så blir det ett hack om ljudet loopas.
/Alar
Alar skrev:
Att få bort ett hack i en ljudloop tror jag inte går att göra i Flash.
Själv brukar jag redigera ljudet i ett ljudredigeringsprogram typ "Audacity". Där kan man bl.a visuellt kolla (och justera) amplitud, envelope etc. Det är naturligtvis så att om ett ljud har en viss amplitud i början och en annan på slutet så blir det ett hack om ljudet loopas.
/Alar
Tackar ! det funkar hur fint som helst!
undrar en anna sak..
om sätter en funktion till en knapp typ ett ljud
if(Key.isDown(40)){
vattenpalats.start(0,1);
}
kör man med 31fps och håller ner tangenten så grötar sig ljudet enormt. kan man på något sätt koda så att man måste släppa tangenten innan varabeln ökar med ett tex...nu är det som auto...vi inte ha den på release heller..
nu har jag tillfälligt gjort en varabel som räknar men det är ju ful kodning,)
Hm..? Du vill alltså spela ett ljud en gång (och dessutom räkna upp en variabel med 1) när man trycker på "nedåt-pilen"?
I så fall skulle jag skriva så här:
on (keyPress "<Down>") {
vattenpalats.start();//startar från noll och spelar en gång
variabel++;//räknar upp med 1
}
/Alar
men håller man istället in knappen tror koden att man tryckt på nedåt-pilen flera gånger och ljudet grötar ihop sig...det är allstå små korta ljud på kanske 0,5 sek
min tanke var att man har en variabel som styr ljudet är x=1; spelas ljudet...släppt pil nedåt blir x=0
men känner inte till kommadot för onRelease + Key
kanske if(Key.isUP(40)) ?
Jag testade scriptet jag gav dig - jag lade det på en knapp. Scriptet spelar ljudet endast en gång även om man håller ner tangenten. Variabeln kan du ju därmed strunta i... Och knappen kan du ju göra osynlig om du vill.
/Alar
ah, jag sriver ju i actions frame...och du action movieclip on (keypress) funkar ju inte där
jag använder ju if (Key.isDown(40)){...}