Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   delete sound - не удаляется (http://www.flasher.ru/forum/showthread.php?t=110823)

Czar 09.04.2008 19:04

delete sound - не удаляется
 
Вложений: 1
делал прослушку потокового звука, то есть как бы превьюшка мп3-файла...
была проблема с остановкой звука, нашёл на форуме, темку где советовали удалять контейнер со звуком..в общем у меня почему то не удаляется и звук получается вообще ведёт себя непонятным образом: при загрузке начинает играть как и полагается, но потом даже если оатсанавливаешь, он видать докачивает поток и начинает играть... в общем в прикреплённом файле пример моей работы...взято всё с приера из самого флэша....

qazwsx 09.04.2008 19:25

Не смотрю файл но... Перед удалением ты останавливаеш звук?

Czar 09.04.2008 19:37

да:)) а не надо?
Код:


var flag:Boolean;
flag = false;


_root.playstop.onRelease = function() {
        if (flag) {
                _root.playstop.gotoAndStop(1);
                my_sound.stop();
                delete my_sound;
                flag = false;
        } else {
                var my_sound:Sound = new Sound();
                flag = true;
                _root.playstop.gotoAndStop(2);
                my_sound.loadSound('http://adm.umuza.com/01.07.mp3',true);//_level0.pathToSong
                my_sound.onLoad = function(success:Boolean) {
                if (success) {
               
                my_sound.start();
               
                }
                };/**/
        }

};

вот код, кому лень качать

etc 09.04.2008 20:07

А с чего вы взяли, что ваша локальная переменная, созданная при первом вызове функции, доживет до второго?

Czar 09.04.2008 20:46

хороший вопрос!! можно сказать даже отличный, спасибо за него. натолкнул на верную мысль....

следующий вопрос:
скрипт работает уже почти так, как я хочу, но всё же при нажатии на плэй, он начинает играть, НО потом обрывается через время и начинает заново. видать поток докачивается и трэк начинает играть заново.. как этого избежать???
вот собственно исправленный код
Код:

var flag:Boolean;
flag = false;

_root.playstop.onRelease = function() {
        if (flag) {
                _root.playstop.gotoAndStop(1);
                delete _global.my_sound;
                flag = false;
        } else {
                _global.my_sound = new Sound();
                flag = true;
                _root.playstop.gotoAndStop(2);
                _global.my_sound.loadSound('http://adm.umuza.com/01.07.mp3',true);//_level0.pathToSong
                _global.my_sound.onLoad = function(success:Boolean) {
                if (success) {
               
                _global.my_sound.start();
               
                }
                };
        }

};


etc 09.04.2008 22:31

delete удаляет ссылку на объект Sound, но сам звук продолжает жить в памяти и звучать. Где вы его останавливаете *— я не вижу.

Czar 10.04.2008 12:11

хорошо, и куда его запихнуть???
и разве он в этом объекте не хранится??

действия у меня происходят следующие:
нажимаю на кнопку, начинается потоковое проигрывание трэка, потом по прошествии времени, необходимого для закачки полного трэка музыка обрываети и начинает играть заново....
кнопка "стоп" действует!!! в обоих случаях...
мне необходимо разобраться почему происходит полная загрузка трэка ипроигрывание его сначала с обрыванием потокового звука....
ЗЫ: можно на "ты"...а то преподом себя чувствую;)


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

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