Animator VS. Animation

If you have worked with Flash...
Check out this AMAZING Video from ALAN BECKER !

It was forwarded on to me by a colleague.

Credit: ALAN BECKER



Source: Deviantart Website Source

High Definition to Flash Videos from ADOBE

Adobe is expected to announce the release of a beta version of its Flash Player, code-named Moviestar, that adds support for H.264, the video compression portion of the MPEG 4 standard.

The updated Flash Player also will be able to take advantage of hardware acceleration in most PCs' graphics cards and is optimized for dual-core processors, said Mark Randall, chief strategist for dynamic media at Adobe. It will support HE-AAC version 2, a more efficient audio compression standard that is also part of MPEG 4.

The new features will be made available in the fall as part of an update to Flash Player 9.

Support for the H.264 standard will lead to more Web video content being available in high definition, Randall said. He said Adobe chose to support the standard now because it is being adopted more by content producers and media distributors like cable companies.

Flash is a de facto standard for streaming video used by YouTube and other high-volume Web sites.

But Microsoft is challenging Flash's dominance in Web video with Silverlight. Microsoft has signed on large video publishers to use Silverlight, including MLB.com.

Silverlight supports Windows Media Audio and Video and another video compression standard based on Windows Media called VC-1. Microsoft has not announced plans to support H.264, but a representative said the company could add support based on customer feedback.

Featured on FLASHKIT

Featured Flash Site
7259 Flash Sites | 8 New Flash Links




» FEATURED on the Flash Kit home page

» Title: New York City Flash Design
» Comments: Micelistudios is the portfolio website of Steve Miceli.

Steve is an Interactive Creative Director for a major advertising agency in New York City. This website is a snapshot of some of his ideas, design, and motion design. Miceli Studios is dedicated to creating visual design and motion graphics in an interactive environment for a more engaging multimedia experience.

OnEnterFrame vs. SetInterval

onEnterFrame

my_mc.onEnterFrame = function() {
// your statements here
}

Event handler; invoked continually at the frame rate of
the SWF file. The actions associated with the enterFrame
clip event are processed before any frame actions that are
attached to the affected frames. You must define a function
that executes when the event handler is invoked.


setInterval

setInterval(functionName, interval [, param1, param2, ..., paramN])

Function; calls a function or a method or an object at
periodic intervals while a SWF file plays. You can use
an interval function to update variables from a database
or update a time display. If interval is less than the SWF
file's frame rate (for example, 10 frames per second [fps]
is equal to 100 milliseconds), the interval function is
called as close to interval as possible. You must use the
updateAfterEvent() function to make sure that the screen
refreshes often enough. If interval is greater than the SWF
file's frame rate, the interval function is only called
each time the playhead enters a frame; this minimizes the
impact each time the screen is refreshed.


well, this is from macromedia flash help file. now let's see
what they really does and how.

[1] supose, you have movie at 20 fps (frames per second), it means
that frames will change every:

1 Second = 1000 milliSeconds / 20 frames = 50 milliSeconds

[2] nice, but some movies fps will varry up to 20%, depends
on computer which plays movie and movie complexity. mainly,
flash player will resolve it by skipping some frames to keep
fps on rate. so it means that sometimes fps is not precious
as it should be.

[3] mostly used solutions for dynamic control of actions and
objects are onEnterFrame and setInterval. first one is event
handler and it is timeline dependent. the other one is function,
and it is timeline independent.

magic words "timeline dependent" and "timeline independent",
similar words but big difference.

[4] let's see what main diferences are.

onEnterFrame - can be invoked within movieClips (sprites)
and targets (objects).

setInterval - can be invoked within movieClips, targets and
as function for it self, whenever and wherever you need,
onFrame(50) for example and it is more precious than
onEnterFrame (see [2]).

onEnterFrame - will perform some action on every frame, so
it means that interval of action is timeline dependent and
can not be changed.

setInterval - will perform some action in intervals which
user defines and can be chaned any time, dynamically.

[5] typical use

onEnterFrame - mainly for action in accordance with fps,
which do not require time precision and rhythmical repeating.

setInterval - can be used for everything, but not neccessarily
if onEnterFrame suits requirements.

[6] examples of use

let's say you are making a clock, movie fps=20.

application must calculate teller position and to redraw it.

* if you use onEnterFrame, it will calculate position and
redraw teller every

1 Second = 1000 milliSeconds / 20 frames = 50 milliSeconds

means, 20 time per second, but on same position. that is
wasting of CPU.

* if you use setInterval 1000 milliSeconds, it will calculate
position and redraw it every second. meanwhile CPU will be
able to do something else.

another example

if you have some action that must be repeated in very short
intervals, eg. to control state and position of some object.

* if you use onEnterFrame control might be late and action
can fail.

* if you use setInterval you can control it in millisecodns,
(even 1ms) so it is likely that control will not be late.

regulary, very short intervas are used for calculations and
controls, if you try to repaint whole screen every 1 ms it
will be disaster.

normally, it would be silly to make movies with fps 100 just
to control some actions.

another one

if you want to draw something on screen or to repaint screen
or part of it.

* if you use onEnterFrame - it will repaint it in relativley
short intervals (depends on fps) and your eye will not even
catch it.

* if you use setInterval - do not use shrot intervals, unless
you repaint small part of screen. but in most cases onEnterFrame
will be better solution.


[7] conclusion

try to avoid wasting of CPU.

this way or another, be careful with both of subjects, couse
lot of issues at the same time can slow down application and
even hangs it.