Frage

Ich mache einen Blitz, der im Grunde ein sehr einfaches Tracker ist. Meine Frage bezieht sich auf sequentielle Wiedergabe und insbesondere Timing-Probleme.

Das SoundChannel--Objekt bietet bequem ein SoundCompleted-Ereignis, sondern in kleinen Lücken zwischen den Tönen auf, dass die Ergebnisse unter Berufung, die (leider) macht es nutzlos.

Alles, was ich habe es geschafft, so weit zu graben, sind Tutorials Ereignisse mit jeder Millisekunde Triggerung und manuell für die Zecke zu beobachten, wo die nächste Ton zu starten. Dies scheint ein wenig hackish und unnötig verschwenderisch Ressourcen.

Gibt es einen besseren Weg, um Timing-Sounds nacheinander mit lückenloser Wiedergabe?

War es hilfreich?

Lösung 2

Das könnte funktionieren, aber Timeouts sind nicht unabhängig von Framerate, oder nicht ganz jedenfalls. Sie lösen, wie Sie sagen, wie nah an der eingestellten Timeout wie möglich, aber ich habe festgestellt, dass es einige Unterschiede in der Genauigkeit auf der Bildrate abhängig.

Aber in Bezug auf das ursprüngliche Problem, habe ich einige die Forschung und , antwortete sie mir .

Andere Tipps

Wenn Sie den aktuellen Sound der Zeit abfragen (oder Restspielzeit) in Millisekunden und ein Timeout für diesen Zeitraum festgelegt und beginnt, den nächsten Ton in dem Timeout-Handler, würde das funktionieren? Es ist nicht etwas, was ich versucht habe und als zuverlässig, aber Timeout-Handler so nah an die direkten Zeit wie der Flash Player kann (unabhängig von der Framerate, etc.) verwalten genannt werden erhalten. Also, wenn es nicht funktioniert, kann ich nicht wirklich vorstellen, was sonst würde, es sei denn, es war eine gewisse Variation der Schätzung, wie viele MS Spielraum erforderlich sind, und versuchen, die nächste Klang 5ms zu starten oder was auch immer, bevor der aktuelle geplant ist Ende.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top