Jump to appropriate frame of animation

hi guys
thanks for reading and here is the problem im facing
i have a clock, and a background
the background contains an animated ocean (100 frames)
there are four sky themes which change on the appropriate hour to night-time, morning, sunset, sunrise (could just use alpha to show another here although maybe processor intensive)
ok so the ocean could animate on its own and only the sky would need to change, that would be the easy part
but when it gets to night-time the ocean needs to jump to the night-time version of itself
so if the user presses the hour button, and the ocean is on daytime at frame 80, how would i say play night version at frame 81
so that the ocean doesnt skip animation??
thanks in advance
fonzio

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at MethodInfo-307()
at wholesite2_fla::gametwo_mc_65/hoursrules()
at wholesite2_fla::gametwo_mc_65/frame1()
at flash.display::MovieClip/gotoAndPlay()
at wholesite2_fla::games_mc_39/frame3()
at flash.display::MovieClip/gotoAndPlay()
at MethodInfo-64()
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
hmm here is complete code im thinking that maybe some other code is conflicting:
stop();
import flash.display.FrameLabel;
import flash.display.MovieClip;
var mygame2timer:Timer;
var mygame2timer2:Timer;
var mycounter:Number=0;
var correct:Number=0;
var wrongtries:Number=0;
var tries:Number=0;
var hours:Number=12;
var minutes:Number=00;
ampm_txt.text=" PM";
mytime_txt.text=(hours < 10 ? "0" : "")+hours + ":" + (minutes < 10 ? "0" : "") + minutes + ampm_txt.text;
ampm_txt.visible=false;
randomtime();
//minutes_txt.text="00";
hoursrules();
//sea_mc.gotoAndPlay("daytime_sea");
btns_mc.btn_min_less.buttonMode=true;
btns_mc.btn_min_more.buttonMode=true;
btns_mc.btn_5_min_less.buttonMode=true;
btns_mc.btn_5_min_more.buttonMode=true;
btns_mc.btn_10_min_less.buttonMode=true;
btns_mc.btn_10_min_more.buttonMode=true;
btns_mc.btn_15_min_less.buttonMode=true;
btns_mc.btn_15_min_more.buttonMode=true;
btns_mc.btn_30_min_less.buttonMode=true;
btns_mc.btn_30_min_more.buttonMode=true;
btns_mc.btn_hr_less.buttonMode=true;
btns_mc.btn_hr_more.buttonMode=true;
btns_mc.btn_check_mc.buttonMode=true;
btns_mc.btn_min_less.mouseChildren=false;
btns_mc.btn_min_more.mouseChildren=false;
btns_mc.btn_5_min_less.mouseChildren=false;
btns_mc.btn_5_min_more.mouseChildren=false;
btns_mc.btn_10_min_less.mouseChildren=false;
btns_mc.btn_10_min_more.mouseChildren=false;
btns_mc.btn_15_min_less.mouseChildren=false;
btns_mc.btn_15_min_more.mouseChildren=false;
btns_mc.btn_30_min_less.mouseChildren=false;
btns_mc.btn_30_min_more.mouseChildren=false;
btns_mc.btn_hr_less.mouseChildren=false;
btns_mc.btn_hr_more.mouseChildren=false;
//button listeners
btns_mc.btn_min_less.addEventListener(MouseEvent.CLICK, minless);
btns_mc.btn_min_less.addEventListener(MouseEvent.MOUSE_OVER, minlessOver);
btns_mc.btn_min_less.addEventListener(MouseEvent.MOUSE_OUT, minlessOut);
btns_mc.btn_min_more.addEventListener(MouseEvent.CLICK, minmore);
btns_mc.btn_min_more.addEventListener(MouseEvent.MOUSE_OVER, minmoreOver);
btns_mc.btn_min_more.addEventListener(MouseEvent.MOUSE_OUT, minmoreOut);
btns_mc.btn_5_min_less.addEventListener(MouseEvent.CLICK, fiveminless);
btns_mc.btn_5_min_less.addEventListener(MouseEvent.MOUSE_OVER, fiveminlessOver);
btns_mc.btn_5_min_less.addEventListener(MouseEvent.MOUSE_OUT, fiveminlessOut);
btns_mc.btn_5_min_more.addEventListener(MouseEvent.MOUSE_OVER, fiveminmoreOver);
btns_mc.btn_5_min_more.addEventListener(MouseEvent.MOUSE_OUT, fiveminmoreOut);
btns_mc.btn_5_min_more.addEventListener(MouseEvent.CLICK, fiveminmore);
btns_mc.btn_10_min_less.addEventListener(MouseEvent.CLICK, tenminless);
btns_mc.btn_10_min_less.addEventListener(MouseEvent.MOUSE_OVER, tenminlessOver);
btns_mc.btn_10_min_less.addEventListener(MouseEvent.MOUSE_OUT, tenminlessOut);
btns_mc.btn_10_min_more.addEventListener(MouseEvent.CLICK, tenminmore);
btns_mc.btn_10_min_more.addEventListener(MouseEvent.MOUSE_OVER, tenminmoreOver);
btns_mc.btn_10_min_more.addEventListener(MouseEvent.MOUSE_OUT, tenminmoreOut);
btns_mc.btn_15_min_less.addEventListener(MouseEvent.CLICK, fifteenminless);
btns_mc.btn_15_min_less.addEventListener(MouseEvent.MOUSE_OVER, fifteenminlessOver);
btns_mc.btn_15_min_less.addEventListener(MouseEvent.MOUSE_OUT, fifteenminlessOut);
btns_mc.btn_15_min_more.addEventListener(MouseEvent.CLICK, fifteenminmore);
btns_mc.btn_15_min_more.addEventListener(MouseEvent.MOUSE_OVER, fifteenminmoreOver);
btns_mc.btn_15_min_more.addEventListener(MouseEvent.MOUSE_OUT, fifteenminmoreOut);
btns_mc.btn_30_min_less.addEventListener(MouseEvent.CLICK, thirtyminless);
btns_mc.btn_30_min_less.addEventListener(MouseEvent.MOUSE_OVER, thirtyminlessOver);
btns_mc.btn_30_min_less.addEventListener(MouseEvent.MOUSE_OUT, thirtyminlessOut);
btns_mc.btn_30_min_more.addEventListener(MouseEvent.CLICK, thirtyminmore);
btns_mc.btn_30_min_more.addEventListener(MouseEvent.MOUSE_OVER, thirtyminmoreOver);
btns_mc.btn_30_min_more.addEventListener(MouseEvent.MOUSE_OUT, thirtyminmoreOut);
btns_mc.btn_hr_less.addEventListener(MouseEvent.CLICK, hrless);
btns_mc.btn_hr_less.addEventListener(MouseEvent.MOUSE_OVER, hrlessOver);
btns_mc.btn_hr_less.addEventListener(MouseEvent.MOUSE_OUT, hrlessOut);
btns_mc.btn_hr_more.addEventListener(MouseEvent.CLICK, hrmore);
btns_mc.btn_hr_more.addEventListener(MouseEvent.MOUSE_OVER, hrmoreOver);
btns_mc.btn_hr_more.addEventListener(MouseEvent.MOUSE_OUT, hrmoreOut);
btns_mc.btn_check_mc.addEventListener(MouseEvent.CLICK, checker);
//button functions
function minlessOver(event:MouseEvent):void {
btns_mc.btn_min_less.gotoAndPlay("minover");
function minlessOut(event:MouseEvent):void {
btns_mc.btn_min_less.gotoAndStop("minout");
function minmoreOver(event:MouseEvent):void {
btns_mc.btn_min_more.gotoAndPlay("minover");
function minmoreOut(event:MouseEvent):void {
btns_mc.btn_min_more.gotoAndStop("minout");
function fiveminlessOver(event:MouseEvent):void {
btns_mc.btn_5_min_less.gotoAndPlay("minover");
function fiveminlessOut(event:MouseEvent):void {
btns_mc.btn_5_min_less.gotoAndStop("minout");
function fiveminmoreOver(event:MouseEvent):void {
btns_mc.btn_5_min_more.gotoAndPlay("minover");
function fiveminmoreOut(event:MouseEvent):void {
btns_mc.btn_5_min_more.gotoAndStop("minout");
function tenminlessOver(event:MouseEvent):void {
btns_mc.btn_10_min_less.gotoAndPlay("minover");
function tenminlessOut(event:MouseEvent):void {
btns_mc.btn_10_min_less.gotoAndStop("minout");
function tenminmoreOver(event:MouseEvent):void {
btns_mc.btn_10_min_more.gotoAndPlay("minover");
function tenminmoreOut(event:MouseEvent):void {
btns_mc.btn_10_min_more.gotoAndStop("minout");
function fifteenminlessOver(event:MouseEvent):void {
btns_mc.btn_15_min_less.gotoAndPlay("minover");
function fifteenminlessOut(event:MouseEvent):void {
btns_mc.btn_15_min_less.gotoAndStop("minout");
function fifteenminmoreOver(event:MouseEvent):void {
btns_mc.btn_15_min_more.gotoAndPlay("minover");
function fifteenminmoreOut(event:MouseEvent):void {
btns_mc.btn_15_min_more.gotoAndStop("minout");
function thirtyminlessOver(event:MouseEvent):void {
btns_mc.btn_30_min_less.gotoAndPlay("minover");
function thirtyminlessOut(event:MouseEvent):void {
btns_mc.btn_30_min_less.gotoAndStop("minout");
function thirtyminmoreOver(event:MouseEvent):void {
btns_mc.btn_30_min_more.gotoAndPlay("minover");
function thirtyminmoreOut(event:MouseEvent):void {
btns_mc.btn_30_min_more.gotoAndStop("minout");
function hrlessOver(event:MouseEvent):void {
btns_mc.btn_hr_less.gotoAndPlay("minover");
function hrlessOut(event:MouseEvent):void {
btns_mc.btn_hr_less.gotoAndStop("minout");
function hrmoreOver(event:MouseEvent):void {
btns_mc.btn_hr_more.gotoAndPlay("minover");
function hrmoreOut(event:MouseEvent):void {
btns_mc.btn_hr_more.gotoAndStop("minout");
//clicks
function minless(event:MouseEvent):void {
minuteHand_mc.rotation-=6;
if (minutes<1) {
  minutes=minutes+59;
  hourHand_mc.rotation-=30;
  hours=hours-=1;
} else {
  minutes=minutes-1;
if (hours<1) {
  hours=hours+24;
hoursrules();
function minmore(event:MouseEvent):void {
minuteHand_mc.rotation+=6;
if (minutes>=59) {
  minutes=minutes-59;
  hourHand_mc.rotation+=30;
  hours=hours+=1;
} else {
  minutes=minutes+1;
if (hours==0) {
  hours=hours+12;
if (hours>24) {
  hours=hours-24;
hoursrules();
function fiveminless(event:MouseEvent):void {
minuteHand_mc.rotation-=30;
if (minutes<5) {
  minutes=minutes+55;
  hours=hours-=1;
  hourHand_mc.rotation-=30;
} else {
  minutes=minutes-5;
if (hours<1) {
  hours=hours+24;
hoursrules();
function fiveminmore(event:MouseEvent):void {
minuteHand_mc.rotation+=30;
if (minutes>=55) {
  hourHand_mc.rotation+=30;
  hours=hours+=1;
  minutes=minutes-55;
} else {
  minutes=minutes+5;
if (hours==0) {
  hours=hours+12;
if (hours>24) {
  hours=hours-24;
hoursrules();
function tenminless(event:MouseEvent):void {
minuteHand_mc.rotation-=60;
if (minutes<10) {
  minutes=minutes+50;
  hours=hours-=1;
  hourHand_mc.rotation-=30;
} else {
  minutes=minutes-10;
if (hours<1) {
  hours=hours+24;
hoursrules();
function tenminmore(event:MouseEvent):void {
minuteHand_mc.rotation+=60;
if (minutes>=50) {
  hourHand_mc.rotation+=30;
  hours=hours+=1;
  minutes=minutes-50;
} else {
  minutes=minutes+10;
if (hours==0) {
  hours=hours+12;
if (hours>24) {
  hours=hours-24;
hoursrules();
function fifteenminless(event:MouseEvent):void {
minuteHand_mc.rotation-=90;
if (minutes<15) {
  minutes=minutes+45;
  hours=hours-=1;
  hourHand_mc.rotation-=30;
} else {
  minutes=minutes-15;
if (hours<1) {
  hours=hours+24;
hoursrules();
function fifteenminmore(event:MouseEvent):void {
minuteHand_mc.rotation+=90;
if (minutes>=45) {
  hourHand_mc.rotation+=30;
  hours=hours+=1;
  minutes=minutes-45;
} else {
  minutes=minutes+15;
if (hours==0) {
  hours=hours+12;
if (hours>24) {
  hours=hours-24;
hoursrules();
function thirtyminless(event:MouseEvent):void {
minuteHand_mc.rotation-=180;
if (minutes<30) {
  hourHand_mc.rotation-=30;
  hours=hours-=1;
  minutes=minutes+30;
} else {
  minutes=minutes-30;
if (hours<1) {
  hours=hours+24;
hoursrules();
function thirtyminmore(event:MouseEvent):void {
minuteHand_mc.rotation+=180;
if (minutes>=30) {
  hourHand_mc.rotation+=30;
  hours=hours+=1;
  minutes=minutes-30;
} else {
  minutes=minutes+30;
if (hours==0) {
  hours=hours+12;
if (hours>24) {
  hours=hours-24;
hoursrules();
function hrless(event:MouseEvent):void {
hourHand_mc.rotation-=30;
hours--;
if (hours<1) {
  hours=hours+24;
hoursrules();
function hrmore(event:MouseEvent):void {
hourHand_mc.rotation+=30;
hours++;
if (hours>24) {
  hours=hours-24;
hoursrules();
function hoursrules():void {
checkPhase(hours);
if (hours<12) {
  ampm_txt.text=" AM";
if (hours>12) {
  ampm_txt.text=" PM";
if (hours==24) {
  ampm_txt.text=" AM";
if (hours==12) {
  ampm_txt.text=" PM";
const PHASES:Array = [
    hour: 19,
    label: "nighttime_sea"
    hour: 17,
    label: "sunset_sea"
    hour: 8,
    label: "daytime_sea"
    hour: 6,
    label: "dawn_sea"
    hour: 24,
    label: "nighttime_sea"
// you call this function whenewer you want to test hour and possibly change day time
function checkPhase(hour:Number):void {
  for(var i:int = 0; i < PHASES.length; i++) {
    if(PHASES[i].hour < hour) {
      showPhase(PHASES[i].label);
      return;
  trace("Something went wrong, this line shouldn't execute.")
function showPhase(phase:String):void {
  if(phase == sea_mc.currentLabel) return;
  var currentPhaseStart:int = getLabelFrameNumber(sea_mc.currentLabel);
  var frameOffset:int = sea_mc.currentFrame - currentPhaseStart;
  var newPhaseStart:int = getLabelFrameNumber(phase);
  sea_mc.gotoAndPlay(newPhaseStart + frameOffset);
function getLabelFrameNumber(target:MovieClip, label:String):int {
    var index:int = getLabelIndex(target, label);
    if (index == -1) return -1;
    return FrameLabel(target.currentLabels[index]).frame;
function getLabelIndex(target:MovieClip, label:String):int {
    for (var i:int = 0; i < target.currentLabels.length; i++) {
        if (FrameLabel(target.currentLabels[i]).name == label) {
            return i;
    return -1;
mytime_txt.text=(hours < 10 ? "0" : "")+hours + ":" + (minutes < 10 ? "0" : "") + minutes+ (ampm_txt.text);
// create an Array with numbers 0:00 - 23:59 in minutes, then randomise it
//mytimes_txt.text = mytime_txt.text
function randomtime():void {
function generateRandomTimeList():Array {
  var array:Array = new Array();
  for (var i:uint = 0, end:uint = 60*24 - 1; i < end; i++) {
   array.push(i);
  return myarray(array);
// Array randomising algorithm       
function myarray(a:Array):Array {
  var b:Array=new Array(a.length);
  b[0]=a[0];
  for (var i:uint = 1, n:uint = a.length; i < n; i++) {
   var j:uint=Math.round(Math.random()*i);
   b[i]=b[j];
   b[j]=a[i];
  return b;
// convert number to time formatted string  
function timeFormat(n:uint):String {
  var hour:uint=Math.floor(n/60);
  var minute:uint=n-hour*60;
  return (hour == 0 ? 24 : hour < 10 ? "0" : "") +hour + ":"  + (minute < 10 ? "0" : "") + minute+ (randomTimeList[i] < 60*12 ? " AM" : " PM");
// trace 10 random time
var randomTimeList:Array=generateRandomTimeList();
for (var i:uint = 0; i < 1; i++) {
  myrandomtime_txt.text=(timeFormat(randomTimeList[i]));
//on btn
function checker(event:MouseEvent):void {
if (mytime_txt.text==myrandomtime_txt.text) {
  MovieClip(parent.parent).e_mc.cap_talk_txt.text="Well Done!!";
  clockreset();
  // true or false
} else {
  hours=12;
  minutes=00;
  ampm_txt.text=" PM";
  mytime_txt.text=(hours < 10 ? "0" : "")+hours + ":" + (minutes < 10 ? "0" : "") + minutes+ ampm_txt.text;
  hourHand_mc.rotation=0;
  minuteHand_mc.rotation=0;
  MovieClip(parent.parent).e_mc.cap_talk_txt.text="Wrong try again!";
  MovieClip(parent.parent).scoreminus();
  sea_mc.gotoAndPlay("daytime_sea");
  randomtime();
  wrongtries++;
  tries++;
  mycounter++;
function clockreset():void {
  hours=12;
  minutes=00;
  ampm_txt.text=" PM";
  mytime_txt.text=(hours < 10 ? "0" : "")+hours + ":" + (minutes < 10 ? "0" : "") + minutes + ampm_txt.text;
  hourHand_mc.rotation=0;
  minuteHand_mc.rotation=0;
  randomtime();
  MovieClip(parent.parent).scoreplus();
  sea_mc.gotoAndPlay("daytime_sea");
  correct++;
  mycounter++;
if (tries==3) {
  MovieClip(parent.parent).e_mc.cap_talk_txt.text="Click  "+"            "+"for instructions!";
  MovieClip(parent.parent).e_mc.helpicon_mc.visible=true;
  tries=tries-3;
} else {
  MovieClip(parent.parent).e_mc.helpicon_mc.visible=false;
if (mycounter==5) {
  removegame2listeners();
  if (correct>wrongtries) {
   MovieClip(parent.parent).e_mc.helpicon_mc.visible=false;
   MovieClip(parent.parent).e_mc.cap_talk_txt.text="Well done, you got "+correct+" correct and "+wrongtries+" wrong this round, lets see how you do in the next game!!";
   endgame();
  if (correct<wrongtries) {
   MovieClip(parent.parent).e_mc.helpicon_mc.visible=false;
   MovieClip(parent.parent).e_mc.cap_talk_txt.text="Hmm not bad, you got "+correct+" correct and "+wrongtries+" wrong this round, lets see how you do in the next game!!";
   endgame();
  function endgame():void {
   mygame2timer=new Timer(5000,1);
   mygame2timer.addEventListener(TimerEvent.TIMER, mygame2timerdone);
   mygame2timer.start();
   function mygame2timerdone(e:TimerEvent):void {
    MovieClip(parent.parent).e_mc.gotoAndPlay("explan_out");
    mygame2timer.stop();
    mygame2timer.removeEventListener(TimerEvent.TIMER, mygame2timerdone);
    mygame2timer2=new Timer(5000,1);
    mygame2timer2.addEventListener(TimerEvent.TIMER, mygame2timer2done);
    mygame2timer2.start();
    function mygame2timer2done(e:TimerEvent):void {
     mygame2timer2.stop();
     mygame2timer2.removeEventListener(TimerEvent.TIMER, mygame2timer2done);
     MovieClip(parent).gotoAndPlay("intro");
function removegame2listeners():void {
btns_mc.btn_min_less.removeEventListener(MouseEvent.CLICK, minless);
btns_mc.btn_min_less.removeEventListener(MouseEvent.MOUSE_OVER, minlessOver);
btns_mc.btn_min_less.removeEventListener(MouseEvent.MOUSE_OUT, minlessOut);
btns_mc.btn_min_more.removeEventListener(MouseEvent.CLICK, minmore);
btns_mc.btn_min_more.removeEventListener(MouseEvent.MOUSE_OVER, minmoreOver);
btns_mc.btn_min_more.removeEventListener(MouseEvent.MOUSE_OUT, minmoreOut);
btns_mc.btn_5_min_less.removeEventListener(MouseEvent.CLICK, fiveminless);
btns_mc.btn_5_min_less.removeEventListener(MouseEvent.MOUSE_OVER, fiveminlessOver);
btns_mc.btn_5_min_less.removeEventListener(MouseEvent.MOUSE_OUT, fiveminlessOut);
btns_mc.btn_5_min_more.removeEventListener(MouseEvent.MOUSE_OVER, fiveminmoreOver);
btns_mc.btn_5_min_more.removeEventListener(MouseEvent.MOUSE_OUT, fiveminmoreOut);
btns_mc.btn_5_min_more.removeEventListener(MouseEvent.CLICK, fiveminmore);
btns_mc.btn_10_min_less.removeEventListener(MouseEvent.CLICK, tenminless);
btns_mc.btn_10_min_less.removeEventListener(MouseEvent.MOUSE_OVER, tenminlessOver);
btns_mc.btn_10_min_less.removeEventListener(MouseEvent.MOUSE_OUT, tenminlessOut);
btns_mc.btn_10_min_more.removeEventListener(MouseEvent.CLICK, tenminmore);
btns_mc.btn_10_min_more.removeEventListener(MouseEvent.MOUSE_OVER, tenminmoreOver);
btns_mc.btn_10_min_more.removeEventListener(MouseEvent.MOUSE_OUT, tenminmoreOut);
btns_mc.btn_15_min_less.removeEventListener(MouseEvent.CLICK, fifteenminless);
btns_mc.btn_15_min_less.removeEventListener(MouseEvent.MOUSE_OVER, fifteenminlessOver);
btns_mc.btn_15_min_less.removeEventListener(MouseEvent.MOUSE_OUT, fifteenminlessOut);
btns_mc.btn_15_min_more.removeEventListener(MouseEvent.CLICK, fifteenminmore);
btns_mc.btn_15_min_more.removeEventListener(MouseEvent.MOUSE_OVER, fifteenminmoreOver);
btns_mc.btn_15_min_more.removeEventListener(MouseEvent.MOUSE_OUT, fifteenminmoreOut);
btns_mc.btn_30_min_less.removeEventListener(MouseEvent.CLICK, thirtyminless);
btns_mc.btn_30_min_less.removeEventListener(MouseEvent.MOUSE_OVER, thirtyminlessOver);
btns_mc.btn_30_min_less.removeEventListener(MouseEvent.MOUSE_OUT, thirtyminlessOut);
btns_mc.btn_30_min_more.removeEventListener(MouseEvent.CLICK, thirtyminmore);
btns_mc.btn_30_min_more.removeEventListener(MouseEvent.MOUSE_OVER, thirtyminmoreOver);
btns_mc.btn_30_min_more.removeEventListener(MouseEvent.MOUSE_OUT, thirtyminmoreOut);
btns_mc.btn_hr_less.removeEventListener(MouseEvent.CLICK, hrless);
btns_mc.btn_hr_less.removeEventListener(MouseEvent.MOUSE_OVER, hrlessOver);
btns_mc.btn_hr_less.removeEventListener(MouseEvent.MOUSE_OUT, hrlessOut);
btns_mc.btn_hr_more.removeEventListener(MouseEvent.CLICK, hrmore);
btns_mc.btn_hr_more.removeEventListener(MouseEvent.MOUSE_OVER, hrmoreOver);
btns_mc.btn_hr_more.removeEventListener(MouseEvent.MOUSE_OUT, hrmoreOut);
btns_mc.btn_check_mc.removeEventListener(MouseEvent.CLICK, checker);
btns_mc.btn_min_less.buttonMode=false;
btns_mc.btn_min_more.buttonMode=false;
btns_mc.btn_5_min_less.buttonMode=false;
btns_mc.btn_5_min_more.buttonMode=false;
btns_mc.btn_10_min_less.buttonMode=false;
btns_mc.btn_10_min_more.buttonMode=false;
btns_mc.btn_15_min_less.buttonMode=false;
btns_mc.btn_15_min_more.buttonMode=false;
btns_mc.btn_30_min_less.buttonMode=false;
btns_mc.btn_30_min_more.buttonMode=false;
btns_mc.btn_hr_less.buttonMode=false;
btns_mc.btn_hr_more.buttonMode=false;
btns_mc.btn_check_mc.buttonMode=false;
hope you can help
thanks
fonzio

Similar Messages

  • When watching my Apple TV (3rd gen) the picture jumps a few frame every few seconds, this happens when I rent a film or play back from my new Mac Pro, my Wifi is the Airport Express.

    When watching my Apple TV (3rd gen) the picture jumps a few frames every few seconds, this happens when I rent a film or play back from my new Mac Pro, my Wifi is the Airport Express.

    These may be different issues, but lets look at rentals first.
    Poor motion can result from mismatched output. If your source is 24 or 30 fps you should set the output of the Apple TV to 60 Hz, for 25 fps content use 50 Hz.
    Additionally motion software on the TV itself can cause the picture to jump, check your TV settings and turn off any motion settings in use,

  • Jump to next frame label without specifying a name

    Is it possible to jump to next frame label without specifying
    the name of the frame label?
    For example instead of saying
    on (release) {
    gotoAndPlay("Step_02");
    I wanted it just to go to next available frame label.
    Thanks
    Jonas

    not with actionscript 2.

  • Tween jumps to last frame?

    It's a simple animation.  Rectangle with a med. quality blur filter & 0% opacity tweened several frames later to med. quality blur filter & 80% opacity.  This is a normal motion tween.  So what it does is fade in, fade in, fade in...then oops! - jumps to 80% opacity.  The last frame of the tween is 80% opacity, but the frame before that is significantly lower in opacity.  So for some reason it's jumpy.
    This was happening to me before with a different .fla when I had one blur filter on low quality and the other on medium.  But in this instance, both keyframes have the same quality.
    Any ideas?

    Hmm, that does sound like a possible known issue we have had with classic motion tweens. It's a real weird edge case that has to do with selection if I recall correctly - something like if you don't click a frame on the timeline or the stage at some certain point when creating the tween it doesn't interpolate on the Stage. It's a hard one to run into though. So it's possible, assuming this is what you're seeing, that redoing the tween using slightly different clicks will rectify the problem. If you run into it again, see if you can remember your exact clicks - that way I can make sure we know it's the same thing or something slightly different.
    Thanks!
    Jen.

  • After Effects skipping frames in animated GIFs

    Hello,
    I have a 20 PNG sequences (each with 8 images) that I would like to combine into a single Animated GIF.  That's 160 frames, which adds up to 00:00:05:10 on my timeline.  After Effects shows the proper number of frames when they are arranged in sequence.
    When I attempt to render the GIF, however, After Effects drops 12 frames in the final output, giving me a total of only 148.  This was confirmed when I re-imported the animated GIF back into After Effects; its duration was only 00:00:04:28.  The frames appear to be getting pulled from all over the GIF, with no apparent pattern.
    I need all 160 frames because I am eventually going to convert them to a sprite sheet for a game (I have a program that will convert GIFs into sprite sheets).  I've attached a copy of the sprite sheet that I just exported from the GIF; notice that 12 frames are missing.
    Does anyone know why AE would remove frames like this?

    The After Effects forum would be a good place to ask. This is just a general animation forum that is read by only 13 people.

  • Fx TimeCode In Premiere CS5.5 - Non Linear Evolution (Jumps Every 24 Frames) ?

    Hi, Can anyone please provide some feedback on an issue I am having with an fx TimeCode that I have placed in a video clip of a sporting event? I have set the TimeCode to SMPTE format with the source set as either "Cip" or "Generate" and the TimeCode display is set to 25. The timer starts at a specific point in the event and runs through just past the end of the event. If I advance the video one frame at a time the timer follows this in a linear manner with increments of 0.01 seconds per frame for 24 frames then the timer jumps by 0.76 seconds when advancing to the 25th frame. It seems as though the timer is compensating every 25th frame to keep in synchrony with real time in the video. My thought were that the timer should advance by 0.04 seconds per frame for a 25fps video in true linear manner without these large incremental jumps? Is there any setting I can use to get the time to advance in linear manner by 0.04 secs per frame instead of 0.01 secs per frame for the 1st 24 frames followed by this large jump of 0.76 secs on the 25th frame? I am trying to extract timings at the granularity of hundredths of a second so any help in resolving this would be most appreciated. Rgds

    I think that I might not be interpreting the SMPTE timecode format correctly, my original understanding was that it was in the format of:
    hh:mm:ss:hundredths of seconds
    however, I am now thinking it is in the format of:
    hh:mm:ss:frames
    So, the timecode is counting time in the granularity of seconds and the figures to the right of the seconds after the colon is the framce count in that second. On the assumption that this is correct then an SMPTE timecode is not what I need. I need a timer that can count in one hundredths of a second.
    Any suggestions for inserting a timer to count in one hundredths of a second most appreciated.
    Rgds

  • Quality issues when importing still images as frames for animation

    hello,
    i've imported roughly 600 hand-drawn and scanned (600 dpi) images as frames for video. the images themselves are really crisp and perfectly how i want them to appear. i've imported each to play for 2 frames then move to the next. once done, i save this video file as an .avi. i then repeat the process in order to layer the video (using Calculations filter) over and over again, to fill up the screen with overlapped, layered animations. in theory, these layers should all remain crisp, just like the scanned images. i was under the impression that the standard Export... > Movie... .avi file is essentially lossless and is best for editing, however when my process is completed, the final product is muddy, grainy, and pixelated. i'm not sure where i am going wrong, as i've actually done this process before with success.
    is there a way to specific the working file as "high definition" or something similar so that the quality is just as crisp as the scanned images i am using as source
    any help is appreciated - i am completely self taught in video editing and it is really bugging me that the file output is not how i envisioned.
    thanks,
    DB

    I note you specified that the images were 600 dpi.  The dot per inch are an issue only for printing a hardcopy.  For video work, the issue is the pixel dimensions and the pixel aspect ratio. If your image is 600 pixels by 400 pixels with a PAR =1.0. If your sequence is 1440 x 1080 with a pixel ratio ratio of 1.33, then the images must be the same and PrPro must scale up the image.  You can get good images from imported stills in PrPro. I prefer to rescale my images using Photoshop.  I am told that the scaling algorithm in PrPro has been improved.  But regardless, if you are scaling up, you will see degradation becauae Prpro has to interpolate between pixels to fill the video frame.

  • Printing frames from animation?

    I have a 4 second animation in Photoshop CS4 made of 100 frames.  Keep  in mind each frame consists of many layers.
    I need to print each individual frame.  What is the  easiest/quickest/most convenient way to do this?
    This is for a project due VERY soon, and everyone I've asked doesn't  know the answer.  I need help with this as soon as possible.
    Thank you.

    I’m not really experienced with Photoshop’s Animation-features, so I’m not sure about the Action- and Script-ability of the Animation-features, but you could ask in the Photoshop Scripting Forum.
    Other that that one work-around might be to use File > Export > Render Video with File Options > Image Sequence to export the Frames and subsequently print those files, might it not?

  • Black frames on animation export

    Im in FCP and I am trying to export an animation millions + for manipulation in Motion. The FC video plays fine in FC, however when I export the video - between cuts gives me black frames - Dose anyone know why? This has happened several times on several different videos - some with cross fades and some with not. Help?

    So you are saying basically - that because these files originate as DV, i cannot export them as Animation millions + because its not supported? How then do I retain alpha when exporting a video to Motion - Motion is too limited in video tools - so should I have captured my original footage as Animation in FCP??? Im not sure I get it....
    <
    That's not what I said but I understand your confusion. I shall try again. If your sequence is DV, all of your rendered files are DV. DV has no alpha so, if you are trying to export your rendered DV media, you cannot get an alpha because it doesn't exist in the rendered DV footage; it's all been flattened to DV.
    However, if you remove or cancel or otherwise un-render the clips you are trying to export, and set an in and out point, and use AutoSelect you CAN export your alpha effects to Animation and retain any alpha information that was created with the effects.
    Suggestions: Stop what you're doing, set up a quick sequence in DV, apply some alpha effect to a short clip and export it to Animation BEFORE you render the DV effect. Then render it and export it again.
    Sorry it's not easier to explain.
    Oh, there are very few effects in FCP that actually create or use alphas. FCP's DVE swings, for example, do not actually have an alpha.
    bogiesan

  • Number of Frames in Animation?

      Hello! I was just wondering if there was anyway to figure out how many frames you have in an animation? Thank you if someone can tell me.

    You can set the number of frames per second or FPS. Knowing this number, you can figure out how many frames are in your animation
    Ex. 30fps for a 1 minute animation would be
    30 frames x 60 seconds = 1800 frames
    So a five minute animation is
    30 x 60 x 5 = 9000 frames

  • Frame(sprite) animation delay problem

    import javax.microedition.lcdui.*;
    import javax.microedition.lcdui.game.*;
    public class ExampleTrialCanvas extends GameCanvas implements Runnable {
    private boolean isPlay; // Game Loop runs when isPlay is true
    private long delay; // To give thread consistency
    private int currentX, currentY; // To hold current position of the 'X'
    private int width; // To hold screen width
    private int height; // To hold screen height
    // Sprites to be used
    // private Sprite playerSprite;
    private Sprite backgroundSprite;
    private Sprite playerSprite;
    //private int i;
    // Layer Manager
    private LayerManager layerManager;
    // Constructor and initialization
    public ExampleTrialCanvas() throws Exception {
    super(true);
    width = getWidth();
    height = getHeight();
    currentX = 64;
    currentY = 150;
    delay = 100;
    // Load Images to Sprites
    Image playerImage = Image.createImage("/transparent.png");
    playerSprite = new Sprite (playerImage,32,32);
    Image backgroundImage = Image.createImage("/gillete.png");
    backgroundSprite = new Sprite(backgroundImage);
    layerManager = new LayerManager();
    layerManager.append(playerSprite);
    layerManager.append(backgroundSprite);
    // Automatically start thread for game loop
    long now, prev_time_moved;
    public void init(){
    now = System.currentTimeMillis();
    prev_time_moved = now;
    public void start() {
    isPlay = true;
    Thread t = new Thread(this);
    t.start();
    public void stop() { isPlay = false; }
    // Main Game Loop
    public void run() {
    Graphics g = getGraphics();
    while (isPlay == true) {
    input();
              drawScreen(g);
    try { Thread.sleep(delay); }
    catch (InterruptedException ie) {}
    // Method to Handle User Inputs
    private void input()
    int keyStates = getKeyStates();
    playerSprite.setFrame(0);
    // Up
    if ((keyStates & UP_PRESSED) != 0) {
         for(int i=0;i<5;i++)
         playerSprite.setFrame(i);
    // Method to Display Graphics
    private void drawScreen(Graphics g) {
    // updating player sprite position
    playerSprite.setPosition(currentX,currentY);
    // display all layers
    layerManager.paint(g,0,0);
    layerManager.setViewWindow(55,20,180,180);
    //layerManager.paint(g,20,20);
    flushGraphics();
    We want, on right click botton press the frame should animate.
    We have a player with 5 different poses, kicking a ball, "image width is 160, height is 32".
    the problem is that, the player does move through allthe frames. he starts from 0th p\frame and directly end at the last frame, withopur any delay between frames.
    we have used the for loop as follows.
    if ((keyStates & UP_PRESSED) != 0) {
         for(int i=0;i<5;i++)
         playerSprite.setFrame(i);
    we want a delay code between all the frames.

    Maybe this will help you!
    btnSignIn.addActionListener(new ActionListener()     
                                  public void actionPerformed(ActionEvent e)
                                      //display the glasspane first
                                      setGlassPane(new MyGlassPane(newAnimatedIcon("images/LoginWaitingIcon.png")));
                                      getupGlasPane.setVisible(true);        //expected the glassPane shows (it does), and the animation starts (it doesnt)
                                      Thread t1 = new Thread(new Runnable()    //The animation only starts when this thread finished
                                            public void run()
                                                 //DO THE REST
    t1.start();
    t1.join();
    setupGlasPane(false);   //finish, turning off
                       });

  • Key frames switch to SMOOTH when they started as linear for multi key frame video animation ?

    When i create a series of animated moves on a freeze frame or pic...the second key frame which begins a "hold" ...always changes to smooth from linear after I add a few additional key frames and moves..  I use the key frame button on top left of viewer to add the key frames...I have tried adding the key frames in the inspector but smae results..2nd key frame changes to smooth after I add 4 additonal key frames and moves.  why?

    thanks for the reply Steve. I will battle through with this project and show the end result, but you may celebrate a birthday or six before I finish.But I will finish. It is part of a project I am creating from a recent stay on the Abrolhos Islands off the coast of Geraldton Western Australia. It is isolated like few places in the world, pristine and protected. We have friends who are proffessional fisherman and are allowed to stay there on shacks during the limited fishing/rock lobster fishing season.I have some really great photos and video to make use of.

  • Is QuickTime Pro able to be programmed in any way to make it so when a vidoe frame is reached it will automatically jump to another frame or a previously marked chapter?

    I currently create interactive videos with Flash that use live person video to ask the viewer questions and allows the viewer to click an answer.
    Depending on "right" or "wrong" the playhead jumps to the appropriate point in the video (all held on local PC not web) to either say "Well done" or "Sorry that's wrong because...". Then it jumps again to the next question in the video - and repeats.
    This video can then be inserted in PC's PowerPoint.
    Now.. a client wants the same thing but to work in keynotes. So No Flash and No Powerpoint.
    Part of the QTPro7 new features says it can be controlled with scripts? I can't find anything to show how or what can be done with this?
    So my question - is can the functionality I have in Flash be created in QTPro with some form of script?
    I know I can create something like it in keynotes using individual clips - but the mention of controlling QTpro with scripts has got me hoping there is a way to treat it like Flash????
    Thanks if you can answer.

    Shut down the computer.
    Plug in the MagSafe power adapter to a power source, connecting it to the Mac if its not already connected.
    On the built-in keyboard, press the (left side) Shift-Control-Option keys and the power button at the same time.
    Release all the keys and the power button at the same time.
    Press the power button to turn on the computer. 
    Note: The LED on the MagSafe power adapter may change states or temporarily turn off when you reset the SMC.

  • Jump within scrollable frame?

    Hi DPS community,
    I'm creating a company directory with 250 names and I would like a smooth scrolling experience (also open to other suggestions you may have!) and I would like to ask if its possible to create buttons that jump to a specific areas within the scrollable frame? Similar to the way iOS's Contacts work where the letters are static along the scrollable frame but tapping a letter will jump to the corresponding area? (image attached)
    Thank you for any tips or suggestions.
    -Dan

    That ability does not exist in DPS using InDesign scrolling frames. You
    could do it as HTML and use a Web Content overlay to do it, though.

  • How many frames of animation does support flash

    Hi can i know how many frames in flash... i want to animate
    some of things extended to 23000-60000 frames...
    i placed movieclip in the first frame and tht animation upto
    23000 and the second one starts from 23001-60000, how can do this
    one.. plz help me
    Thanks

    The magic number is 16,000. Check the tech note here:
    http://www.adobe.com/go/tn_14437
    Cheers!

Maybe you are looking for

  • CS6 64 bit (for windows) installation keeps telling me to shut down Bridge CS5 which isn't running.

    I've checked the Windows 7 Task Manager and Bridge CS5 does not appear.  Can someone help with what I'm to do so I can finish the install?

  • How to output 24 192 true toslink mac mini mid 2010

    is there way  that would allow the toslink output to output 24 192 as stated in the specs of the machine on a mac mini mid 2010

  • Interface IManaged was not found

    Hi, people! I am beginner in Flex and my problem may be is not problem really. I have written a test class for RemoteObject: package [Managed] [RemoteClass(alias="Service+UserClass, App_Code")] public final class UserClass public var Name: String; pu

  • CS6 Master Collection Download

    The following programs did not download with my CS6 Master Collection. Bridge cs6, Media Encoder cs6, and Flashbuilder 4.6 Premium Edition. What do I need to do in order to get these software?

  • Envy114c Won't print

    I have an Envy114c network printer, it's connected to the network per the network configuration report, everything I test says it's connected, but it won't print from anything except a test page.  I have an excellent connection, When I send a message