Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Preload che carica immagini della libreria

    ciao a tutti....
    ho realizzato un banner di dimensioni considerevoli con all'interno 8 fotografie con una risoluzione alta per non compromettere la qualità delle immagini e funziona tutto bene, l'unica pecca è che essendo l'swf esportato di circa 1mb l'animazione parte dopo circa 5 secondi, e mi andrebbe anche bene, ma ci sono durante l'esecuzioni 2 picchi di caricamento dovuti a 2 immagini particolarmente pesanti che mi creano un blocco del filmato...per ovviare ho fatto un preload ma mi rode il fatto che con il preload io debba aspettare che l'intero swf sia caricato prima di visualizzare ilfilmato....percui la mia domanda è questa:

    1 - è possibile creare un preload che carichi solo il 50% dell'swf per poi far partire il filmato??

    oppure

    2 - è possibile creare un preload nel quale la prima cosa da caricare siano proprio le 2 foto incriminate che si trovano nella libreria per poi far partire il filmato senza intoppi???

    Grazie dell'aiuto...

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,780

    Re: Preload che carica immagini della libreria

    1 - è possibile creare un preload che carichi solo il 50% dell'swf per poi far partire il filmato??

    oppure

    2 - è possibile creare un preload nel quale la prima cosa da caricare siano proprio le 2 foto incriminate che si trovano nella libreria per poi far partire il filmato senza intoppi???
    Ciao

    In linea di massima entrambe le richieste sono risolvibili.
    Il problema comunque non si risolve definitivamente in quanto vuoi far partire il filmato mentre ancora deve scaricare parte del filmato .. credo che avresti comunque dei rallentamenti, ovviamente molto dipende anche dalla velocità di scaricamento.

    Ma già senza un preloader, il player flash funziona più o meno allo stesso modo...
    Cioè, una volta lanciato il filmato, avvia lo scaricamento in streaming.
    Questo significa che inizierà a scaricare la prima parte del filmato, ma il filmato non avrà inizio fintanto che non sia stata scaricata una quantità tale di bytes, stabilità da un algoritmo interno al player, capace di eseguire il filmato, "presumibilmente" senza interruzioni, mentre avviene lo scaricamento del resto del filmato stesso.

    Ti indico comunque un metodo (anzi due) per risolvere la richiesta numero 2.

    Se nella libreria non hai nessun oggetto concatenato e con l'opzione "Esporta nel primo fotogramma" allora potresti concatenare le due foto incriminate e selezionare quell'opzione.
    Il player penserà a tutto facendo scaricare per prime quelle foto e quindi il resto del filmato.
    In questo caso non servirà un preloader.

    Secondo caso.. (non l'ho testato ma teoricamente dovrebbe funzionare):
    Partendo dal principio che il filmato viene scaricato frame per frame iniziando dal primo e proseguendo via via fino all'ultimo, utilizziamo la proprietà _framesloaded per determinare, durante lo scaricamento, quale frame è stato appena scaricato (o già scaricato).

    Se hai, nella libreria, degli oggetti concatenati, tieni presente che non dovrai utilizzare in questo caso l'opzione "Esporta nel primo fotogramma".

    Detto ciò, crea tre frame vuoti prima dell'inizio dell'animazione.
    Nel primo inserisci questo semplice preloader:
    codice:
    stop();
    onEnterFrame = function () {
    	if (_framesloaded>=2) {
    		delete onEnterFrame;
    		gotoAndPlay(4);
    	}
    };
    Nel secondo frame "butta" sullo stage quello che ti interessa far scaricare inizialmente.
    Ad esempio le due foto di dimensioni immense... non importa come le disponi sullo stage, l'importante che siano messe sul secondo frame.

    Nel terzo frame inserirai le altre foto o eventuali oggetti, solo nel caso in cui questi avessero l'opzione "Esporta nel primo fotogramma", altrimenti lascia libero questo frame.

    Infine dal quarto frame in poi ci sarà il filmato vero e proprio.

    In pratica il preload tratterrà l'avvio finché non sarà completamente caricato il secondo frame e quindi tutto ciò in esso contenuto, ovvero le foto di dimensioni bibliche.
    Una volta caricato il secondo frame, il filmato andrà avanti al frame 4 dove inizierà l'animazione.. o meglio, dove continuerà lo streaming delle parti non caricate e automaticamente sarà eseguita l'animazione...

    Prova... se non funziona allora lascia pure perdere e crea un preload come si deve o comprimi in modo adeguato le immagini... con una compressione adeguata si può arrivare ad un buon compromesso qualità/peso.

    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #3
    Grazie mille KillerWorm per la risposta più che esaustiva....vado a provare entrambi i metodi e ti faccio sapere...
    per ora grazie ancora.


  4. #4
    Perfetto!! L'ho provato ed è proprio quello che cercavo.
    Ti ringrazio.
    Buona Giornata.

  5. #5
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,780
    No problem
    Buon proseguimento
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

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.