我正在制作一个闪光灯,它基本上是一个非常简单的跟踪器。我的问题是关于顺序播放,更具体地说是时序问题。

SoundChannel 对象方便地提供了 SoundCompleted 事件,但依赖该事件会导致声音之间产生微小的间隙,这(遗憾的是)使其毫无用处。

到目前为止,我所设法挖掘的只是使用每毫秒触发事件并手动观察开始下一个声音的滴答声的教程。这似乎有点黑客行为并且不必要地浪费资源。

有没有更好的方法通过无缝播放来按顺序计时声音?

有帮助吗?

解决方案 2

这可以工作,但超时不是独立的帧率的,或不完全无妨。他们触发,就像你说的,因为接近设定超时越好,但我发现,存在取决于帧率的准确性一些变化。

但由于原来的问题,我做了一些研究和的回答它自己

其他提示

如果查询当前声音的时间(或剩余时间)以毫秒为单位,并且 设置超时 在那段时间内,并在超时处理程序中开始下一个声音,这会起作用吗?这不是我尝试过并发现可靠的东西,但超时处理程序将在 Flash Player 可以管理的最接近直接时间的情况下被调用(无论帧速率等如何)。因此,如果它不起作用,我真的无法想象还有什么会起作用,除非它是估计需要多少 MS 余地的某种变化,并尝试在当前声音预定之前 5 毫秒或其他时间开始下一个声音。结尾。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top