Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 24-08-2004, 00:09   #1 (permalink)
Neuer User
 
Benutzerbild von julius_suiluj
 
Registriert seit: Apr 2004
Ort: BeRLin
Beiträge: 230
takt halten mit flash

hi
ich will in einem bestimmten zeit interval z.B. 0,5 sec eine action starten. das ist soweit kein problem, da ich ja die frames pro sekunde hab. das problem ist, dass es nicht ganz genau hinn haut, da sobald irgendwas etwas ruckelt die zeit verschoben wird.
mein ziel ist es im takt einer musik (mit bekannten bpm) eine action zu starten. hat jemand ne ahnung wie das 100% im takt funktioniert? fileicht über die systemziet???
bitte helft mir!
__________________
www.spektronaut.de

while ($bush == $president){
$krieg++;
}
julius_suiluj ist offline   Mit Zitat antworten
Alt 24-08-2004, 05:09   #2 (permalink)
Neuer User
 
Benutzerbild von julius_suiluj
 
Registriert seit: Apr 2004
Ort: BeRLin
Beiträge: 230
hab mir inzwischen mit getTimer weiter geholfen, was aber ne ziemlich poplige angelegeinheit ist...
__________________
www.spektronaut.de

while ($bush == $president){
$krieg++;
}
julius_suiluj ist offline   Mit Zitat antworten
Alt 24-08-2004, 05:25   #3 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Hi.

Das ist eine Sache, die ich auch noch mal
austesten muss. Aber nicht jetzt, weil
meine Birne für heute schon genug qualmt .

Meine spontane Idee wäre es über die Sound.position
zu lösen. Eigentlich müsste dann nur noch,
wenn man den ersten Taktinterval hat, das ganze mit
Modulo (%) steuerbar sein.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 24-08-2004, 07:17   #4 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
im Prinzip gibts dafür setInterval, das ist allerdings leider auch nicht genau, ein Beispiel:
ActionScript:
  1. timer=function(){
  2.     trace(getTimer()-_global.begin+" ms");
  3.     _global.begin=getTimer();
  4. }
  5. _global.begin=getTimer();
  6. myInterval=setInterval(timer,500);

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-
Alois ist offline   Mit Zitat antworten
Alt 24-08-2004, 07:23   #5 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Man könnte auch ein kleines Skript
mit einem Button_mc basteln, bei dem
man im Takt auf den Button_mc drückt,
um die Werte in einem Array zu speichern.

Dann kann man genau schauen, an welcher
Position und in welchem Abstand die Taktrate
liegt.

Hört sich doch gut an oder?
Wenn ich später wach bin, werde
ich mich mal ran machen um das zu testen.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 24-08-2004, 08:13   #6 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
ist das Dein Ernst???
...bist Du Dir überhaupt sicher, daß Du über dasselbe Thema sprichst wie julius...
ich glaube Du beziehst das mit dem Takt auf ein Lied, dafür kannst Du den sound ja streamen lassen und halt immer bei einem Takt eine funktion aufrufen, das ist ja gar kein Problem, wenns dann ruckelt fehlen halt ein paar Bilder aber die Aktionen werden durchgeführt.
in julius Fall ist die setInterval-Lösung wohl die komfortabelste mit (je nach System und bei ausreichend hoher framerate) 4-8 Millisekunden Ungenauigkeit und der getTimer-Weg der genaueste.

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (24-08-2004 um 08:14 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 24-08-2004, 08:20   #7 (permalink)
muh
 
Benutzerbild von Janoscharlipp
 
Registriert seit: Apr 2002
Ort: Freiburg / Stuttgart
Beiträge: 4.338
ich denke auch, dass setInterval dafuer gut geeignet ist. Dass es nicht sooo genau ist, muss man eben verschmerzen, besser geht es wohl einfach nicht.
Janoscharlipp ist offline   Mit Zitat antworten
Alt 24-08-2004, 09:15   #8 (permalink)
[+]
 
Benutzerbild von André Michelle
 
Registriert seit: Dec 2002
Ort: cologne
Beiträge: 2.271
sync

Ein setInterval wird nicht lange syncron laufen. Ein exaktes Event gibt es nicht, denn das onSoundComplete ist leider auch nicht plattformunabhängig. Ein ausreichendes dauerhaftes Event habe ich oben gebastelt.

Wenn Du nicht plattformabhängig arbeiten willst (nur Win2k und WinXP), dann gibt es eine nahezu exakte Lösung mit 'onSoundComplete'.

flash reason. Schau Dir die class sync an.
__________________
aM

blog | laboratory | tonfall | processing

Audiotool.com

Geändert von André Michelle (24-08-2004 um 09:19 Uhr)
André Michelle ist offline   Mit Zitat antworten
Alt 24-08-2004, 14:55   #9 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
@ Alois häää....?

Julius meint doch musik
Zitat:
mein ziel ist es im takt einer musik
Vielleicht liegst Du ja falsch

Ich verstehe nicht, wieso ich falsch liegen soll. Meine Idee ist
doch furchtbar gut. Da ich die Ungenauigkeit kenne, dass ganze
aber noch nicht angegangen bin, denke ich schon, dass man es
so lösen kann.
Die Sound.position ist wohl das genaueste, um Taktgenau zu
arbeiten, oder liege ich tatsächlich falsch?
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 24-08-2004, 17:42   #10 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
öööh, jo dann streamen feddich....

Edit: soll heissen, einen mc erstellen der soviele frames hat wie das liedchen lang ist, das liedchen dan z.B. auf ebene1 legen und auf ebene 2 bei bumms funktion links aufrufen
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (24-08-2004 um 17:48 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 24-08-2004, 21:22   #11 (permalink)
Neuer User
 
Benutzerbild von julius_suiluj
 
Registriert seit: Apr 2004
Ort: BeRLin
Beiträge: 230
hi
hette nicht gedacht, das ich bei dieser frage noch antworten bekomme, aber vielen dank.
ich hab das jetzt so gelöst:
PHP-Code:
onClipEvent (enterFrame) {
    
zeit getTimer();
    
zeit zeit.toString();
    
lang zeit.length-3;
    
ziffer zeit.charCodeAt(lang);
    if (
ziffer == 48) {
        if (
ziggi == 1) {
            
trace("zack");
            
ziggi 0;
        }
    } else {
        
ziggi 1;
    }
    if (
ziffer == 53) {
        if (
ziggi2 == 1) {
            
trace("bumm");
            
ziggi2 0;
        }
    } else {
        
ziggi2 1;
    }

das funktioniert so auch. ich teste es, indem ich die musik mit einem dj programm syncron dazu laufen lasse, und dann den prozessor belaste. und es bleibt immer im takt!

das problem ist einen takt aus dem getTimer rauszuhohlen. meine einzige idee war es immer wenn die drittletzte zahl ne null ist du aktion zu starten. komischer weise ist sie aber nie null sondern immer irgendwas zwischen 48 und 57...
das problem an der methode ist, dass ich nur einen graden takt (60 oder 120Bpm) benutzen kann.

ich versuch jetzt nochma aus den vorschlägen von euch schlau zu werden.
aber ist setInterval nicht auch prozessor abhängig???
__________________
www.spektronaut.de

while ($bush == $president){
$krieg++;
}
julius_suiluj ist offline   Mit Zitat antworten
Alt 24-08-2004, 23:52   #12 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
typ: ähhhmmm, hinterm Banhof links.

ich: Aha.
Wo iss'n der Bahnhof?

typ: Ja das müssen sie schon selbst raus finden.

ich: Axo.

__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Alt 25-08-2004, 14:08   #13 (permalink)
Give me a gun!
 
Benutzerbild von Buscemi
 
Registriert seit: Jan 2002
Ort: Berlin
Beiträge: 141
Zitat:
Zitat von thebiz

Ich glaub, Du glaubst, der Sound läuft innerhalb von Flash. Julius will aber nur die Action in Flash. Und diese synchron zu der Mucke, die z.B. aus seinem Kassettendeck kommt. Glaube ich. Letztendlich ist alles eine Frage des Glaubens! Glaub mir.

Buscemi
Buscemi ist offline   Mit Zitat antworten
Alt 25-08-2004, 15:06   #14 (permalink)
All-rounder
 
Benutzerbild von thebiz
 
Registriert seit: Mar 2004
Ort: Bayerische Rhön
Beiträge: 2.507
Axo, das kann auch sein.
Takt einer externen Quelle angleichen.
Einem old-school Tape

Das waren Zeiten.

Dann ist wohl die Systemzeit, das einzige Metronom.
Stimmt.
__________________

--------------------------------
Ich klicke, ergo bin ich. (me)
--------------------------------
thebiz ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 09:42 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele