тормоза во время воспроизведения звука
Здравствуйте.
я создал проект, где много возни с звуком. в основном работает extract и play. суть не в этом.сама программа работает как нужно, кроме одного момента. звук подлагивает. пример.я беру всего 1 трек (mp3 файл весом в 20 кб).звук ударника. и воспроизвожу его по команде. бывает что в секунду до 2 раз. и я понимаю, что звук тормозит. кто может сказать. или подсказать. почему в флэше звук может лагать, тормозить и тп? |
а вы случаем не на линуксе?
|
Все дело в том, что флеш каждый раз создает новый SoundChannel для каждого вызова Sound#play() из-за этого старые звуковые каналы попадают в мусор и копятся просто в неимоверном количестве. А потом сборщик мусора это все удаляет, из-за этого и лагает.
Система работы со звуком во флеше очень не продуманная |
нет.я на старом добром 7-ом виндоусе.
по поводу channel.идею понял.спасибо. попробую в 1 чаннеле сидеть) |
Если требуется чтоб несколько звуков накладывались друг на друга - на одном канале не выйдет.К сожалению, единственный способ создать новый SoundChannel - вызвать метод play у объекта класса Sound, поэтому пул тут не применишь.Да и уже отыгравший канал вроде как заново не запустишь.
Добавлено через 3 минуты да, еще момент - если все это на десктопе тормозить оно не должно даже с учетом работы GC(если только там не тысячами звуки запускаются).Раз все же тормозит - возможно дело в самом мп3 |
залил для каждого звука channek в массив.
то есть при каждом play работает 1 channel из массива.точнее один и тотже для каждого звука(у каждого свои). проблема не решилась.все равно есть тормоза.причем они то есть, то их нет.как будто ресурсов не хватает. ДЕСКТОП не проверял.сейчас по быстрому сделаю и отпишусь. Добавлено через 7 минут тоже самое.но вряд ли проблема в звуках.уже больно мало они весят Добавлено через 14 минут тэкс.как бы то не было странно, решение ВРОДЕ нашлось. у меня интервал , когда должен играть трек задавал Timer.хотел избежать привязки к фпс. сменил на EnterFrame и все пропало.никаких зависании. |
Цитата:
|
Цитата:
|
Цитата:
если мои код Код AS3:
Код AS3:
Цитата:
|
Цитата:
Цитата:
Цитата:
Цитата:
|
Часовой пояс GMT +4, время: 17:46. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.