So the new Flash Player Incubator program is really quite exciting seeing the Flash Player while it’s still in development and before it reaches beta. Now a lot of the attention so far on the incubator builds of Flash Player have been on Molehill, the new 3D API but I’m also curious about what else is in there.

Poking around in the docs one of the interesting things that I found is mention of a Flash Player 10.3 and AIR 2.7. So while these incubator builds are a sort of alpha of Flash Player 11, there’s going to be another Flash Player and AIR release between now and Flash Player 11 & AIR 3.0.

Another interesting thing is the classes in the flash.hid directory. HID stands for Human Interface Device, which is likely the game controller support Adobe has been talking about. It’s not working just yet, but you can see the devices Adobe has been playing around with, some of them really quite different and strange (like a Magic Carpet Simulator device, to VR gear). Some of them with references to DVDs and VCRs, I wonder if it has to do with Flash being on tvs now. Also those following the PlayBook development might realize it’s OS is called QNX. QNX is a company that RIM bought out and still provides it’s OS for everything from cars to equipment on NASA’s Space Shuttle. With QNX running Flash it running on cars, I wonder if that’s where things like variables referring to car alarms comes from.

So I used NotePad++ to do a complete search through the files to find any reference to Flash Player 10.3 & 11 and AIR 2.7 & 3.0. From that search I grabbed all the HTML code and dumped it into a document and have copied and pasted it bellow. It’s not formatted the best, but it’s not something I wanted to spend too much time on and it links to where I’ve uploaded the docs on matthewfabb.com, so you can see how it’s supposed to look like or just to get more details on a class without having to download and unzip the docs yourself.

Here’s how it’s set up, I’ve listed classes bellow with new methods, properties and constants all listed underneath. You can tell which classes are brand new by the fact that I linked to them. Anything not taken from the docs bellow I tried to highlight the fact by putting it italics. I start with Flash Player 10.3 & AIR 2.7, then move into Flash Player 11 & AIR 3.0, then finally Flash Player 12 (??) & content without mention of any version of Flash. Remember I’m not including any of the 3D classes here and also it’s quite possible that I missed some of the new stuff in putting it together so quickly. If you come across that let me know and I’ll update this post.

NOTE:This is based off of the docs from the February 27, 2011. There’s likely other incubators builds of the Flash Player in the works and at that point all of this is likely to be quite dated.Also realize that Adobe has clearly pointed out again that a number of these APIs are still experimental and anything could be pulled out or renamed.So don’t go building something new expecting everything to make the final release.

Flash Player 10.3 & AIR 2.7

FontMetrics
lineGap : Number
The lineGap value is the suggested gap between lines.

EastAsianJustifier
composeTrailingIdeographicSpaces : Boolean
Specifies whether ideographic spaces at the ends of lines should be composed or dropped during justification.

Microphone
enhancedOptions : MicrophoneEnhancedOptions
Controls enhanced microphone options.
getEnhancedMicrophone(index:int = -1):Microphone
[static] Returns a reference to an enhanced Microphone object.

MicrophoneEnhancedMode
FULL_DUPLEX : String = "fullDuplex"
[static] Acoustic echo cancellation operates in full duplex mode.
HALF_DUPLEX : String = "halfDuplex"
[static] Acoustic echo cancellation operates in half duplex mode, which represents a simpler processing when compared to full duplex mode.
HEADSET : String = "headset"
[static] Headset in use.
OFF : String = "off"
[static] All enhanced audio functionality is turned off.
SPEAKER_MUTE : String = "speakerMute"
[static] Use this mode when the speaker is muted.

MicrophoneEnhancedOptions
The MicrophoneEnhancedOptions class provides configuration options for enhanced audio.
autoGain : Boolean
Enable auto-gain control.
echoPath : int
Specify the echo path (in millisecond) used for echo cancellation.
isVoiceDetected : int
[read-only] Returns whether voice was detected for Microphone input.
mode : String
Controls enhanced microphone mode.
nonLinearProcessing : Boolean
Enable non-linear processing.

NetMonitor
The NetMonitor class has two functionality. It contains a single method listStreams(), that returns the vector of NetStream objects. Second, NetMonitor class dispatches NetMonitorEvent of NetMonitorEvent.NET_STREAM_CREATE type whenever a new NetStream object is created.
listStreams():Vector.<NetStream>
Retrieve all NetStream objects belonging to the same security context.
Event: netStreamCreate
Dispatched when a new NetStream object is created.

NetStreamInfo
isLive : Boolean
[read-only] Returns whether the media being played is recorded or live.
metaData : Object
[read-only]Retrieve last meta data object associated with media being played.
resourceName : String
[read-only] Return resource name used when NetStream.play() was called.
uri : String
[read-only] Return the URI used when NetConnection.connect() was called.
xmpData : Object
[read-only] Retrieve last XMP data object associated with media being played.

NetMonitorEvent
NetMonitorEvent object is dispatched whenever a new NetStream object is created. There is only one type of event: NetMonitorEvent.NET_STREAM_CREATE.

See class for properties, methods and constants

NetDataEvent
NetStream dispatches this event when message is processed.

See class for properties, methods and constants

Security
pageDomain : String
[static] [read-only] Get the page domain containing the swf.

SWFVersion
FLASH11 : uint = 11
[static] SWF file format version 11.0. – Runtime Versions: Flash Player 10.2
FLASH12 : uint = 12
[static] SWF file format version 12.0. – Runtime Versions: Flash Player 10.3

Flash Player 11 & AIR 3.0

DisplayObjectContainer
removeChildren():void
Removes all child DisplayObject instances from the child list of the DisplayObjectContainer instance.

MovieClip
isPlaying : Boolean
[read-only] A Boolean value that indicates whether a movie clip is curently playing.

Event
TEXT_INTERACTION_MODE_CHANGE : String = "textInteractionModeChange"
[static] The Event.TEXT_INTERACTION_MODE_CHANGE constant defines the value of the type property of a interaction mode event object.

HIDConsts
This is class is way too big to list all of the many, many constants in this class. Check the class definition for the full list of HID (Human Interface Device) that Adobe is looking into. I just pulled out some of the more interesting ones:
HIDPage_BarCodeScanner
HIDPage_BatterySystem
HIDPage_Digitizer
HIDPage_KeyboardOrKeypad
HIDPage_Telephony
HIDPage_VR
HIDUsage_BS_iDevicename
HIDUsage_BS_SMBAlarmWarning
HIDUsage_BS_ThermistorCold
HIDUsage_BS_ThermistorHot
HIDUsage_Button_1 (up to button_4)
HIDUsage_Csmr_ALLANOrWANBrowser
HIDUsage_Csmr_FanEnable
HIDUsage_Csmr_FireAlarm
HIDUsage_Csmr_MediaSelectCD
HIDUsage_Csmr_MediaSelectDVD
HIDUsage_Csmr_MediaSelectSatellite
HIDUsage_Csmr_MediaSelectTuner
HIDUsage_Csmr_MediaSelectTV
HIDUsage_Csmr_MediaSelectVCR
HIDUsage_Csmr_MediaSelectVideoPhone
HIDUsage_Csmr_MediaSelectWWW
HIDUsage_Csmr_MPX
HIDUsage_Csmr_NumericKeyPad
HIDUsage_Csmr_OrderMovie
HIDUsage_Csmr_PoliceAlarm
HIDUsage_Csmr_RoomTemperature
HIDUsage_Csmr_SleepMode
HIDUsage_Csmr_Treble
HIDUsage_Csmr_VCROrTV
HIDUsage_Dig_Armature
HIDUsage_Dig_FreeSpaceWand
HIDUsage_Dig_LightPen
HIDUsage_Dig_StereoPlotter
HIDUsage_Game_3DGameController
HIDUsage_Game_GunDevice
HIDUsage_Game_PinballDevice
HIDUsage_GD_GamePad
HIDUsage_GD_Joystick
HIDUsage_GD_Keyboard
HIDUsage_LED_CameraOn
HIDUsage_LED_FastBlinkOnTime
HIDUsage_LED_NightMode
HIDUsage_LED_PaperJam
HIDUsage_LED_PaperOut
HIDUsage_PID_ET_SawtoothDown
HIDUsage_PID_ET_Square
HIDUsage_PID_ET_Triangle
HIDUsage_Sim_AirplaneSimulationDevice
HIDUsage_Sim_AutomobileSimulationDevice
HIDUsage_Sim_AutopilotEnable
HIDUsage_Sim_BarrelElevation
HIDUsage_Sim_BicycleSimulationDevice
HIDUsage_Sim_MagicCarpetSimulationDevice
HIDUsage_Sim_MotorcycleSimulationDevice
HIDUsage_Sim_SailingSimulationDevice
HIDUsage_Sim_SpaceshipSimulationDevice
HIDUsage_Sim_SubmarineSimulationDevice
HIDUsage_Sim_TankSimulationDevice
HIDUsage_Sprt_BaseballBat
HIDUsage_Sprt_GolfClub
HIDUsage_Tfon_AnsweringMachine
HIDUsage_Tfon_Headset
HIDUsage_Tfon_OutsideDialTone
HIDUsage_Tfon_PhoneDirectory
HIDUsage_VR_AnimatronicDevice
HIDUsage_VR_Belt
HIDUsage_VR_BodySuit
HIDUsage_VR_Glove
HIDUsage_VR_HeadMountedDisplay
HIDUsage_VR_HeadTracker
HIDUsage_VR_Oculometer

HIDDevice
controlCount : int
[read-only] returns the number of controls available
name : String
[read-only] returns the name of the device
usage : int
[read-only] property containing the usage
usagePage : int
[read-only] property containing the usage page

HIDControl
device : HIDDevice
[read-only] returns the device that owns this control
hasCenter : Boolean
[read-only] property is true if the control has a center position (joystick for example)
hasNullState : Boolean
[read-only] property is true if control has a null state
input : Boolean
[read-only] property is true if the control is a input control
linear : Boolean
[read-only] property is true if the control linearly change from min to max
max : Number
property containing ther maximum value of a control
min : Number
property containing the minimum value of a control
relative : Boolean
[read-only] property is true if the control value returns a relative change since last event
type : int
[read-only] property containing type of control
units : Number
[read-only] property containing the unit of value
usage : int
[read-only] property containing control usage
usagePage : int
[read-only] property containing control usage page
value : Number
property containing the value of the control.

HIDManager
deviceCount : int
[static] [read-only] returns the number of devices currently attached
focused : Boolean
[static] [read-only] property containing the focus state of the manager
names : Array
[static] [read-only] retruns the list of devices names

Matrix
copyColumnFrom(column:uint, vector3D:Vector3D):void
Copies a Vector3D object into specific column of the calling Matrix3D object.
copyColumnTo(column:uint, vector3D:Vector3D):void
Copies specific column of the calling Matrix object into the Vector3D object.
copyFrom(sourceMatrix:Matrix):void
Copies all of the matrix data from the source Point object into the calling Matrix object.
copyRowFrom(row:uint, vector3D:Vector3D):void
Copies a Vector3D object into specific row of the calling Matrix object.
copyRowTo(row:uint, vector3D:Vector3D):void
Copies specific row of the calling Matrix object into the Vector3D object.
setTo(aa:Number, ba:Number, ca:Number, da:Number, txa:Number, tya:Number):void
Sets the members of Matrix to the specified values

Matrix3D (all of Matrix’s methods above plus)
copyRawDataFrom(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void
Copies all of the vector data from the source vector object into the calling Matrix3D object.
copyRawDataTo(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void
Copies all of the matrix data from the calling Matrix3D object into the provided vector

Point
copyFrom(sourcePoint:Point):void
Copies all of the point data from the source Point object into the calling Point object.
setTo(xa:Number, ya:Number):void
Sets the members of Point to the specified values

Rectangle
copyFrom(sourceRect:Rectangle):void
Copies all of rectangle data from the source Rectangle object into the calling Rectangle object.
setTo(xa:Number, ya:Number, widtha:Number, heighta:Number):voidSets the members of Rectangle to the specified values

Sound
loadMP3FromByteArray(bytes:ByteArray, bytesLength:uint):void
load MP3 sound data from a ByteArray object into a Sound object.
loadPCMFromByteArray(bytes:ByteArray, samples:uint, format:String = "float", stereo:Boolean = true, sampleRate:Number = 44100.0):void
load PCM 32-bit floating point sound data from a ByteArray object into a Sound object.

TextField
textInteractionMode : String
[read-only] The interaction mode property, Default value is TextInteractionMode.NORMAL.
textInteractionModeChange Event
Flash Player dispatches the textInteractionModeChange event when a user changes the interaction mode of a text field.

TextInteractionMode
A class that defines the Interactive mode of a text field object.
See class for properties

Flash Player 12
Strange labeling here, which I’m guessing is the Flash Team’s way of pushing elements out of a build. So I’m guessing these functions were pulled in last minute:

Graphics & GraphicsPath classes both have:
cubicCurveTo(controlX1:Number, controlY1:Number, controlX2:Number, controlY2:Number, anchorX:Number, anchorY:Number):void
Adds a new "cubicCurveTo" command to the commands vector and new coordinates to the data vector.

Flash Player ???
Now the following is that are not marked what runtime version they are in. I imagine these are the most experimental of the APIs. Unfortunately, there’s nothing marking them so that they are hard to find via NotePad++ or any other program using just search. To find them there would require to write or script to compare the docs to an older version of the docs. The one property that I found added to Socket was only because Adobe’s Thibault Imbert pointed it out on Twitter.

Socket
bytesPending : uint
[read-only]bytesPending