HUMA system: Manual under Construction Flash


There are multiple ways of using Flash inside a HUMA application. This page gives an overview on the use of Flash as regular HUMA media segments, while the Cursor page explains the use of advanced Flash and ActionScript.

At the present day HUMA supports the use of swf files of version 5 or lower. MX specific features will not work.

The first way of using Flash is simple as using video: Instead of importing video and defining your scenes by video segments, you just import swf files and use them to define scenes in the exact same procedure. Video and Flash scenes can be mixed and linked with each other with no limitations. Flash scenes can use all the more or less video specific HUMAmodes and thus behave exactly like video: you may scratch, pitch, audiotrigger it, just alike.
Some of these Modes, however might not lead to the results you might have expected, depending on the way the swf is authored. You might need to experiment with the use of flash internal hierachy, embedded movie clips, looping symbols etc. in order to find out what suits your needs. Some limitations on the other hand offer new possibilities, as for instance embedded movie clip symbols, that will not react on the HUMA video scratch modes, can be used to create timeline independent animations for user feedback etc.
On top of the video template modes, there some flash specific HUMAmodes in "FX and Image manipulation" Modes, that mainly deal with zooming and paning inside a swf.

Note that a scene can only be defined by segments of the same kind of media. You can not create scenes that span from video segment x to flash segment Y. But, as you can vertically stack media (layer it) it is no problem to use video and flash simultanously in one scene, long as the definition of the scene is provided by either or. In case needed, use dummy segments and hide/disable them as a workaround.

Speaking of layering: The second way of using Flash is as an additional element on top of video. That may be merely as a design element or as a piece of user interface. You can easily create elements that give a user feedback on the state of the application, act as timers etc. Also you can make use of Flash buttons to link HUMAscenes in case your application is to be (partly) operated by mouse or touchscreen.

To get media to play in parallel, use one of these options:
- position the project movie on the desired frame in the import window (->File-> Import _> File w/ Options) before importing the media to be stacked
- if the media is allready imported, doubleclick its icon in the segment bin, which will open a timeline window in the lower richt corner of the main window. Drag the segment to where you need it, enter a startpoint manually or use the stretch to scene option (which will also timestretch the segment to the exact scenelength)
- drag a segment from the bin and drop it to a scene's timeline display. This will copy the segment to the position where you dropped it.

Flash buttons and scripts can use the following SensorMessages encapsulated in "getURL" actions to call back into the HUMAruntime:

"GOTO_SCENE//(scene, networkID)",
"GOTO_REVSC//(scene, networkID)",
"GOTO_LINK//(link, networkID)",
"FINISH_SC//(scene, finishingMode, networkID)"
"FINISH_LINK//(link, finishingMode, networkID)"

Syntax example:
getURL("GOTO_SCENE//(1, -1)") would switch to Scene 1 on the local machine
getURL("GOTO_LINK//(5, 0)") would perform a click on all machines
getURL("FINISH_LINK//(1, 2, 2)") would forward finish the current scene on machine 2 and make it switch to link a

1 - A,
2 - B,
3 - C,
4 - D,
5 - Click,
6 - Time,
7 - Exit
0 - switch,
1 - finish scene,
2 - finishForward,
3 - finish backward,
4 - finish segment,
5 - finish seg. fwd,
6 - finish seg. bwd,
7 - pass offset
8 - keep offset

to make use of speedup in finishing modes, increase the modenumber by 10

You can use these messages with mouseclickable buttons, where you would use objectactions (like: onRelease{geturl("GOTO_LINK//(1, -1)");}, with usual frameactions or with pure actionscript code.
Note that all variants will launch your webbrowser when using the swf outside of HUMA...