SWiSH Forum Strona Główna SWiSH Forum
Forum użytkowników programów SWiSH

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload

Poprzedni temat «» Następny temat
Problem z ładowaniem zewnętrznych MP3 (loadSound())
Autor Wiadomość
darekk84
Początkujący


Dołączył: 05 Paź 2014
Posty: 1
Skąd: Koszalin
Wysłany: Nie 05 Paź, 2014 21:24   Problem z ładowaniem zewnętrznych MP3 (loadSound())

Witam

tworzę pewien projekt w SWiShu. Jego jednym z głównych elementów jest ładowanie i odtwarzanie zewnętrznych plików mp3.

Wykorzystuje głównie następującą funkcję np:

onFrame (151) {
mySound=new Sound();
mySound.loadSound("sound/stale/lektor/s14.mp3");
mySound.start("0,1");
mySound.onSoundComplete = function () { _parent.nextFrameAndPlay();};
}

Loklalnie wszystko działa tak jak należy. Niestety pojawił się problem po wrzuceniu prawie gotowego swf na serwer. Niestety pliki nie są wczytywane i animacja się zatrzymuje.
Co może być przyczyną, że pliki są wczytywane lokalnie i animacja działa poprawnie, a po przesłanie na serwer (taka sama struktura plików/katalogów) niestety animacja dochodzi do odtworzenia pierwszego pliku i się zatrzymuje (plik nie jest wczytywany). Dodam, że wielkość pojedynczych plików to kilka kb więc nie powinno być to problemem.

Aby znaleźć błąd stworzyłem bardzo prosty plik tylko żeby przetestować działanie funkcji na serwerze (az.pl)

onFrame (1) {
mySound=new Sound();
mySound.loadSound("1.mp3");
mySound.start("0,1");
}

Niestety w takiej formie również nie działa pomimo, że plik 1.mp3 jest na tym samym poziomie co swf. Sprawdziłem wszystkie możliwe przeglądarki i ani razu plik nie został wczytany i odtworzony.

Proszę o pomoc, co może być przyczyną nie działania funkcji na serwerze a prawidłowego działania lokalnie. Spędziłem dziś cały dzień na poszukiwani rozwiązania, niestety bez skutku.

Pozdrawiam
Darek
 
     
^Januszr 



Pomógł: 216 razy
Dołączył: 11 Maj 2005
Posty: 1854
Skąd: Stolyca od urodzenia
Wysłany: Pon 06 Paź, 2014 05:09   

a jak spróbujesz podać ścieżkę do pliku z pełnym adresem typu: http://www.mojastrona.dom/pliki/..../1.mp3 ?
_________________
Niestety używam nieoficjalnych wersji Swish, które można zassać z forums.swishzone.com - jest na szczycie listy w BugsForum.
 
     
eden
Ekspert


Pomógł: 35 razy
Dołączył: 04 Sty 2008
Posty: 265
Skąd: warsaw
Wysłany: Pon 06 Paź, 2014 08:16   

Kod jest poprawny. Twoim problemem jest prawdopodobnie czas reakcji serwera.

W liniach
Cytat:
mySound=new Sound();
mySound.loadSound("sound/stale/lektor/s14.mp3");


Tworzysz obiekt i ładujesz plik. Ale na serwerze www, jest większy lag odpowiedzi niż na dysku lokalnym. Plik nie zdąży załadować się do obiektu zanim następna linia kodu się wykona:
Cytat:
mySound.start("0,1");

Obiekt mySound jest jeszcze pusty, niema ustawionego streamowania na true. Dlatego w rezultacie nic się nie dzieje.

Rozwiążesz to przy pomocy funkcji callbackowej "onLoad"

Cytat:

onFrame (151) {

mySound=new Sound();
my_sound.onLoad = function(success:Boolean) {
if (success) { mySound.start(); }
};
mySound.loadSound("sound/stale/lektor/s14.mp3");
mySound.onSoundComplete = function () { _parent.nextFrameAndPlay();};


}


Alternatywnym rozwiązaniem było by rozdzielenie tworzenia obiektu na znacznie wcześniejsze klatki, a na klatce 151 danie samej instrukcji .start()
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

SWiSH - Create Flash animaton the easy way

Powered by phpBB modified by Przemo © 2003 phpBB Group
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
         
Strona wygenerowana w 0.1 sekundy. Zapytań do SQL: 13