FlowPlayer API supports a subset of the JavaScript API
available in mplayer browser plug-in (http://mplayerplug-in.sourceforge.net/).
Additionally it defines some methods that are not available in mplayer 
plug-in. mplayer plug-in's API is documented in javascript.txt that can be found 
in the plugin's source distribution package.

FlowPlayer supports the following methods. These are available to JavaScript and
to other Flash movies via Flash's LocalConnection.

NOTE!

It takes some time before the Flash plugin and the player has been initialized
and the functions in this API are ready to be used. You should wait until you
receive the onFlowPlayerReady() callback from the player. After the player has
called this function the API is guaranteed to be ready for use.

methods (same as in mplayer plug-in):

	DoPlay():Void;
	
		Plays the current clip.
	
	DoStop():Void;
	
		Stops playback and returns to the first clip in the playlist.
	
	Reset():Void;
	
		Resets the player to the initial state.
	
	Pause():Void;
	
		Pauses playback.
	
	Seek(seconds:Number):Void;
	
		Seeks to the specified time during the clip's timeline.
	
	getTime():Void;
	
		Get's the current time (seconds advanced).
	
	getDuration():Void;
	
		Get's the clip's duration.

FlowPlayer specific, not in mplayer plug-in API:

	setConfig(flowPlayerConfig:Object):Void;

		Configure the player using a FlowPlayer configuration object.
		This is a JavaScript object that is documented in flowPlayer.js
		(http://flowplayer.sourceforge.net/flowPlayer.js).
		
		NOTE: The visible playList will not behave currently if you replace 
		an existing playlist by calling this method with an object that 
		has a different playList!

	StartBuffering()Void;
	
		Starts loading the clip into the buffer memory. Does not start
		playback.
	
	ToggleLoop()Void;
	
		Toggless looping on/off.
	
	getPercentLoaded():Number;
	
		Gets the percentage of buffer memory currently filled with data.
	
	getIsPlaying():Boolean;
	
		Is the player currently playing?
	
	getIsPaused():Boolean;
	
		Is the player currently paused?
	
	getIsLooping():Boolean;
	
		Is the player looping?
	
	addCuePoint(timeSeconds, name, parameters):Void;
	
		Adds a new programmatic cue point. When the cue point's time is reached
		the onCuePoint callback is called. The onCuePoint callback receives the name and
		parameters values. You can pass a JSON style object in the 'parameters'
		parameter.
		
	addCuePoints(Array):Void;
	
		Adds a several cue points. Syntax:
		addCuePoints([ { name: 'cue1', time: 5, parameters: { foo: 1, bar: 'x' } }, 
			{ name: 'cue2', time: 45, parameters: { foo: 2, bar: 'xy' } } ])
	
	
PlayList control (FlowPlayer specific, not in mplayer plug-in API):

	hasNext():Boolean;
	
		Does the playlist have more clips after the current clipP?
	
	NextClip():Void;
	
		Moves to next clip.
	
	PrevClip():Void;
	
		Moves to previous clip.
	
	getPlayListSize():Number;
	
		Gets the number of clips in the playlist.
	
	getCurrentClip():Number;
	
		Gets the index of the current clip. First clip is at index zero.
	
	ToClip(index:Number):Void;

		Moves to clip at the specified index.
	
	playClip(clipObj):Void;

		Plays the specified clip. Existing playList is discarded
		and replaced with a a playList containing the specified clip.
		The clip should be a valid flowplayer clip object that are
		also used in playLists.

	setClipURL(clipObj):Void;

		Creates a new playList that has the specified clip.
		Existing playList is discarded.
		The clip should be a valid flowplayer clip object that are
		also used in playLists.

Callbacks from the player (FlowPlayer specific, not in mplayer plug-in API):


	onFlowPlayerReady():Void
		
		Called when the player has been initialized and the JavaScript API is ready to be used.

	function onClipDone(clip);
	
		Called when a clip has been played to the end. The clip parameter object
		has following properties: name, baseUrl, fileName, start (start time in seconds),
		end (end time in seconds), protected (is hotlink protection applied for this clip?),
		linkUrl, linkWindow, controlEnabled (enable playback control buttons?)

	function onClipChanged(clip);
		
		Called when the user manually changes to another clip in the playlist or
		when the playback moves from one clip to the next.

	function onLoadBegin(clip);
	
		Called when the loading of a clip begins.

	function onStreamNotFound(clip);
	
		Called when a clip is not found using it's URL.

	function onPlay(clip);
	
		Called when playback starts for a playlist.

	function onStop(clip);
	
		Called when playback of the playlist stops.

	function onPause(clip);
		
		Called when the player is paused.

	function onResume(clip);
	
		Called when the player is resumed.

	function onCuePoint(cuePoint);
	
		Called when a cue point is reached.

	function onStartBuffering(clip);
		
		Called when a clip starts buffering.

	function onBufferFull(clip);
	
		Called when the buffer is full and the playback for the specified clip can start.

	function onBufferFlush(clip);
	
		Called when the buffer is flushed for a clip.

	function onMetaData(metadataObj);
	
		Called when metadata for the currently playing clip has been received. 
		The metadata object contains following properties: duration (seconds),
		videodatarate (kbit/s), audiodatarate (kbit/s) and creationdate.

	function onPlaybackTime(time);
	
		Called every time the playhead moves in the media's timeline. The value
		of time tells the current time.
	