Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Проблема с зацикленным воспроизведением (http://www.flasher.ru/forum/showthread.php?t=191578)

Sinepym 05.01.2013 11:25

Проблема с зацикленным воспроизведением
 
Решил создать звуковое окружение в игре, но столкнулся с проблемой: при повторном воспроизведении звука происходит небольшая задержка, которая всё портит. То есть, задержку отчётливо слышно, а хотелось бы, чтобы воспроизведение велось как бы непрерывно.

Вот пример звука: rghost ru / 42745030 (ссылка почему-то обрезается)
Сам код прост до безобразия:
Код AS3:

sound.play(0, 9999);

Может кто-нибудь с этим сталкивался и знает, как решить эту проблему? Хотя, похоже, что никак не решить...

TWETTI 05.01.2013 12:11

В начале звука есть тишина длительностью 50 мс.
Сделайте так:
Код AS3:

sound.play(50, 9999);


caseyryan 05.01.2013 12:24

Если вариант предложенный TWETTI не прокатит (у меня не работал, все равно было слышно короткую паузу при использовании мп3)
То есть еще один вариант.
Если это mp3, то надо будет этот звук перегнать в wav, каким-то редактором типа sound forge убрать эту тишину, потом звук добавить в библиотеку flash ide, экспортировать в AS3 и сохранить как swc. Потом подключить библиотеку к проекту, и использовать уже просто как Sound.

Sinepym 05.01.2013 12:28

Цитата:

Сообщение от TWETTI (Сообщение 1113672)
В начале звука есть тишина длительностью 50 мс.
Сделайте так:
Код AS3:

sound.play(50, 9999);


Небольшая задержка все равно слышна, но уже гораздо лучше. Кстати, в звуковом редакторе идеально проигрывается, даже несмотря на эту тишину.

TWETTI 05.01.2013 12:32

Цитата:

Сообщение от Sinepym (Сообщение 1113675)
Небольшая задержка все равно слышна, но уже гораздо лучше. Кстати, в звуковом редакторе идеально проигрывается, даже несмотря на эту тишину.

В конце звука тоже есть задержка около 10 мс. Попробуйте вырезать тишину аудио редактором.

Sinepym 05.01.2013 12:44

Всё, понял. В звуковом редакторе я работал с WAV файлом и у него нету этих задержек. Они появляются после конвертации в MP3. Теперь осталось разобраться, почему так происходит.

caseyryan 05.01.2013 15:23

Sinepym это происходит из-за кодека мп3. Ничего с этим сделать нельзя. Как обойти я уже написал выше.

Sinepym 06.01.2013 22:02

Нашёл два способа зацикливания mp3:

1. С помощью программы MP3Loop - http://www.compuphase.com/mp3/mp3loops.htm
Она удаляет паузу в конце и почти всю паузу в начале (немного остаётся). Чтобы программа заработала, нужно в её папку поместить lame_enc.dll

2. С помощью кода - http://blog.andre-michelle.com/2010/...-loop-gapless/
Работает отлично. Под каждый трек нужно рассчитывать samplesTotal по формуле 44100 * Number(время в секундах).

gagaga 07.01.2013 03:01

2 способ из последнего поста работает, проверено лично мной, но есть нюанс: сэмплинг звука таким способом жрет нехило ресурсов

Nooob 07.01.2013 05:06

зачем семплинг. нужно просто слушать прогресс звука при проигрывании если осталось 10 мсекунд запускать заново.


Часовой пояс GMT +4, время: 16:29.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.