Posso modificare il frame rate di un filmato caricato su un altro?

Utente HTML.it
chiede

Posso modificare il frame rate di un filmato caricato su un altro?

Redazione HTML.it
risponde

No, non si può. Tutti i filmati assumono le proprietà del filmato principale, e quindi anche il frame rate. Caricando un filmato con 36 fps su uno a 12 fps, andranno entrambi a 12 fps. Inoltre non è possibile variare il frame rate durante la riproduzione.

Si può invece, tramite script, variare la velocità di riproduzione di una determinata timeline: a dire il vero si potrebbe correttamente solo rallentare, perchè l’accellerazione prevede una perdita di frame. Vediamo come.

Rallentare un movieclip

Si associa al movieclip che vogliamo rallentare:

onClipEvent (load) {
   this.stop ();
     i = 0;
   rate = 3;
     }
onClipEvent (enterFrame) {
  if(i == rate) {
  this.nextFrame();

     i = 0;
  } else {

     i++;
     }
  }

Aumentando il valore di “rate”, diminuisce la velocità di riproduzione. Se invece vogliamo rallentare la velocità della timeline principale, in un layer a parte, mettiamo un movieclip vuoto a cui associamo:

onClipEvent (load) {
  _root.stop ();
    i = 0;
  rate = 3;
   }
onClipEvent (enterFrame) {
  if (i == rate) {
   _root.nextFrame();

    i = 0;
   }else {

    i++;
    }
  }

Se invece vogliamo accellerare il movieclip:

onClipEvent (load) {
   this.stop ();
   rate = 2;
  }
onClipEvent (enterFrame) {
   this.gotoAndStop (this._currentframe+rate);
 }

Aumentando il valore di “rate”, aumenta la velocità, ma solo in virtù del fatto che vengono saltati in toto alcuni frame.