Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236

    Caricamento di file audio da swf esterni

    Buongiorno a tutti,

    cerco aiuto per un problema piuttosto grosso che mi si è presentato...

    Ho una serie di file swf che costituiscono i pezzi del mio gioco. Ognuno di questi ha la sua colonna sonora che è caricata da un file swf esterno che contiene solo l'audio nella libreria, concatenato con il nome "suono". Il file audio esterno è caricato tramite un preload che assicura che il filmato del gioco non parta fino a quando anche l'audio non è completamente caricato.
    Nel momento in cui ho montato la sequenza delle fasi di gioco all'interno di un swf contenitore il meccanismo degli audio non funziona più, nel senso che mi carica solo il primo audio ma non tutti gli altri.
    Qualcuno sa darmi un suggerimento per ovviare al problema???

    Allego il codice del preload (che è associato ad un mc vuoto posizionato nel primo frame della timeline di ogni pezzo del gioco).


    onClipEvent (load) {
    _parent.stop();
    main = true;
    }

    onClipEvent (enterFrame) {
    percent=Math.floor(getBytesLoaded()/getBytesTotal()*100);
    myOutput.text = "Caricamento " + percent

    if (main) {
    car = _parent.getBytesLoaded();
    tot = _parent.getBytesTotal();

    if (car == tot) {
    loadMovieNum ("vigilesound.swf", 1);
    main = false;
    suono = true;
    }
    }
    if (suono) {
    car = _level1.getBytesLoaded();
    tot = _level1.getBytesTotal();

    if(car != undefined){
    if(car == tot){
    _level1.musica.start(0,99);
    _parent.play();
    }
    }
    }
    }

    Magari bisogna proprio cambiare metodo di caricamento dell'audio perché funzioni....qualche suggerimento? :master:

    Thanks and byez to all!!!

  2. #2
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Dimenticavo....

    i vari swf del gioco vengono caricati in un mc vuoto all'interno dell'swf contenitore con il loadMovie quindi non uso i livelli.

    Inoltre uso MX.

    Ri-graz!

  3. #3
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Up!!!

    Vi prego non mi abbandonate ora.....

  4. #4
    intanto al posto di:

    if(car != undefined){

    scrivi

    if(car > 1024){

    perchè anche se il file esterno non viene ancora rilevato, non è detto che car sia uguale a undefined

    magari già così potrebbe funzionare...



    Poi, non ho capito se non ti parte il suono degli altri swf oppure senti sempre il primo

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  5. #5
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Ciao Yassassin,

    grazie per la risposta

    Non capisco la modifica che mi hai segnalato, perché il preload in questione funziona finché i file non vengono caricati nello scatolone comune...e poi il "1024" a cosa si riferisce???

    Quello che succede è che sento solo l'audio del primo swf che viene caricato, al caricamento del secondo swf non sento più nulla e avanti senza audio fino alla fine.


  6. #6
    Originariamente inviato da Niniane
    Non capisco la modifica che mi hai segnalato, perché il preload in questione funziona finché i file non vengono caricati nello scatolone comune...e poi il "1024" a cosa si riferisce???
    flash quando carica dei file esterni, non rileva subito il suo peso reale, quindi il getBytesLoaded(); all'inizio restituisce dei valore errati (ossia il peso di un swf vuoto) e lo stesso vale per il getBytesTotal() e perciò subito ti ritrovi con car==tot (quando in realtà non hai caricato ancora nulla).

    per evitare questo problema, faremo il controllo car==tot solo quando siamo sicuri che flash abbia rilevato i valore esatti dei byte Totali e quelli precaricati del file esterno

    spero di essere stato chiaro


    Originariamente inviato da Niniane
    Quello che succede è che sento solo l'audio del primo swf che viene caricato, al caricamento del secondo swf non sento più nulla e avanti senza audio fino alla fine.
    hai provato a fare la modifica che ti ho indicato?
    i vari file audio li carichi sempre sullo stesso livello?

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  7. #7
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    <quote>flash quando carica dei file esterni, non rileva subito il suo peso reale, quindi il getBytesLoaded(); all'inizio restituisce dei valore errati (ossia il peso di un swf vuoto) e lo stesso vale per il getBytesTotal() e perciò subito ti ritrovi con car==tot (quando in realtà non hai caricato ancora nulla).

    per evitare questo problema, faremo il controllo car==tot solo quando siamo sicuri che flash abbia rilevato i valore esatti dei byte Totali e quelli precaricati del file esterno</quote>

    Ehm....scusa ma non mi è molto chiaro o meglio non capisco perché tutto funziona finché il file viene gestito singolarmente e invece non funziona quando lo carico all'interno di un altro swf.

    Il preload è uguale per tutti i pezzi del gioco, cambia solo il nome del file audio che viene di volta in volta caricato.

    <quote>hai provato a fare la modifica che ti ho indicato?
    i vari file audio li carichi sempre sullo stesso livello?</quote>

    Non ho ancora provato...ora provvedo.
    Si sono caricati sempre sullo stesso livello, appunto sono uguali tutti i preload.

    Vado...dò un paio di cornate , un'arrampicata e torno!

  8. #8
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    Provato ma non funzia...

    Il primo audio parte regolarmente ma al caricamento degli altri pezzi non si sente più un tubo

  9. #9
    Originariamente inviato da Niniane
    Provato ma non funzia...

    Il primo audio parte regolarmente ma al caricamento degli altri pezzi non si sente più un tubo



    mmmh... per caso modifichi il valore del volume?

    prova ad aggiungere:

    if(car == tot){
    _level1.musica.start(0,99);
    _level1.musica.setVolume(100);
    _parent.play();
    }

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  10. #10
    Utente di HTML.it L'avatar di Niniane
    Registrato dal
    May 2004
    Messaggi
    236
    No, il volume non lo tocco.

    Ho anche fatto un'altra prova ovvero ho messo un altro mc vuoto nel mio contenitore da usare per caricare gli audio.
    Cioè invece di caricare l'audio esterno sul livello 1 del suo filmato di appartenenza ho provato a farlo caricare nell'mc vuoto dell'swf scatolone.

    Peggio di prima!!! Così facendo non solo non parte l'audio ma non parte proprio il filmato ovvero schermata bianca (arancione nel mio caso).
    Non essendo esperta di codice certo potrei aver sbagliato la sintassi ma vai a sapé!!!

    Uahhhhhhhhhhhhhhhhhhhhhhhh

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.