Показать сообщение отдельно
Старый 09.11.2011, 13:03
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 1  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Question Как избавиться от задержки звуков?

Всем привет. Неприятно удивился, когда попробовал по таймеру (с интервалом в 100мс) запускать один и тот же короткий звук (удар бас-бочки) — очень заметны перепады темпа и "сбои".

Кто-нибудь может мне подсказать, как добиться правильного неизменного темпа?

В дополнение простейший код:
Код AS3:
package 
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.TimerEvent;
	import flash.media.Sound;
	import flash.utils.Timer;
 
	/**
	 * ...
	 * @author Hauts
	 */
	[Frame(factoryClass="Preloader")]
	public class Main extends Sprite 
	{
 
		[Embed(source = "../lib/sounds/36.mp3")] private var drum_36:Class;
		private var drumSound:Sound;
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			drumSound = new drum_36() as Sound;
 
			var timer:Timer = new Timer(100);
			timer.addEventListener(TimerEvent.TIMER, onTimer);
			timer.start();
		}
 
		private function onTimer(e:TimerEvent):void 
		{
			drumSound.play();
		}
	}
}
__________________
hauts.ru