--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/URLLoaderLdt.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,29 @@
+package tools
+{
+ import flash.net.URLLoader;
+ import flash.net.URLRequest;
+
+ public class URLLoaderLdt extends URLLoader
+ {
+ private var _url:String;
+ private var _preVideo:String;
+ private var _prePict:String;
+ private var _preExtra:String;
+
+ public function URLLoaderLdt(request:URLRequest=null, preVideo:String=null, prePict:String=null, preExtra:String=null)
+ {
+ if(request!=null){
+ _url = request.url;
+ _preVideo = preVideo;
+ _prePict = prePict;
+ _preExtra = preExtra;
+ }
+ super(request);
+ }
+ public function get url():String{ return _url; }
+ public function get preVideo():String{ return _preVideo; }
+ public function get prePict():String{ return _prePict; }
+ public function get preExtra():String{ return _preExtra; }
+
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/XMLInOut.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab
{
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.FileReference;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.system.Capabilities;
import player_bab_ldt;
public class XMLInOut
{
private var app:player_bab_ldt;
private var myLdtEdits:XMLList;
private var editsAr:Array = [];
private var titlesAr:Array = [];
private var nbBab:uint = 0;
private var curBab:Number = -1;
private var segAr1:Array;
private var segAr2:Array;
public function XMLInOut(o:player_bab_ldt, urlData:String)
{
app = o;
var urll:URLLoader = new URLLoader(new URLRequest(urlData));
urll.addEventListener(Event.COMPLETE, onloadData);
urll.addEventListener(IOErrorEvent.IO_ERROR, errorLoad);
}
private function errorLoad(e:IOErrorEvent):void{
trace("errorLoad");
//Alert.show("Impossible to load the file") + " " + e.text + "\n" + (e.target as URLLoaderLdt).url, "Error");
}
private function onloadData(e:Event):void{
var ldtXml:XML = new XML(e.currentTarget.data);
// We test if the project is in old iri/ldt format or cinelab format
if(ldtXml.project.length()>0){
// There is a project tag in the xml -> iri/ldt format
myLdtEdits = ldtXml.edits.editing;
loadEditsXML(myLdtEdits);
}
else{
// Else cinelab format
trace("No LDT format, No load");
//Alert.show("No LDT format","No load");
}
}
public function loadEditsXML(xl:XMLList):void{
trace("loadEditsXML l = " + xl.length() + ", nodename = " + xl[0].name().localName);
if(xl!=null && xl.length()>0){
if(xl[0].name().localName=="view"){
//loadEditsXMLCinelab(xl);
trace("No BAB LDT format, No load");
}
else{
//trace(xl.toString());
editsAr = new Array();
titlesAr = new Array();
for each(var editing:XML in xl){
nbBab++;
var inst:XML, curMedia:XMLList, a:Array, content:String;
// First edit's line
var ar1:Array = new Array();
var editList:XMLList = editing.edit.(@id=="edit1").eList.inst;
var mediaList:XMLList = editing.edit.(@id=="edit1").mList.m;
// We adapt the program to the new and old version of content/media place
// new <m ref="kia_closeup" id="0" t="v" c="color_uint"><content>url or text content</content></m>
// old <m ref="kia_closeup" id="0" t="v" c="color_or_quality" src="path/media_or_pict.flv"><content/></m>
for each(inst in editList){
a = inst.@ref.split("|;|");
curMedia = mediaList.(@id==inst.@m);
content = (curMedia.@src.toString()=="" || curMedia.@src==undefined) ? curMedia.content.toString() : curMedia.@src.toString();
//trace("m = " + inst.@m.toString() + ", " + curMedia.@t.toString() + ", " + uint(curMedia.@c) + ", " + curMedia.@src.toString() + ", " + curMedia.content.toString() + ", content=" + content);
if(a[0]=="title"){ a[0]="text"; } // To allow old version
// A video path can be dependant on the user's folder organisation.
// If a user B receives a project from a user A, the video paths will be like
// /users/userA/docs/video/id/id.flv and /users/userB/ldt/id/i d.flv
// So in order ta read the BàB without problems, we match the bàb paths
// with the video paths actually recorded.
// if(curMedia.@t.toString()=="v"){
// content = content.replace(/\\/g,"/");
// var videoName:String = content.substr(content.lastIndexOf("/")+1);
// for(var idCtt:String in Global.arContents){
// if(Global.arContents[idCtt]["path"].substr(Global.arContents[idCtt]["path"].replace(/\\/g,"/").lastIndexOf("/")+1)==videoName){
// content = Global.arContents[idCtt]["path"];
// }
// }
// }
// Now that we got the good video path, we push in the array
ar1.push({idCtt:a[0], idGrp:a[1], idCut:a[2], idView:a[3], crit:a[3], idSeg:a[5], tIn:Number(inst.@begin), tOut:Number(inst.@end), type:curMedia.@t.toString(), v:uint(inst.@v), color:uint(curMedia.@c), content:content, idAuthor:"", author:"", idTitle:"", title:"", date:"", trId:Number(inst.@trId), trIc:Number(inst.@trIc), trOd:Number(inst.@trOd), trOc:Number(inst.@trOc)});
}
// Second edit's line
var ar2:Array = new Array();
editList = editing.edit.(@id=="edit2").eList.inst;
mediaList = editing.edit.(@id=="edit2").mList.m;
for each(inst in editList){
a = inst.@ref.split("|;|");
//trace("m = " + inst.@m.toString() + ", " + edit1Media.(@id==inst.@m.toString()).@t.toString() + ", " + uint(edit1Media.(@id==inst.@m).@c) + ", " + edit1Media.(@id==inst.@m).@src.toString() + ", " + edit1Media.(@id==inst.@m).content.toString());
curMedia = mediaList.(@id==inst.@m);
content = (curMedia.@src.toString()=="" || curMedia.@src==undefined) ? curMedia.content.toString() : curMedia.@src.toString();
if(a[0]=="title"){ a[0]="text"; } // To allow old version
// A video path can be dependant on the user's folder organisation.
// If a user B receives a project from a user A, the video paths will be like
// /users/userA/docs/video/id/id.flv and /users/userB/ldt/id/id.flv
// So in order ta read the BàB without problems, we match the bàb paths
// with the video paths actually recorded.
// if(curMedia.@t.toString()=="v"){
// content = content.replace(/\\/g,"/");
// videoName = content.substr(content.lastIndexOf("/")+1);
// for(idCtt in Global.arContents){
// if(Global.arContents[idCtt]["path"].substr(Global.arContents[idCtt]["path"].replace(/\\/g,"/").lastIndexOf("/")+1)==videoName){
// content = Global.arContents[idCtt]["path"];
// }
// }
// }
// Now that we got the good video path, we push in the array
ar2.push({idCtt:a[0], idGrp:a[1], idCut:a[2], idView:a[3], crit:a[3], idSeg:a[5], tIn:Number(inst.@begin), tOut:Number(inst.@end), type:curMedia.@t.toString(), v:uint(inst.@v), color:uint(curMedia.@c), content:content, idAuthor:"", author:"", idTitle:"", title:"", date:"", trId:Number(inst.@trId), trIc:Number(inst.@trIc), trOd:Number(inst.@trOd), trOc:Number(inst.@trOc)});
}
// And we push a new edit entry with the edit's title and abstract
editsAr.push({id:"bab_1", title:editing.title.toString(), abstract:editing.abstract.toString(), segAr1:ar1, segAr2:ar2, creator:"projectCreator", created:now, contributor:"projectCreator", modified:now});
titlesAr.push(editing.title.toString());
}
if(editsAr.length==0){
editsAr.push({id:"bab_1", title:"Bout à bout 1", abstract:"", segAr1:new Array(), segAr2:new Array(), creator:"projectCreator", created:now, contributor:"projectCreator", modified:now});
titlesAr.push("Bout à bout 1");
}
//setBab(0, true);
}
}
else{
editsAr = [{id:"bab_1", title:"Bout à bout 1", abstract:"", segAr1:new Array(), segAr2:new Array(), creator:"projectCreator", created:now, contributor:"projectCreator", modified:now}];
titlesAr = ["Bout à bout 1"];
//setBab(0, true);
}
app.youCanStart();
}
public function getEditList1():Array{
trace("bab getEditList1");
// For each line, 2 arrays have to be prepared. The first is the edit instructions.
// The second is the media array (type, content -path or text-, background color)
return getEditMediaList(0, 1);
}
private function getEditMediaList(numBab:Number, line:uint):Array{
var a:Array = [];
if(0<=numBab && numBab<editsAr.length){
// For each line, 2 arrays have to be prepared. The first is the edit instructions.
// The second is the media array (type, content -path or text-, background color)
var segAr:Array = [];
// We get the good datas function of the bab id and the line id
if(numBab==curBab && line==1) segAr = segAr1;
else if(numBab==curBab && line==2) segAr = segAr2;
else if(line==1) segAr = editsAr[numBab].segAr1;
else if(line==2) segAr = editsAr[numBab].segAr2;
// Now we scan to segment array to build the edit list and the media list
var nbSegs:uint = segAr.length;
var editList:Array = [];
var mediaList:Array = [];
var dur:uint = 0;
for(var i:uint=0;i<nbSegs;i++){
var posMedia:Number = NaN;
var nbMedia:uint = mediaList.length;
//trace("bab1 " + i + ", " + posMedia + ", nbMedia=" + nbMedia + ", " + segAr[i].content);
var j:uint = 0;
while(j<nbMedia && isNaN(posMedia)){
if(mediaList[j].type==segAr[i].type && mediaList[j].color==segAr[i].color && mediaList[j].content==segAr[i].content){
//trace("bab1 j'ai trouvé " + segAr[i].content);
posMedia = j;
}
j++;
}
// If the media was not already in the array, we add it
if(isNaN(posMedia)){
//trace("bab " + numBab + " je push " + segAr[i].content);
//(this.parentApplication as LignesDeTempsFlex).debug.text += "\nbab " + numBab + " je push " + segAr[i].content;
mediaList.push({ref:segAr[i].idCtt, type:segAr[i].type, color:segAr[i].color, content:segAr[i].content});
posMedia = mediaList.length - 1;
}
// First we get the media position : if
// segAr.push({seg:s, idCtt:idCttPar, idGrp:idGrpPar, idCut:idCutPar, idView:idViewPar, crit:critPar, idSeg:idSeg, tIn:tcIn, tOut:tcOut, type:type, v:100, color:color, content:content, idAuthor:idAuthor, author:author, idTitle:idTitle, title:title, date:date, trId:trIdPar, trIc:trIcPar, trOd:trOdPar, trOc:trOcPar});
var ref:String = segAr[i].idCtt + "|;|" + segAr[i].idGrp + "|;|" + segAr[i].idCut + "|;|" + segAr[i].idView + "|;|" + segAr[i].crit + "|;|" + segAr[i].idSeg;
editList.push({ref:ref, m:posMedia, tIn:segAr[i].tIn, tOut:segAr[i].tOut, eIn:dur, eOut:(dur+(segAr[i].tOut-segAr[i].tIn)), v:segAr[i].v, trId:segAr[i].trId, trIc:segAr[i].trIc, trOd:segAr[i].trOd, trOc:segAr[i].trOc});
dur += segAr[i].tOut - segAr[i].tIn;
}
a = [editList, mediaList];
}
// We return an array with the 2 array, edit list and media list
return a;
}
//
// Functions to code colors int to Hexa string RRGGBB and Hexa string to int
//
private function colorNbrToHexaStr(c:int):String{
var s:String = c.toString(16);
var nbZero:uint = 6 - s.length;
for(var i:uint=0;i<nbZero;i++){
s = "0" + s;
}
return s;
}
private function colorHexaStrToNbr(s:String):Number{
var n:Number;
if(s.substr(0,1)=="#") n = Number("0x" + s.substr(1));
else n = Number(s);
return n;
}
public function get now():String{
var d:Date = new Date();
var m:uint = d.month + 1; // because Date.month begins at 0
return d.fullYear + "-" + (m<10?("0"+m):m) + "-" + (d.date<10?("0"+d.date):d.date) + "T" + (d.hours<10?("0"+d.hours):d.hours) + ":" + (d.minutes<10?("0"+d.minutes):d.minutes) + ":" + (d.seconds<10?("0"+d.seconds):d.seconds);
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/EditSkin.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import bab.player.events.EditEvent;
import flash.display.MovieClip;
import flash.display.SimpleButton;
import flash.display.Sprite;
import flash.events.EventDispatcher;
import flash.events.MouseEvent;
import flash.geom.Rectangle;
import bab.player.FlvPlayer;
public class EditSkin extends EventDispatcher
{
//private var flvP:FlvPlayer;
private var skinMc:MovieClip;
private var playBtn:SimpleButton;
private var pauseBtn:SimpleButton;
private var backBtn:SimpleButton;
private var forwardBtn:SimpleButton;
private var volBtn:Sprite;
private var volBar:Sprite;
private var xVol:uint;
private var yVol:uint;
private var curVol:Number;
public function EditSkin(f:FlvPlayer)
{
//flvP = f;
skinMc = f.babSkin;
//trace("babSkin 2 = " + skinMc.play_mc + ", " + skinMc.pause_mc + ", " + skinMc.back_mc + ", " + skinMc.forward_mc + ", " + skinMc.volumeBarHandle_mc + ", " + skinMc.volumeBar_mc);
playBtn = skinMc.play_mc;
pauseBtn = skinMc.pause_mc;
pauseBtn.visible = false;
backBtn = skinMc.back_mc;
forwardBtn = skinMc.forward_mc;
volBtn = skinMc.volumeBarHandle_mc;
volBtn.buttonMode = true;
xVol = volBtn.x;
volBtn.x = xVol + 50*f.volume;
//trace("volBtn.x : " + volBtn.x);
yVol = volBtn.y;
volBar = skinMc.volumeBar_mc.fullness_mc.fill_mc;
volBar.useHandCursor = volBar.buttonMode = true;
skinMc.volumeBar_mc.fullness_mc.fill_mc.mouseEnabled = false;
skinMc.volumeBar_mc.fullness_mc.mouseEnabled = false;
skinMc.volumeBar_mc.hit_mc.mouseEnabled = false;
skinMc.volumeBar_mc.mouseEnabled = false;
// <TEMP> while the volume management has not been coded
volBtn.visible = skinMc.volumeBar_mc.visible = true;
// </TEMP>
playBtn.addEventListener(MouseEvent.CLICK, playPauseHandler);
pauseBtn.addEventListener(MouseEvent.CLICK, playPauseHandler);
backBtn.addEventListener(MouseEvent.CLICK, backHandler);
forwardBtn.addEventListener(MouseEvent.CLICK, forwardHandler);
volBtn.addEventListener(MouseEvent.MOUSE_DOWN, startVolHandler);
volBar.addEventListener(MouseEvent.MOUSE_DOWN, startVolHandler);
}
//
// Mouse Event handlers
//
private function playPauseHandler(e:MouseEvent=null):void{
dispatchEvent(new EditEvent(EditEvent.EDIT_PLAYPAUSE, curVol));
}
private function backHandler(e:MouseEvent=null):void{
dispatchEvent(new EditEvent(EditEvent.EDIT_BACK, curVol));
}
private function forwardHandler(e:MouseEvent=null):void{
dispatchEvent(new EditEvent(EditEvent.EDIT_FORWARD, curVol));
}
private function startVolHandler(e:MouseEvent=null):void{
//trace("startVolHandler");
volBtn.startDrag(false,new Rectangle(xVol,yVol,50,0));
volBtn.stage.addEventListener(MouseEvent.MOUSE_MOVE,updateSound);
volBtn.stage.addEventListener(MouseEvent.MOUSE_UP, stopVolHandler);
}
private function stopVolHandler(e:MouseEvent=null):void{
volBtn.stopDrag();
volBtn.stage.removeEventListener(MouseEvent.MOUSE_MOVE,updateSound);
volBtn.stage.removeEventListener(MouseEvent.MOUSE_UP, stopVolHandler);
volBtn.buttonMode = true;
// We dispatch the event only at the end
}
private function updateSound(e:MouseEvent=null):void{
//trace("xVol : " + xVol);
//trace("volBtn.x : "+ volBtn.x);
volBar.width = volBtn.x - xVol;
//trace("volBar.width : " + volBar.width);
curVol = (100 / 50) * (volBtn.x - xVol);
dispatchEvent(new EditEvent(EditEvent.EDIT_SOUNDUPDATE, curVol/100));
}
//
// Enable to switch display between play and pause buttons
//
public function set isPlaying(b:Boolean):void{
if(b==true){
playBtn.visible = false;
pauseBtn.visible = true;
}
else if(b==false){
playBtn.visible = true;
pauseBtn.visible = false;
}
}
public function setVolume(vol:Number):void{
volBtn.x = xVol + 50*vol;
volBar.width = volBtn.x - xVol;
//trace("setVolume, vol : " + vol);
dispatchEvent(new EditEvent(EditEvent.EDIT_SOUNDUPDATE, vol));
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/ExternalPlayer.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import fl.video.VideoEvent;
import flash.display.DisplayObjectContainer;
import flash.display.Loader;
import flash.display.SimpleButton;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.events.MouseEvent;
import flash.events.SecurityErrorEvent;
import flash.events.TimerEvent;
import flash.net.URLRequest;
import flash.system.Security;
import flash.text.TextField;
import flash.utils.Timer;
//import mx.controls.Alert;
public class ExternalPlayer extends EventDispatcher
{
private var curParent:DisplayObjectContainer;
private var player:Object;
private var playerYT:Object;
private var playerDM:Object;
private var playBtn:SimpleButton;
private var pauseBtn:SimpleButton;
private var volPlus:SimpleButton;
private var volMinus:SimpleButton;
private var playheadTimer:Timer;
private var urlToLoad:String;
private var sizeUpdated:Boolean = false;
public static function get EXTERNALPLAYER_RATIO():Number{
return 1.6;
}
public function ExternalPlayer(prnt:DisplayObjectContainer, url:String="")
{
Security.allowDomain("*");
Security.allowInsecureDomain("*");
curParent = prnt;
// Simple button Play
var t:TextField = new TextField();
t.text = "PLAY";
t.autoSize = "left";
playBtn = new SimpleButton(t,t,t,t);
playBtn.useHandCursor = playBtn.mouseEnabled = true;
prnt.addChild(playBtn);
// Simple button Pause
var t2:TextField = new TextField();
t2.text = "PAUSE";
t2.autoSize = "left";
pauseBtn = new SimpleButton(t2,t2,t2,t2);
pauseBtn.useHandCursor = pauseBtn.mouseEnabled = true;
prnt.addChild(pauseBtn);
// Simple button Volume +
var t3:TextField = new TextField();
t3.text = "Vol + /";
t3.autoSize = "left";
volPlus = new SimpleButton(t3,t3,t3,t3);
volPlus.useHandCursor = volPlus.mouseEnabled = true;
prnt.addChild(volPlus);
// Simple button Pause
var t4:TextField = new TextField();
t4.text = "Vol -";
t4.autoSize = "left";
volMinus = new SimpleButton(t4,t4,t4,t4);
volMinus.useHandCursor = volMinus.mouseEnabled = true;
prnt.addChild(volMinus);
pauseBtn.x = 50;
volPlus.x = 200;
volMinus.x = 235;
// Play pause listeners
playBtn.addEventListener(MouseEvent.CLICK, onBtnClick);
pauseBtn.addEventListener(MouseEvent.CLICK, onBtnClick);
// Volume listeners
volPlus.addEventListener(MouseEvent.CLICK, onVolClick);
volMinus.addEventListener(MouseEvent.CLICK, onVolClick);
loadVideo(url);
}
//
// Load Players
//
private function loadYTPlayer():void{
// Youtube loader
var l:Loader = new Loader();
l.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadYTCLP);
l.addEventListener(ErrorEvent.ERROR, onError, true);
l.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError, true);
l.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, onError, true);
l.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError, true);
l.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));
// The parent will load;
curParent.addChild(l);
}
private function loadDMPlayer():void{
// Dailymotion loader
var l:Loader = new Loader();
l.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadDMCLP);
l.addEventListener(ErrorEvent.ERROR, onError, true);
l.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError, true);
l.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, onError, true);
l.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError, true);
l.load(new URLRequest("http://www.dailymotion.com/swf?enableApi=1&chromeless=1"));
// The parent will load;
curParent.addChild(l);
}
//
// OnLoad Players management
//
private function onLoadYTCLP(e:Event):void {
//addChild(loader);
playerYT = e.target.content;
playerYT.addEventListener(ErrorEvent.ERROR, onError);
playerYT.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
playerYT.addEventListener("onReady", onYTPlayerReady);
playerYT.addEventListener("onError", onYTPlayerError);
playerYT.addEventListener("onStateChange", onYTStateChange);
//YTPlayer.addEventListener("onPlaybackQualityChange", onVideoPlaybackQualityChange);
}
private function onLoadDMCLP(e:Event):void {
//addChild(loader);
playerDM = e.target.content;
playerDM.addEventListener(ErrorEvent.ERROR, onError);
playerDM.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
playerDM.addEventListener("onReady", onYTPlayerReady);
playerDM.addEventListener("onError", onYTPlayerError);
playerDM.addEventListener("onStateChange", onYTStateChange);
//YTPlayer.addEventListener("onPlaybackQualityChange", onVideoPlaybackQualityChange);
}
//
// Player event management
//
private function onYTPlayerReady(o:Object):void {
// Event.data contains the event parameter, which is the Player API ID
trace("player ready:" + o.data);
// Once this event has been dispatched by the player, we can use
// cueVideoById, loadVideoById, cueVideoByUrl and loadVideoByUrl
// to load a particular YouTube video.
loadVideo(urlToLoad);
}
private function onYTPlayerError(o:Object):void {
// Event.data contains the event parameter, which is the error code
trace("player error:", o.data);
}
private function onYTStateChange(o:Object):void {
// Event.data contains the event parameter, which is the new player state
trace("player state:" + o.data + (o.data==1) + (o.data=="1"));
// o.data : unstarted (-1), ended (0), playing (1), paused (2), buffering (3), video cued (5)
if(o.data==1 || o.data=="1" || o.data==3 || o.data=="3"){
// When the YTplayer enters in play state, it sends 1 or 3.
if(playheadTimer!=null){
playheadTimer.stop();
playheadTimer = null;
}
playheadTimer = new Timer(500, 3600*2);
playheadTimer.addEventListener(TimerEvent.TIMER, onTimer);
playheadTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerComplete);
playheadTimer.start();
}
else{
// When the YTplayer enters in play state, it sends 1 or 3.
if(playheadTimer!=null){
playheadTimer.stop();
playheadTimer = null;
}
}
// When the video has been loaded, we ask a resize to the manager
if(!sizeUpdated && o.data!=-1 && o.data!="-1"){
dispatchEvent(new VideoEvent(VideoEvent.READY));
}
}
//
// Size matters
//
public function setSize(w:Number, h:Number):void{
if(player!=null){
//trace("setSize " + w + ", " + h);
if(player.setSize) player.setSize(EXTERNALPLAYER_RATIO*Math.max(h,242),Math.max(h,242));
playBtn.y = pauseBtn.y = volPlus.y = volMinus.y = Math.max(h,240) + 10;
}
}
//
// Play/pause mangement
//
private function onBtnClick(e:MouseEvent):void{
if(e.target==playBtn) play();
else if(e.target==pauseBtn) pause();
}
//
// Play/pause mangement
//
public function play():void{
if(player!=null){
player.playVideo();
}
}
public function pause():void{
if(player!=null){
player.pauseVideo();
}
}
//
// Timer management
//
private function onTimer(e:TimerEvent):void{
//trace("onTimer");
if(player!=null){
//trace("onTimer 2 " + player.getCurrentTime());
dispatchEvent(new VideoEvent(VideoEvent.PLAYHEAD_UPDATE, false, false, "playing", player.getCurrentTime()));
}
}
private function onTimerComplete(e:TimerEvent):void{
// nothing to do
}
//
// Visible management
//
public function set visible(b:Boolean):void{
if(player!=null){
player.visible = playBtn.visible = pauseBtn.visible = volMinus.visible = volPlus.visible = b;
if(!b) pause();
}
}
public function get visible():Boolean{
if(player!=null){
return player.visible;
}
return false;
}
//
// Volume management
//
private function onVolClick(e:MouseEvent):void{
if(player!=null){
if(e.target==volPlus) player.setVolume(Math.min(100, player.getVolume()+10));
else if(e.target==volMinus) player.setVolume(Math.max(0, player.getVolume()-10));
}
}
//
// Url management
//
public function loadVideo(url:String):void{
var id:String = "";
if(url!=""&& url.search("youtube")>-1){
if(playerYT!=null){
// A valid youtube url is like : http://www.youtube.com/watch?v=PgEu923nxSE or http://www.youtube.com/v/PgEu923nxSE
// The idea is to get the id from the url. The id is ALWAYS 11 characters.
if(url.search("v=")>-1) id = url.substr(url.search("v=")+2, 11);
else if(url.search("v/")>-1) id = url.substr(url.search("v/")+2, 11);
sizeUpdated = false;
player = playerYT;
if(id!="" && id.length==11) player.loadVideoById(id);
//else Alert.show("Youtube URL must be like\nhttp://www.youtube.com/watch?v=VIDEO_ID", "Attention");
//player.loadVideoById("PgEu923nxSE"); // Stiegler
//player.loadVideoById("7xzU9Qqdqww"); // Kid Cudi - Pursuit Of Happiness ft. Ratatat
}
else{
urlToLoad = url;
loadYTPlayer();
}
}
else if(url!=""&& url.search("dailymotion")>-1){
if(playerDM!=null){
// A valid DM url is like : http://www.dailymotion.com/video/VIDEO_ID
// The idea is to get the id from the url.
if(url.search("video/")>-1) id = url.substr(url.search("video/")+6);
sizeUpdated = false;
player = playerDM;
if(id!="") player.loadVideoById(id);
//else Alert.show("Dailymotion URL must be like\nhttp://www.dailymotion.com/video/VIDEO_ID", "Attention");
//player.loadVideoById("PgEu923nxSE"); // Stiegler
//player.loadVideoById("7xzU9Qqdqww"); // Kid Cudi - Pursuit Of Happiness ft. Ratatat
}
else{
urlToLoad = url;
loadDMPlayer();
}
}
}
//
// Seek management
//
public function goTo(tc:Number, paramPlay:Boolean):void{
if(player!=null){
//player.seekTo(tc, paramPlay);
if(player==playerYT) player.seekTo(tc, true);
else if(player==playerDM) player.seekTo(tc);
}
}
//
// Trying to catch the sandbox errors but does not work...
//
public function onError(er:*):void{
// do nothing
trace("onError " + er);
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/FLVPlaybackCaptioningLDT.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import fl.video.*;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
//import mx.controls.Alert;
import nl.inlet42.data.subtitles.SubTitleData;
import nl.inlet42.data.subtitles.SubtitleParser;
use namespace flvplayback_internal;
public class FLVPlaybackCaptioningLDT extends FLVPlaybackCaptioning
{
public function FLVPlaybackCaptioningLDT()
{
super();
}
public function loadCapXml(capXml:XML):void{
ttm = new TimedTextManager(this);
//trace("ttm 2 = " + ttm);
ttm.xmlLoader = new URLLoader();
ttm.xmlLoader.data = capXml;
//trace("ttm.xmlLoader.data = " + ttm.xmlLoader.data.toString());
ttm.xmlLoadEventHandler(new Event(Event.COMPLETE));
}
//
// Generates a time text xml from a srt file
//
public function loadSrt(urlSrt:String):void{
var urll:URLLoader = new URLLoader(new URLRequest(urlSrt));
urll.addEventListener(Event.COMPLETE, onloadSrt);
urll.addEventListener(IOErrorEvent.IO_ERROR, errorLoadSrt);
}
private function errorLoadSrt(e:IOErrorEvent):void{
//Alert.show("Impossible to load the file " + e.text, "Error");
}
private function onloadSrt(e:Event):void{
var a:Array = SubtitleParser.parseSRT(e.currentTarget.data);
//trace("a = " + a);
var nbSub:uint = a.length;
default xml namespace = new Namespace("http://www.w3.org/2006/10/ttaf1");
var subTtmXml:XML =
<tt xml:lang='en' xmlns='http://www.w3.org/2006/10/ttaf1' xmlns:tts='http://www.w3.org/2006/10/ttaf1#style'>
<head/>
<body>
<div xml:id="captions"/>
</body>
</tt>;
var divNode:XML = subTtmXml.body.div[0];
for(var i:uint=0;i<nbSub;i++){
var sub:SubTitleData = a[i];
divNode.appendChild(new XML("<p begin=\"" + sub.startStr + "\" end=\"" + sub.endStr + "\"><![CDATA[<font face=\"Arial\">" + sub.text + "</font>]]></p>"));
}
loadCapXml(subTtmXml);
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/FLVPlaybackLDT.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import fl.video.*;
import flash.display.DisplayObjectContainer;
use namespace flvplayback_internal;
public class FLVPlaybackLDT extends FLVPlayback
{
public function FLVPlaybackLDT()
{
super();
}
public function showHideSkin(b:Boolean):void{
flvplayback_internal::uiMgr.visible = b;
}
public function hideSeekBarHit():void{
// In some cases, we need to disable the access to the whole media.
// In this purpose, we hise the SeekBarHit and SeekBarHandle.
if(seekBar!=null){
var s:DisplayObjectContainer = seekBar.parent;
var n:uint = s.numChildren;
for(var i:uint=0;i<n;i++){
if(s.getChildAt(i).toString()=="[object SeekBarHit]" || s.getChildAt(i).toString()=="[object SeekBarHandle]"){
s.getChildAt(i).visible = false;
}
}
}
}
//
// Getter setter for smoothing video parameter
//
public function set smoothing(b:Boolean):void{
getVideoPlayer(activeVideoPlayerIndex).smoothing = b;
}
public function get smoothing():Boolean{
return getVideoPlayer(activeVideoPlayerIndex).smoothing;
}
public function switchSmooth():void{
smoothing = !smoothing;
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/FlvPlayer.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import fl.video.MetadataEvent;
import fl.video.SoundEvent;
import fl.video.VideoEvent;
import fl.video.VideoScaleMode;
import fl.video.VideoState;
import flash.display.Graphics;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.net.URLRequest;
import flash.text.StyleSheet;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFormatAlign;
import flash.utils.Timer;
import fl.controls.ProgressBar;
import bab.player.events.EditEvent;
import flash.utils.getTimer;
public class FlvPlayer extends Sprite
{
private var wMin:Number = 550;
private var hMin:Number = 400;
public var flvPB:FLVPlaybackLDT;
private var widthFlv:uint;
private var heightFlv:uint;
private var uic:Sprite;
private var loading:TextField;
private var tcLabel:TextField;
private var metas:Array = new Array();
private var curRatio:Number;
private var savePlay:Boolean = false;
public var editSkin:EditSkin;
//private var babAr:Array;
private var curInst:int = -1;
private var babRunning:Boolean = false;
private var babRunningTimer:Timer;
public var babSkin:MovieClip;
private var babRatio:Number = 1.25;
private var editList:Array;
private var mediaList:Array;
private var instanceToPlay:uint = 0;
private var imageLayer:MovieClip;
private var pictAr:Array;
private var nbPictLoaded:uint;
private var mcContainer:Sprite;
private var bgMcCtn:Sprite;
private var textLayer:TextField;
private var styles:StyleSheet;
private var tf:TextFormat;
private var pb:ProgressBar;
private var caption:FLVPlaybackCaptioningLDT;
private var fullScreenOn:Boolean = false;
public var writeTC:Boolean = true;
private var YTPlayer:ExternalPlayer;
private var currentTcBab:Number;
private var debugText:TextField;
private var lastReSeek:uint = getTimer();
private var lastVolume:Number = 1;
private var tcToReach:Number = 0;
public function FlvPlayer(wInit:Number=550, hInit:Number=400, urlSkin:String="", debug:TextField=null)
{
super();
wMin = wInit;
hMin = hInit;
debugText = debug;
// Container for text layer, image layer and flvPB
uic = new Sprite();
addChild(uic);
// Background container
mcContainer = new Sprite();
mcContainer.visible = false;
uic.addChild(mcContainer);
bgMcCtn = new Sprite();
bgMcCtn.graphics.beginFill(0x770000);
bgMcCtn.graphics.drawRect(0,0,wMin,hMin);
bgMcCtn.graphics.endFill();
mcContainer.addChild(bgMcCtn);
// Text layer
textLayer = new TextField();
textLayer.width = wMin;
tf = new TextFormat("Verdana",12,0xFFFFFF);
tf.align = TextFormatAlign.CENTER;
textLayer.wordWrap = true;
textLayer.visible = false;
mcContainer.addChild(textLayer);
// Flv playback component
flvPB = new FLVPlaybackLDT();
uic.addChild(flvPB);
flvPB.autoPlay = false;
flvPB.fullScreenTakeOver = false;
flvPB.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO;
//flvPB.skin = urlSkin + "SkinUnderPlaySeekMuteVol.swf"; // urlSkin finishes with a "/"
//flvPB.skinBackgroundColor = 0xCCCCCC;
flvPB.addEventListener(MetadataEvent.METADATA_RECEIVED, onMDReceived);
flvPB.addEventListener(VideoEvent.PLAYHEAD_UPDATE, onPlayheadUpdate);
flvPB.addEventListener(VideoEvent.READY, onReady);
flvPB.addEventListener(VideoEvent.SEEKED, onSeeked);
flvPB.addEventListener(VideoEvent.STATE_CHANGE, onStateChange);
caption = new FLVPlaybackCaptioningLDT();
uic.addChild(caption);
if(urlSkin!=null && urlSkin!=""){
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, placeBabSkin);
loader.load(new URLRequest(urlSkin));
uic.addChild(loader);
tcLabel = new TextField();
tcLabel.text = "[00:00:00]";
tcLabel.textColor = 0xFFFFFF;
tcLabel.x = 120;
this.addChild(tcLabel);
}
imageLayer = new MovieClip();
this.addChild(imageLayer);
loading = new TextField();
loading.text = "Loading...";
loading.textColor = 0x0000FF;
//loading.visible = false;
//loading.mouseEnabled = false;
//loading.styleSheet.setStyle("horizontalCenter",0);
this.addChild(loading);
loading.addEventListener(MouseEvent.CLICK, onCCC);
pb = new ProgressBar();
pb.visible = false;
addChild(pb);
}
//
// On creation complete
//
private function placeBabSkin(e:Event=null):void {
babSkin = e.target.content;
//trace("babSkin 2 = " + babSkin.play_mc + ", " + babSkin.pause_mc + ", " + babSkin.back_mc + ", " + babSkin.forward_mc + ", " + babSkin.volumeBarHandle_mc + ", " + babSkin.volumeBar_mc);
babSkin.y = heightFlv;
babSkin.getChildAt(0).width = widthFlv;
babSkin.visible = false;
editSkin = new EditSkin(this);
editSkin.addEventListener(EditEvent.EDIT_PLAYPAUSE, onEditPlayPause);
editSkin.addEventListener(EditEvent.EDIT_BACK, onEditBack);
editSkin.addEventListener(EditEvent.EDIT_FORWARD, onEditForward);
editSkin.addEventListener(EditEvent.EDIT_SOUNDUPDATE, onEditVolumeUpdate);
// usefull to notice edit skin has been loaded.
dispatchEvent(new Event(EditEvent.EDIT_CHANGEINSTRUCTION));
}
//
// load media function
//
public function loadMedia(path:String, live:Boolean=false, paramPlay:Boolean=false, firstST:String="", extrasAr:Array=null):void{
//trace("loadMedia " + path);
stopBab();
// First, we check if the url to load is a Youtube url
if(path.search("youtube.com")>-1 || path.search("dailymotion.com")>-1){
pause();
// A valid youtube url is like : http://www.youtube.com/watch?v=PgEu923nxSE or http://www.youtube.com/v/PgEu923nxSE
if(YTPlayer==null){
YTPlayer = new ExternalPlayer(uic, path);
YTPlayer.addEventListener(VideoEvent.PLAYHEAD_UPDATE, onPlayheadUpdate);
YTPlayer.addEventListener(VideoEvent.READY, initSizes);
}
else YTPlayer.loadVideo(path);
curRatio = ExternalPlayer.EXTERNALPLAYER_RATIO;
//initSizes();
YTPlayer.visible = true;
flvPB.visible = false;
}
else{
if(YTPlayer!=null) YTPlayer.visible = false;
flvPB.visible = true;
// We check if the media is already loaded
var nbMedias:uint = metas.length;
var vp:Number = getVp(path);
lastVolume = flvPB.volume;
// We stop the current reading if possible
if(nbMedias>0 && allowFlvPB()) { flvPB.stop(); }
// We load the new content or play the already loaded content
if(isNaN(vp)){
vp = metas.length;
// We activate the good video player index
flvPB.activeVideoPlayerIndex = flvPB.visibleVideoPlayerIndex = vp;
flvPB.smoothing = true;
//trace("je load " + vp + ", " + path);
metas.push({path:path, w:3, h:1, ratio:3});
curRatio = metas[vp].ratio;
savePlay = paramPlay;
if(live==true){
savePlay = true;
flvPB.play(path, NaN, true);
}
else flvPB.load(path); // Then the window will be resized on metadata received
//trace("LoadMedia flvPB.volume : " + flvPB.volume);
// sets the volume to 0 (to avoid a bug) then sets it back to its previous level
flvPB.volume = 0;
flvPB.volume = lastVolume;
}
else{
// We activate the good video player index
flvPB.activeVideoPlayerIndex = flvPB.visibleVideoPlayerIndex = vp;
flvPB.smoothing = true;
//trace("vp = " + flvPB.activeVideoPlayerIndex + ", " + flvPB.isLive);
//trace("je play " + vp + ", " + path);
if(allowFlvPB()){ savePlay==false ? flvPB.pause() : flvPB.play(); }
// sets the volume to 0 (to avoid a bug) then sets it back to its previous level
flvPB.volume = 0;
flvPB.volume = lastVolume;
// We have to resize the window
curRatio = metas[vp].ratio;
initSizes();
}
// If a subtitle path is indicated we display it
var ext:String = firstST.toLowerCase().substr(firstST.length-3);
if(ext=="xml"){
caption.source = firstST;
}
else if(ext=="srt"){
caption.loadSrt(firstST);
}
// We set the caption/subtitles module to the good videoPlayerIndex index
caption.videoPlayerIndex = vp;
}
}
private function getVp(path:String):Number{
// We check if the media is already loaded
var i:uint = 0;
var nbMedias:uint = metas.length;
var vp:Number = NaN;
while(i<nbMedias && isNaN(vp)){
if(metas[i].path==path){
vp = i;
}
i++;
}
return vp;
}
//
// Function allowing to go to the wanted timecode. TC is in milliseconds, paramPlay enable to play or pause the video
//
public function goTo(tc:Number=0, paramPlay:Boolean=true):void{
//trace("goto " + paramPlay + ", flvPB.isLive = " + flvPB.isLive);
if((flvPB.isLive==false && allowFlvPB()) && metas.length>0 && (YTPlayer==null || !YTPlayer.visible)){
// It appears that we have some problems when the video is streamed :
// if we ask seek while the video is being played, the server plays the video from the beginning,
// so we have to pause it first.
if((metas[flvPB.visibleVideoPlayerIndex].path.substr(0,4).toLowerCase()=="rtmp") && paramPlay){
if(allowFlvPB()) flvPB.pause();
}
if(allowFlvPB()) flvPB.seek(tc/1000);
savePlay = paramPlay;
}
else if(YTPlayer!=null){
if(YTPlayer.visible){
YTPlayer.goTo(tc/1000, paramPlay);
}
}
}
//
// Function enabling to know the flvPB is playing (or pause)
//
public function isPlaying():Boolean{ return flvPB.playing; }
//
// Function enabling to switch play-pause and pause-play
//
public function playPause():void{
//trace(this.name + " playPause " + babRunning + ", flvPB.playing = " + flvPB.playing);
if(babRunning==false){
if(flvPB.playing==true){
if(allowFlvPB()) flvPB.pause();
savePlay = false;
}
else{
if(allowFlvPB()) flvPB.play();
savePlay = true;
}
}
else onEditPlayPause();
}
public function play():void{
if(allowFlvPB()) flvPB.play();
savePlay = true;
}
public function pause():void{
if(allowFlvPB()) flvPB.pause();
savePlay = false;
}
public function stop():void{
if(metas.length>0 && allowFlvPB()){ flvPB.stop(); }
savePlay = false;
if(babRunning==true){
if(babRunningTimer!=null){ if(babRunningTimer.running==true){ babRunningTimer.stop(); } }
babRunning = false;
}
}
//
// Manage video events
//
private function onMDReceived(e:MetadataEvent):void{
/*var o:Object;
trace("MD");
for(o in e.info){
trace(o + " : " + e.info[o.toString()]);
}*/
if(e.info["duration"]!=null){
//(this.parentApplication as LignesDeTempsFlex).debug.text += "\nw = " + e.info["width"] + "\nh = " + e.info["height"] + "\ndur = " + e.info["duration"];
}
var w:uint = Math.max(3, uint(e.info["width"]));
var h:uint = Math.max(1, uint(e.info["height"]));
metas[e.vp].w = w;
metas[e.vp].h = h;
metas[e.vp].ratio = w/h;
if(e.vp==flvPB.activeVideoPlayerIndex){
// If we load the content for a bout à bout (edit), we force the ratio at the bab Ratio
curRatio = (babRunning==true) ? babRatio : metas[e.vp].ratio;
initSizes();
}
}
private function getInfoID3(e:Event):void{
var o:Object;
trace("getInfoID3");
for(o in e){
trace(o + " : " + e[o.toString()]);
}
}
private function onStateChange(e:VideoEvent=null):void {
// If the user is not allowed to read the whole media, we hide the SeekBarHit
//if(Config.readFullLength==false) flvPB.hideSeekBarHit();
// We display an alert message if there is a connection error
dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, e.state));
if(e.state==VideoState.CONNECTION_ERROR){
//Alert.show("The player can not find the video file :\n" + metas[e.vp].path, "No video file");
}
}
private function allowFlvPB():Boolean{
return (flvPB.state!=VideoState.CONNECTION_ERROR && flvPB.state!=VideoState.DISCONNECTED);
}
private function onReady(e:VideoEvent=null):void {
//trace("onReady savePlay = " + savePlay);
// We have to do that to force pause on load
if(allowFlvPB()){ savePlay==false ? flvPB.pause() : flvPB.play(); }
}
private function onSeeked(e:VideoEvent):void {
//trace(name + " onSeeked savePlay = " + savePlay);
//loading.visible = false;
// We have to do that to force pause on load
if(allowFlvPB()){ savePlay==false ? flvPB.pause() : flvPB.play(); }
}
public function onPlayheadUpdate(e:VideoEvent):void {
//trace("onPU " + e.state + ", " + e.playheadTime + ", " + babRunning);//editList[curInst].tOut + ", " +
if(e.state=="seeking"){ loading.visible = true; }
if(babRunning==false && writeTC==true){
if(tcLabel) tcLabel.text = "[" + convertTC(e.playheadTime*1000, false) + "]";
this.dispatchEvent(e);
}
else if(babRunning==true){
if(e.playheadTime>=editList[curInst].tOut && e.state=="playing"){
playBabInst(curInst+1);
}
//var tcBab:Number;
if(mediaList[editList[curInst].m].type=="v"){
//trace(editList[curInst].eIn + ", " + e.playheadTime + ", " + editList[curInst].tIn + ", diff = " + (editList[curInst].tIn - e.playheadTime) + ", last>1 = " + ((getTimer() - lastReSeek)>2000));
// If the current playheadTime is inferior to editList[curInst].tIn more than 3 seconds, we reseek to the tIn.
// And we avoid too many seek by waiting 2 sec at least.
if((editList[curInst].tIn - e.playheadTime)>3 && (getTimer() - lastReSeek)>2000){
//debugText.text = "HIDE and RESEEK";
if(allowFlvPB()) flvPB.seek(tcToReach);
lastReSeek = getTimer();
flvPB.visible = false;
flvPB.volume = 0;
loading.visible = true;
}
else{
if((getTimer() - lastReSeek)>1000){
//debugText.text = "SEEK OK";
flvPB.visible = true;
flvPB.volume = lastVolume;
loading.visible = false;
}
// We apply max : because of the playhead's approximation, e.playheadTime can be inferior to tIn
currentTcBab = Math.max(editList[curInst].eIn*1000,(editList[curInst].eIn + e.playheadTime - editList[curInst].tIn)*1000);
//currentTcBab = tcBab;
if(tcLabel) tcLabel.text = "[" + convertTC(currentTcBab, false) + "]";
this.dispatchEvent(new EditEvent(EditEvent.EDIT_UPDATETC, currentTcBab));
}
}
else if(mediaList[editList[curInst].m].type=="p" || mediaList[editList[curInst].m].type=="t"){
currentTcBab = (editList[curInst].eIn)*1000;
if(tcLabel) tcLabel.text = "[" + convertTC(currentTcBab, false) + "]";
this.dispatchEvent(new EditEvent(EditEvent.EDIT_UPDATETC, currentTcBab));
}
}
}
//
// Set the good sizes function of the ratio
//
public function initSizes(e:VideoEvent=null):void{
// We set hMin and wMin for the video to take the maximum of space. wMax = 415, hMax = 310
/*if((Math.round(424/curRatio)+24+37)>310){
hMin = 310;
wMin = (310-24-37)*curRatio;
}
else{
wMin = 415;
hMin = Math.round(wMin/curRatio) + 24 + 37;
}
if(width<wMin) {}
else{
height = Math.round(width/curRatio) + 24 + 37;
}*/
}
//
// Function enabling to take or let control of the timecode label
//
public function set manageEventTimer(b:Boolean):void{
writeTC = b;
}
public function set tcText(s:String):void{
if(tcLabel) tcLabel.text = s;
}
private function onResize():void{
setSize(wMin, hMin - ((editSkin) ? 37 : 0));
}
public function setSize(w:uint, h:uint):void{
//trace("setSize " + w + ", " + h);
if(h<1000){ // avoids resize problems if metadatas were not good
//mcContainer.width = imageLayer.width = widthFlv = w;
//mcContainer.height = imageLayer.height = heightFlv = h;
imageLayer.width = widthFlv = w;
imageLayer.height = heightFlv = h;
loading.y = heightFlv - 16;
if(tcLabel) tcLabel.y = heightFlv;
//if(metas.length==1 && metas[0]["path"].search("mp3:")>-1){
flvPB.setSize(widthFlv,heightFlv);
flvPB.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO;
if(babSkin!=null){
babSkin.y = heightFlv - 3;
babSkin.getChildAt(0).width = widthFlv;
}
var nbChilds:uint = imageLayer.numChildren;
for(var i:uint=0;i<nbChilds;i++){
imageLayer.getChildren()[i].width = widthFlv;
imageLayer.getChildren()[i].height = heightFlv;
}
if(YTPlayer!=null) YTPlayer.setSize(widthFlv,heightFlv);
}
}
//
// BOUT A BOUT (EDIT) FUNCTIONS
//
public function getEditList(editListPar:Array, mediaListPar:Array):void{
//if(Global.flv2==name) trace("flv getEditList " + editListPar.length + ", " + mediaListPar.length);
if(mediaListPar.length>0 && editListPar.length>0){
instanceToPlay = 0;
curInst = -1;
// We don't display the different layers
textLayer.visible = false;
mcContainer.visible = false;
imageLayer.visible = false;
flvPB.visible = false;
// We search for every media
var i:uint;
editList = editListPar;
mediaList = mediaListPar;
var nbMedias:uint = mediaList.length;
var nbLoaded:uint = metas.length;
var canStart:Boolean = true;
var a:Array = new Array();
for(i=0;i<nbMedias;i++){
// We check if the videos are not already loaded
if(mediaList[i].type=="v"){
var found:Boolean = false;
var j:uint = 0;
while(j<nbLoaded && found==false){
if(metas[j].path==mediaList[i].content){ found = true; }
j++;
}
// If the path was not found, we load the media
if(nbLoaded==0 || found==false){
loadMedia(mediaList[i].content);
}
}
// We load every picture before the bout a bout starts
else if(mediaList[i].type=="p"){
canStart = false;
// We add the Global.projPath to the pict url when its path is relative (= "_resources/...")
//a.push( ((mediaList[i].content.substr(0,9)=="_resource") ? Global.projPath : "") + mediaList[i].content);
a.push(mediaList[i].content);
}
}
if(canStart==true) startBab();
else{
// We delete doubloons
a.sort(Array.CASEINSENSITIVE);
for(i=0;i<a.length;i++){
if(a[i]==a[i+1] || a[i]==""){
a.splice(i,1);
i--; // We do i-- because we spliced an index so we have to redo the test at "i" position
}
}
loadPicts(a);
}
}
}
//
// Image load management
//
private function loadPicts(a:Array):void{
var i:uint;
// We delete the old pictures
pictAr = [];
var nbChilds:uint = imageLayer.getChildren().length;
for(i=0;i<nbChilds;i++){
imageLayer.removeChildAt(0);
}
// We add the new ones
var nbPict:uint = a.length;
nbPictLoaded = 0;
if(nbPict>0){
// We prepare pictAr
for(i=0;i<nbPict;i++){
pictAr.push({src:a[i], img:null});
}
loadPict(a[0]);
}
else startBab();
}
private function loadPict(src:String):void{
var nbPict:uint = pictAr.length;
var i:uint = 0;
var found:Boolean = false;
while(i<nbPict && found==false){
if(pictAr[i].src==src && pictAr[i].img!=null){ found = true; }
i++;
}
if(found==false){
var img:Image = new Image();
img.width = widthFlv;
img.height = widthFlv / babRatio;
//img.setStyle("horizontalAlign","center");
//img.setStyle("verticalAlign","center");
//img.maintainAspectRatio = true;
img.y = 0;
img.addEventListener(Event.INIT, imgComplete);
img.addEventListener(IOErrorEvent.IO_ERROR, imgError);
pb.visible = true;
//pb.label = "Loading picture " + (nbPictLoaded+1) + " %3%%";
pb.source = img;
// trace("load img :\n" + src);
// (this.parentApplication as LignesDeTempsFlex).debug.text += "\nload img :\n" + src;
img.source = src;
img.visible = false;
imageLayer.addChild(img);
}
else{
nbPictLoaded++;
if(nbPictLoaded==nbPict) startBab();
}
//(this.parentApplication as LignesDeTempsFlex).debug.text += "\nload img" + src
}
private function imgError(e:IOErrorEvent):void {
// We don't display the progress bar anymore
pb.visible = false;
// We update pictAr
var img:Image = e.target as Image;
var src:String = img.source as String;
// trace("imgError :\n" + src);
// (this.parentApplication as LignesDeTempsFlex).debug.text += "\nimgError" + src;
loadNextPict(src, img);
}
private function imgComplete(e:Event):void {
// We don't display the progress bar anymore
pb.visible = false;
// We update pictAr
var img:Image = e.target as Image;
var src:String = img.source as String;
// trace("imgComplete :\n" + src);
// (this.parentApplication as LignesDeTempsFlex).debug.text += "\nimgComplete" + src;
loadNextPict(src, img);
}
private function loadNextPict(src:String, img:Image):void{
var nbPict:uint = pictAr.length;
var i:uint = 0;
var found:Boolean = false;
while(i<nbPict && found==false){
if(pictAr[i].src==src){
found = true;
pictAr[i].img = img;
}
i++;
}
nbPictLoaded++;
if(nbPictLoaded==nbPict){
// Because of the time needed when we load picture, BaB can start before all pictures are loaded
// So we curInst we recall set curInst at -1 in order to call startBab at the correct time.
curInst = -1;
startBab();
}
else loadPict(pictAr[nbPictLoaded].src);
}
private function displayPict(src:String):void{
var nbPict:uint = pictAr.length;
for(var i:uint=0;i<nbPict;i++){
if(pictAr[i].src==src && pictAr[i].img!=null){
// trace("img vis : " + pictAr[i].src + " : " + pictAr[i].img);
// (this.parentApplication as LignesDeTempsFlex).debug.text += "\nimg vis : " + pictAr[i].src + " : " + pictAr[i].img;
pictAr[i].img.visible = true;
}
else if(pictAr[i].img!=null){ pictAr[i].img.visible = false; }
}
}
//
// Bab timer management
//
private function completeTimer(e:TimerEvent):void {
//trace("completeTimer");
babRunningTimer.stop();
babRunningTimer.removeEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.removeEventListener(TimerEvent.TIMER_COMPLETE,completeTimer);
playBabInst(curInst+1);
}
private function onRunningTimer(e:TimerEvent):void {
//trace("onRunningTimer " + babRunningTimer.currentCount + " sur " + babRunningTimer.repeatCount);
currentTcBab = editList[curInst].eOut*1000 - (babRunningTimer.repeatCount-babRunningTimer.currentCount)*250;
if(tcLabel) tcLabel.text = "[" + convertTC(currentTcBab, false) + "]";
//(this.parentApplication as LignesDeTempsFlex).debug.text += "[" + convertTC(tcBab, false) + "]";
dispatchEvent(new EditEvent(EditEvent.EDIT_UPDATETC, currentTcBab));
}
private function onEditPlayPause(e:EditEvent=null):void{
//trace(this.name + " onEditPlayPause " + mediaList[editList[curInst].m].type);
if(babRunning==true){
var tcBab:Number;
if(mediaList[editList[curInst].m].type=="v"){
//flvPB.playing==true ? (flvPB.pause();trace("je pause");) : (flvPB.play();trace("je play"););
if(flvPB.playing==true){
if(allowFlvPB()) flvPB.pause();
if(editSkin) editSkin.isPlaying = false;
}else{
savePlay = true;
if(allowFlvPB()) flvPB.play();
if(editSkin) editSkin.isPlaying = true;
}
}
else if(mediaList[editList[curInst].m].type=="p" || mediaList[editList[curInst].m].type=="t"){
if(babRunningTimer!=null){
if(babRunningTimer.running==true){
babRunningTimer.stop();
if(editSkin) editSkin.isPlaying = false;
//trace("after stop " + babRunningTimer.currentCount + " sur " + babRunningTimer.repeatCount);
}
else{
var newNb:uint = babRunningTimer.repeatCount - babRunningTimer.currentCount;
babRunningTimer = new Timer(250, newNb);
//trace("je reprends " + babRunningTimer.currentCount + " sur " + newNb);
babRunningTimer.addEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeTimer);
babRunningTimer.start();
if(editSkin) editSkin.isPlaying = true;
}
}
}
}
}
//
// Edit events functions
//
public function onEditBack(e:EditEvent=null):void{
//trace("onEditBack");
playBabInst(curInst-1);
}
public function onEditForward(e:EditEvent=null):void{
//trace("onEditForward");
playBabInst(curInst+1);
}
private function onEditVolumeUpdate(e:EditEvent=null):void{
//trace("onEditVolumeUpdate " + e.volume);
lastVolume = flvPB.volume = e.volume;
}
//
// Edit play functions
//
public function startBab():void{
trace("startBab flvPB = " + flvPB);
try{
flvPB.showHideSkin(false);
}
catch(e:*){ trace("flvPB.showHideSkin error 1"); }
curRatio = babRatio;
//hMin = Math.round(wMin/babRatio) + 24 + 37;
//height = Math.round(width/babRatio) + 24 + 37;
onResize();
if(tcLabel) tcLabel.text = "[" + convertTC(0, false) + "]";
if(babSkin) { babSkin.visible = true; }
playBabInst(instanceToPlay, false);
onResize();
}
public function stopBab():void{
//trace("stopBab");
textLayer.visible = false;
mcContainer.visible = false;
imageLayer.visible = false;
babRunning = false;
if(babSkin!=null){ babSkin.visible = false; }
flvPB.visible = true;
try{
flvPB.showHideSkin(true);
}
catch(e:*){ trace("flvPB.showHideSkin error 2"); }
if(babRunningTimer!=null){
if(babRunningTimer.running==true){
babRunningTimer.stop();
}
}
curInst = -1;
}
public function playBabInst(i:uint, paramPlay:Boolean=true, tcToReachParam:Number=NaN):void{
//if(Global.flv2==name) trace(name + " playBabInst change je passe a " + i + ", curInst = " + curInst + ", paramPlay = " + paramPlay);
if(editList!=null){if(i<editList.length){
// We update the edit player skin
if(editSkin) editSkin.isPlaying = paramPlay;
if(curInst!=i || paramPlay==true){
babRunning = true;
instanceToPlay = curInst = i;
if(babRunningTimer!=null){ if(babRunningTimer.running==true){ babRunningTimer.stop(); } }
if(mediaList[editList[curInst].m].type=="v"){
// Video case
textLayer.visible = false;
mcContainer.visible = true;
drawBgCtn(0x000000); // We draw a black background
imageLayer.visible = false;
savePlay = paramPlay || mediaList[editList[curInst].m].content.substr(0,4).toLowerCase()=="rtmp";
var vp:Number = getVp(mediaList[editList[curInst].m].content);
//if(Global.flv2==name) trace(name + " vp = " + vp);
var vpChanged:Boolean = false;
if(flvPB.activeVideoPlayerIndex!=vp){
if(allowFlvPB()) flvPB.pause();
flvPB.activeVideoPlayerIndex = flvPB.visibleVideoPlayerIndex = vp;
flvPB.smoothing = true;
vpChanged = true;
}
if(allowFlvPB()){
// If the video is NOT streamed and savePlay==true, we play it.
if(savePlay==true && mediaList[editList[curInst].m].content.substr(0,4).toLowerCase()!="rtmp") flvPB.play();
// If the video IS streamed and the player is playing, we have to pause it for the seek to work.
if(!vpChanged && !flvPB.paused && mediaList[editList[curInst].m].content.substr(0,4).toLowerCase()=="rtmp") flvPB.pause();
// If vpChanged and savePlay true, we replay
if(vpChanged && savePlay) flvPB.play();
tcToReach = (isNaN(tcToReachParam)) ? editList[curInst].tIn : tcToReachParam;
flvPB.seek(tcToReach);
}
flvPB.visible = true;
// sets the volume to 0 (to avoid a bug) then sets it back to its previous level
lastVolume = flvPB.volume;
flvPB.volume = 0;
flvPB.volume = lastVolume;
}
else if(mediaList[editList[curInst].m].type=="p"){
// Picture case
textLayer.visible = false;
mcContainer.visible = true;
drawBgCtn(mediaList[editList[curInst].m].color);
imageLayer.visible = true;
flvPB.visible = false;
if(metas.length>0 && allowFlvPB()){ flvPB.pause(); }
//displayPict( ((mediaList[editList[curInst].m].content.substr(0,9)=="_resource") ? Global.projPath : "") + mediaList[editList[curInst].m].content);
displayPict(mediaList[editList[curInst].m].content);
imageLayer.y = 0;
babRunningTimer = new Timer(250, editList[i].tOut*4);
//trace("je lance un timer sur " + (babAr[i].tOut*4));
babRunningTimer.addEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeTimer);
babRunningTimer.start();
if(paramPlay==false){ onEditPlayPause(); }
}
else if(mediaList[editList[curInst].m].type=="t"){
// Text case
textLayer.visible = true;
mcContainer.visible = true;
drawBgCtn(mediaList[editList[curInst].m].color);
imageLayer.visible = false;
flvPB.visible = false;
if(metas.length>0 && allowFlvPB()){ flvPB.pause(); }
textLayer.htmlText = mediaList[editList[curInst].m].content;
// If the color is clear the text will be black, if the color is dark the text will be white.
tf.color = (RGB2L(mediaList[editList[curInst].m].color)>(255*3/2)) ? 0x000000 : 0xFFFFFF;
textLayer.setTextFormat(tf);
textLayer.height = Math.floor(textLayer.textHeight) + 10;
textLayer.y = ((hMin-37-37)/2) - (textLayer.textHeight/2);
if(babRunningTimer!=null){
if(babRunningTimer.running==true){
babRunningTimer.stop();
}
}
babRunningTimer = new Timer(250, editList[i].tOut*4);
//trace("je lance un timer sur " + (babAr[i].tOut*4));
babRunningTimer.addEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeTimer);
babRunningTimer.start();
if(paramPlay==false){ onEditPlayPause(); }
}
//if(Global.flv2==name) trace(name + " playBabInst textLayer = " + textLayer.visible + ", mcContainer = " + mcContainer.visible + ", imageLayer = " + imageLayer.visible + ", flvPB = " + flvPB.visible);
//trace("4* tcBab = " + (editList[curInst].eIn*1000));
currentTcBab = editList[curInst].eIn * 1000;
dispatchEvent(new EditEvent(EditEvent.EDIT_UPDATETC, currentTcBab));
if(tcLabel) tcLabel.text = "[" + convertTC(currentTcBab, false) + "]";
}
// Else we run the current segment from the beginning
else if(curInst==i){
babRunning = true;
if(babRunningTimer!=null){ if(babRunningTimer.running==true){ babRunningTimer.stop(); } }
//if(Global.flv2==name) trace(name + " 2 type m = " + mediaList[editList[curInst].m].type);
//trace("m " + mediaList[editList[curInst].m].type + ", c = " + mediaList[editList[curInst].m].content + ", col = " + mediaList[editList[curInst].m].color);
if(mediaList[editList[curInst].m].type=="v"){
savePlay = paramPlay;
//if(Global.flv2==name) trace(name + " 2 vp = " + vp);
if(allowFlvPB()){
// If the video is NOT streamed and savePlay==true, we play it.
if(savePlay==true && mediaList[editList[curInst].m].content.substr(0,4).toLowerCase()!="rtmp") flvPB.play();
// If the video IS streamed and the player is playing, we have to pause it for the seek to work.
if(!flvPB.paused && mediaList[editList[curInst].m].content.substr(0,4).toLowerCase()=="rtmp") flvPB.pause();
tcToReach = editList[curInst].tIn;
flvPB.seek(tcToReach);
}
}
else if(mediaList[editList[curInst].m].type=="p"){
babRunningTimer = new Timer(250, editList[i].tOut*4);
//trace("je lance un timer sur " + (editList[i].tOut*4));
babRunningTimer.addEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeTimer);
babRunningTimer.start();
if(paramPlay==false){ onEditPlayPause(); }
}
else if(mediaList[editList[curInst].m].type=="t"){
if(babRunningTimer!=null){
if(babRunningTimer.running==true){
babRunningTimer.stop();
}
}
babRunningTimer = new Timer(250, editList[i].tOut*4);
//trace("je lance un timer sur " + (babAr[i].tOut*4));
babRunningTimer.addEventListener(TimerEvent.TIMER, onRunningTimer);
babRunningTimer.addEventListener(TimerEvent.TIMER_COMPLETE, completeTimer);
babRunningTimer.start();
if(paramPlay==false){ onEditPlayPause(); }
}
//if(Global.flv2==name) trace(name + " playBabInst 2 textLayer = " + textLayer.visible + ", mcContainer = " + mcContainer.visible + ", imageLayer = " + imageLayer.visible + ", flvPB = " + flvPB.visible);
currentTcBab = editList[curInst].eIn * 1000;
dispatchEvent(new EditEvent(EditEvent.EDIT_UPDATETC, currentTcBab));
if(tcLabel) tcLabel.text = "[" + convertTC(currentTcBab, false) + "]";
}
}
else{
if(metas.length>0 && allowFlvPB()){ flvPB.pause(); }
babRunning = false;
}}
//if(Global.flv2==name) trace(name + " playBabInst 2 textLayer = " + textLayer.visible + ", mcContainer = " + mcContainer.visible + ", imageLayer = " + imageLayer.visible + ", flvPB = " + flvPB.visible);
}
private function drawBgCtn(col:uint):void{
var g:Graphics = bgMcCtn.graphics;
g.clear();
g.beginFill(col);
g.drawRect(0,0,wMin,hMin-((editSkin) ? 39 : 0));
g.endFill();
}
//
// Empties the edit arrays
//
public function empty():void{
editList = [];
mediaList = [];
babRunning = false;
curInst = -1;
}
//
// Get luminance from RGB. Luminance is the sum between the 3 values from 0 to 255 of red, green and blue.
//
private function RGB2L(c:uint):uint{
var r:uint = (c >> 16) & 0xFF;
var g:uint = (c >> 8) & 0xFF;
var b:uint = c & 0xFF;
var l:uint = r + g + b;
return l;
}
public function get volume():Number{ return flvPB.volume;}
private function convertTC(monTC:Number, tenth:Boolean=true) : String {
// We do this 2 divisions to keep only 1 number after "."
monTC = Math.floor(monTC/100);
monTC = (tenth==true) ? monTC/10 : Math.floor(monTC/10);
var MaHeu:Number = Math.floor(monTC/3600);
var MaMin:Number = Math.floor(monTC/60)-(60*MaHeu);
var MaSec:Number = ((monTC*10)%600) / 10; // We have to do that because there is an incomprehensible probleme with %60
var MonTime:String = ((MaHeu<10)?"0":"") + MaHeu + ":" + ((MaMin<10)?"0":"") + MaMin + ":" + ((MaSec<10)?"0":"") + MaSec;
return MonTime;
}
//
// External Interface functions
//
public function playVideo(e:*=null):Boolean{
if(metas.length>0 && allowFlvPB()){
flvPB.play();
if(editSkin) editSkin.isPlaying = true;
}
debugOutput("playVideo e = " + e);
return true;
}
public function pauseVideo(e:*=null):Boolean{
if(metas.length>0 && allowFlvPB()){
flvPB.pause();
if(editSkin) editSkin.isPlaying = false;
}
debugOutput("pauseVideo e = " + e);
return true;
}
public function getCurrentTime(e:*=null):Number{
// We send in seconds
var tc:Number = Math.floor(currentTcBab) / 1000;
debugOutput("getCurrentTime e = " + tc);
return tc;
}
public function seekTo(e:*=null):Boolean{
// e is a number of seconds. we search wich instruction is relative to this timecode
try{
e = Number(e);
}
catch(er:*){
debugOutput("seekToH TIMECODE NOT VALID");
return false;
}
var nbInst:uint = editList.length;
var iToPlay:int = -1;
for(var i:uint=0;i<nbInst;i++){
if(i<(nbInst-1)){
if(editList[i].eIn<=e && e<editList[i+1].eIn){
iToPlay = i;
}
}
else if(editList[i].eIn<=e && e<=editList[i].eOut){
iToPlay = i;
}
}
if(iToPlay>=0){
// We search the diffence of timecode between the wanted timecode et the instruction's beginning
playBabInst(iToPlay, true, (editList[iToPlay].tIn + (e - editList[iToPlay].eIn)));
debugOutput("seekToH e = " + e + " FOUND i = " + iToPlay + ", realTC = " + ((editList[iToPlay].tIn + (e - editList[iToPlay].eIn)) * 1000));
}
else{
debugOutput("seekToH e = " + e + " NOT FOUND");
}
return true;
}
public function isMuted(e:*=null):Boolean{
var b:Boolean = (flvPB.volume==0);
debugOutput("isMuted e = " + b);
return b;
}
public function mute(e:*=null):Boolean{
debugOutput("mute e = " + e);
flvPB.volume = 0;
lastVolume = flvPB.volume = 0;
return true;
}
public function unMute(e:*=null):Boolean{
debugOutput("unMute e = " + e);
flvPB.volume = 0;
lastVolume = flvPB.volume = 1;
return true;
}
public function getVolume(e:*=null):Number{
debugOutput("getVolume e = " + volume);
return volume;
}
public function setVolume(e:*=null):Boolean{
flvPB.volume = 0;
lastVolume = flvPB.volume = e;
debugOutput("setVolume e = " + e);
return true;
}
public function playInstruction(e:*=null):Boolean{
var i:uint = uint(e) - 1;
playBabInst(i);
debugOutput("playInstruction e = " + e);
return true;
}
private function debugOutput(s:String):void{
if(debugText) debugText.text = "bab " + s;
}
private function onCCC(e:*):void{
seekTo("51");
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/Image.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player
{
import flash.display.Sprite;
public class Image extends Sprite
{
public var source:*;
public function Image()
{
super();
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/bab/player/events/EditEvent.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package bab.player.events
{
import flash.events.Event;
public class EditEvent extends Event
{
public static var EDIT_PLAYPAUSE:String = "EditPlayPause";
public static var EDIT_BACK:String = "EditBack";
public static var EDIT_FORWARD:String = "EditForward";
public static var EDIT_SOUNDUPDATE:String = "EditSoundUpdate";
public static var EDIT_UPDATETC:String = "EditUpdateTC";
public static var EDIT_CHANGEINSTRUCTION:String = "EditChangeInstruction";
public var volume:Number; // between 0 and 100;
public var inst:Number; // number of instruction in an edit from 0 to ...
public var tc:Number; // bab-edit's timecode
public function EditEvent(typePar:String, nb:Number=100, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(typePar, bubbles, cancelable);
if(typePar==EDIT_SOUNDUPDATE) volume = nb;
else if(typePar==EDIT_UPDATETC) tc = nb;
else if(typePar==EDIT_CHANGEINSTRUCTION) inst = nb;
}
}
}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/nl/inlet42/data/subtitles/SubTitleData.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,25 @@
+package nl.inlet42.data.subtitles {
+
+ public class SubTitleData {
+ public var text : String;
+ public var start : Number;
+ public var duration : Number;
+ public var end : Number;
+ public var startStr : String;
+ public var endStr : String;
+
+ public function SubTitleData(inText : String = "",inStart : Number = 0,inDuration : Number = 0,inEnd : Number = 0,inStartStr : String = "",inEndStr : String = "") {
+ text = inText;
+ start = inStart;
+ duration = inDuration;
+ end = inEnd;
+ startStr = inStartStr;
+ endStr = inEndStr;
+ }
+
+ public function toString() : void {
+ //trace("nl.inlet42.data.subtitles.SubTitleData " + );
+ trace("SubTitleData " + start + ", " + duration + ", " + end + ", " + text);
+ }
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/nl/inlet42/data/subtitles/SubtitleParser.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,83 @@
+package nl.inlet42.data.subtitles {
+
+ /**
+ * @author Jankees.van.Woezik
+ */
+ public class SubtitleParser {
+ public static function parseSRT(data : String) : Array {
+ var result : Array = new Array();
+
+ var lines : Array;
+ var translation : SubTitleData;
+
+ var blocks : Array = data.split(/^[0-9]+$/gm);
+ for each (var block : String in blocks) {
+ translation = new SubTitleData();
+ lines = block.split(/[\r\n]+/);
+ for each (var line : String in lines) {
+ //all lines in a translation block
+ if(trim(line) != "") {
+ if(line.match("-->")) {
+ //timecodes line
+ var timecodes : Array = line.split(/[ ]+-->[ ]+/gm);
+ if(timecodes.length != 2) {
+ trace("Translation error, something wrong with the start or end time");
+ } else {
+ translation.start = stringToSeconds(timecodes[0]);
+ translation.end = stringToSeconds(timecodes[1]);
+ translation.startStr = timecodes[0].replace(",",".");
+ translation.endStr = timecodes[1].replace(",",".");
+ translation.duration = translation.end - translation.start;
+ if(translation.duration < 0) {
+ trace("Translation error, something wrong with the start or end time");
+ }
+ }
+ } else {
+ //translation line
+ if(translation.text.length != 0) line = "\n" + trim(line);
+ translation.text += line;
+ }
+ }
+ }
+ result.push(translation);
+ }
+ return result;
+ }
+
+ public static function trim(p_string : String) : String {
+ if (p_string == null) {
+ return '';
+ }
+ return p_string.replace(/^\s+|\s+$/g, '');
+ }
+
+ /**
+ * Convert a string to seconds, with these formats supported:
+ * 00:03:00.1 / 03:00.1 / 180.1s / 3.2m / 3.2h / 00:01:53,800
+ *
+ * Special thanks to Thijs Broerse of Media Monks!
+ *
+ **/
+ public static function stringToSeconds(string : String) : Number {
+ var arr : Array = string.split(':');
+ var sec : Number = 0;
+ if (string.substr(-1) == 's') {
+ sec = Number(string.substr(0, string.length - 1));
+ }else if (string.substr(-1) == 'm') {
+ sec = Number(string.substr(0, string.length - 1)) * 60;
+ }else if(string.substr(-1) == 'h') {
+ sec = Number(string.substr(0, string.length - 1)) * 3600;
+ }else if(arr.length > 1) {
+ if(arr[2] && String(arr[2]).indexOf(',') != -1) arr[2] = String(arr[2]).replace(/\,/, ".");
+ sec = Number(arr[arr.length - 1]);
+ sec += Number(arr[arr.length - 2]) * 60;
+ if(arr.length == 3) {
+ sec += Number(arr[arr.length - 3]) * 3600;
+ }
+ } else {
+ sec = Number(string);
+ }
+ return sec;
+ }
+ }
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt.as Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+package {
import flash.display.MovieClip;
import flash.display.StageScaleMode;
import bab.XMLInOut;
import bab.player.FlvPlayer;
import bab.player.events.EditEvent;
import flash.text.TextField;
import flash.display.StageAlign;
import flash.external.*;
import flash.system.Security;
import flash.events.Event;
import fl.video.VideoEvent;
import fl.video.VideoState;
public class player_bab_ldt extends MovieClip {
private var flashVars:Object;
private var xio:XMLInOut;
private var flvP1:FlvPlayer;
private var ar:Array;
private var t:TextField;
public function player_bab_ldt() {
// constructor code
Security.allowDomain("*");
Security.allowInsecureDomain("*");
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
// Fuck CS5 "new feature from built-in preloader" : loaderInfo.parameters is from parent.parent.loaderInfo.parameter
flashVars = new Object();
if(parent!=null){
if (parent.parent!=null) flashVars = parent.parent.loaderInfo.parameters;
else flashVars = parent.loaderInfo.parameters;
}
else flashVars = loaderInfo.parameters;
for(var param:Object in flashVars){
trace(" flashVars " + param + " : " + flashVars[param.toString()]);
}
t = new TextField();
t.text = "init s.w = " + stage.stageWidth + ", s.h = " + stage.stageHeight + ", ei.a = " + ExternalInterface.available;
t.textColor = 0xBBBBBB;
t.width = stage.stageWidth;
addChild(t);
//var urlData:String = "../../test/integration/fichiers_bab/yeelen_bab.ldt";
var urlData:String = "";
if(flashVars["urlData"]!="" && flashVars["urlData"]!=null){
urlData = flashVars["urlData"];
}
if(urlData!="" && urlData!=null){
xio = new XMLInOut(this, urlData);
}
else{
t.text = "urlData INVALID";
}
}
public function youCanStart():void{
trace("youCanStart");
ar = xio.getEditList1();
trace("youCanStart 2 = " + ar.length);
//var urlSkin:String = "../../test/integration/fichiers_bab/SkinBoutABout.swf";
var urlSkin:String = "";
if(flashVars["urlSkin"]!="" && flashVars["urlSkin"]!=null){
urlSkin = flashVars["urlSkin"];
}
flvP1 = new FlvPlayer(stage.stageWidth, stage.stageHeight, urlSkin, t);
if(urlSkin!=null && urlSkin!=""){
flvP1.addEventListener(EditEvent.EDIT_CHANGEINSTRUCTION, youCanStartBab);
}
flvP1.addEventListener(EditEvent.EDIT_UPDATETC, onBabVideoProgress);
flvP1.addEventListener(VideoEvent.STATE_CHANGE, onBabStateChange);
addChild(flvP1);
// External interface management
try{
ExternalInterface.addCallback("playVideo", flvP1.playVideo);
ExternalInterface.addCallback("pauseVideo", flvP1.pauseVideo);
ExternalInterface.addCallback("getCurrentTime", flvP1.getCurrentTime);
ExternalInterface.addCallback("seekTo", flvP1.seekTo);
ExternalInterface.addCallback("isMuted", flvP1.isMuted);
ExternalInterface.addCallback("mute", flvP1.mute);
ExternalInterface.addCallback("unMute", flvP1.unMute);
ExternalInterface.addCallback("getVolume", flvP1.getVolume);
ExternalInterface.addCallback("setVolume", flvP1.setVolume);
ExternalInterface.addCallback("playInstruction", flvP1.playInstruction);
}
catch(e:*){
t.text = "ExternalInterface error catch e = " + e;
t.textColor = 0xFFFFFF;
}
ExternalInterface.call("onBabPlayerReady","cool");
if(urlSkin==null || urlSkin==""){
youCanStartBab();
}
}
public function youCanStartBab(e:*=null):void{
flvP1.removeEventListener(EditEvent.EDIT_CHANGEINSTRUCTION, youCanStartBab);
flvP1.getEditList(ar[0], ar[1]);
}
private function onBabVideoProgress(e:EditEvent):void{
// e.tc arrives in milliseconds
ExternalInterface.call("onBabVideoProgress",{mediaTime:(Math.floor(e.tc)/1000)});
}
private function onBabStateChange(e:VideoEvent):void{
var s:Number;
// Embeddable adaptation : we limit the number of states
// States can be : loading, stopped, seeking (3), paused (2), buffering, playing (1).
switch(e.state){
case VideoState.SEEKING:
s = 3;
break;
case VideoState.PAUSED:
s = 2;
break;
case VideoState.PLAYING:
s = 1;
break;
}
if(!isNaN(s)){
ExternalInterface.call("onBabStateChange",s);
}
}
}
}
\ No newline at end of file
Binary file assets/player_bab_ldt/player_bab_ldt.swf has changed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/DOMDocument.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1239 @@
+<DOMDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" currentTimeline="1" xflVersion="2.0" creatorInfo="Adobe Flash Professional CS5" platform="Macintosh" versionInfo="Saved by Adobe Flash Macintosh 11.0 build 489" majorVersion="11" buildNumber="489" nextSceneIdentifier="2" playOptionsPlayLoop="false" playOptionsPlayPages="false" playOptionsPlayFrameActions="false" hasAccessibleData="true">
+ <folders>
+ <DOMFolderItem name="Component Assets" itemID="44e488a0-000016d6"/>
+ <DOMFolderItem name="Component Assets/_private" itemID="4573a4bc-000003c6"/>
+ <DOMFolderItem name="Component Assets/ProgressBarSkins" itemID="44c91c22-00000249"/>
+ </folders>
+ <media>
+ <DOMCompiledClipItem name="Component Assets/_private/ComponentShim" itemID="4b858ac3-000002a3" linkageExportForAS="true" linkageClassName="fl.core.ComponentShim" sourceLastImported="1267043011" displayAsComponent="false" customIconID="0" actionscriptClass="fl.core.ComponentShim" swfScmHRef="a4evqyd4nn.swf" swfScmSourceFilename="C:\Documents and Settings\jkamerer\Local Settings\Application Data\Adobe\Flash CS5\en_US\Configuration\TMPa3zn4yd4n3..swf" persistLivePreview11="true" livePreview11ScmHRef="a4evqyd4nn1.swf" livePreview11ScmSourceFilename="C:\Documents and Settings\jkamerer\Local Settings\Application Data\Adobe\Flash CS5\en_US\Configuration\TMPa3zn4yd4n3..swf" editFrameIndex="1" requiredMinimumPlayerVersion="0" requiredMinimumASVersion="0" parametersAreLocked="true" swcPath="Component Assets/_private/ComponentShim.xml" rootSymbolLinkageID="fl.core.ComponentShim" playerVersion="9" actionscriptVersion="3" hashKey="kfuaIecnz3BPM/B8Awo4b.">
+ <classProperties><![CDATA[<component id="fl/core/ComponentShim" class="fl.core.ComponentShim" modified="1267043003888">
+<movieBounds xmin="0" xmax="0" ymin="0" ymax="0" />
+<classDefs>
+ <classDef id="fl.core.AccessibilityShim"/>
+ <classDef id="fl.controls.CheckBox"/>
+ <classDef id="fl.controls.LabelButton"/>
+ <classDef id="fl.controls.List"/>
+ <classDef id="fl.controls.ComboBox"/>
+ <classDef id="fl.controls.ProgressBarDirection"/>
+ <classDef id="fl.data.SimpleCollectionItem"/>
+ <classDef id="fl.controls.TextArea"/>
+ <classDef id="fl.controls.Slider"/>
+ <classDef id="fl.events.DataChangeEvent"/>
+ <classDef id="fl.accessibility.ComboBoxAccImpl"/>
+ <classDef id="fl.events.DataChangeType"/>
+ <classDef id="fl.accessibility.TileListAccImpl"/>
+ <classDef id="fl.accessibility.ButtonAccImpl"/>
+ <classDef id="fl.controls.BaseButton"/>
+ <classDef id="fl.core.UIComponent"/>
+ <classDef id="fl.controls.DataGrid"/>
+ <classDef id="fl.containers.BaseScrollPane"/>
+ <classDef id="fl.livepreview.LivePreviewParent"/>
+ <classDef id="fl.controls.Label"/>
+ <classDef id="fl.managers.IFocusManagerComponent"/>
+ <classDef id="fl.controls.UIScrollBar"/>
+ <classDef id="fl.controls.listClasses.ICellRenderer"/>
+ <classDef id="fl.controls.dataGridClasses.DataGridCellEditor"/>
+ <classDef id="fl.controls.ColorPicker"/>
+ <classDef id="fl.managers.FocusManager"/>
+ <classDef id="fl.events.DataGridEventReason"/>
+ <classDef id="fl.events.SliderEvent"/>
+ <classDef id="fl.events.SliderEventClickTarget"/>
+ <classDef id="fl.controls.progressBarClasses.IndeterminateBar"/>
+ <classDef id="fl.controls.listClasses.ListData"/>
+ <classDef id="fl.core.InvalidationType"/>
+ <classDef id="fl.controls.RadioButtonGroup"/>
+ <classDef id="fl.controls.NumericStepper"/>
+ <classDef id="fl.accessibility.LabelButtonAccImpl"/>
+ <classDef id="fl.containers.UILoader"/>
+ <classDef id="fl.events.ColorPickerEvent"/>
+ <classDef id="fl.controls.ButtonLabelPlacement"/>
+ <classDef id="fl.accessibility.CheckBoxAccImpl"/>
+ <classDef id="fl.managers.StyleManager"/>
+ <classDef id="fl.controls.TileList"/>
+ <classDef id="fl.controls.RadioButton"/>
+ <classDef id="fl.containers.ScrollPane"/>
+ <classDef id="fl.controls.listClasses.TileListData"/>
+ <classDef id="fl.events.InteractionInputType"/>
+ <classDef id="fl.controls.Button"/>
+ <classDef id="fl.core.ComponentShim"/>
+ <classDef id="fl.accessibility.UIComponentAccImpl"/>
+ <classDef id="fl.controls.SelectableList"/>
+ <classDef id="fl.events.ComponentEvent"/>
+ <classDef id="fl.accessibility.RadioButtonAccImpl"/>
+ <classDef id="fl.controls.listClasses.CellRenderer"/>
+ <classDef id="fl.managers.IFocusManagerGroup"/>
+ <classDef id="fl.controls.ScrollPolicy"/>
+ <classDef id="fl.controls.ScrollBar"/>
+ <classDef id="fl.controls.ProgressBar"/>
+ <classDef id="fl.controls.listClasses.ImageCell"/>
+ <classDef id="fl.managers.IFocusManager"/>
+ <classDef id="fl.controls.ProgressBarMode"/>
+ <classDef id="fl.accessibility.SelectableListAccImpl"/>
+ <classDef id="fl.controls.TextInput"/>
+ <classDef id="fl.events.ListEvent"/>
+ <classDef id="fl.accessibility.AccImpl"/>
+ <classDef id="fl.accessibility.DataGridAccImpl"/>
+ <classDef id="fl.controls.dataGridClasses.DataGridColumn"/>
+ <classDef id="fl.events.ScrollEvent"/>
+ <classDef id="fl.events.DataGridEvent"/>
+ <classDef id="fl.data.TileListCollectionItem"/>
+ <classDef id="fl.data.DataProvider"/>
+ <classDef id="fl.accessibility.ListAccImpl"/>
+ <classDef id="fl.controls.dataGridClasses.HeaderRenderer"/>
+ <classDef id="fl.controls.ScrollBarDirection"/>
+ <classDef id="fl.controls.SliderDirection"/>
+</classDefs>
+<class id="fl.core.ComponentShim" >
+ <method id="ComponentShim" isConstructor="true" isProperty="false">
+ </method>
+</class></component>
+]]></classProperties>
+ <customIcon>
+ <CustomIcon rowByteCount="72" colorDepth="32" width="18" height="18" frameRight="360" frameBottom="360" isTransparent="true" href="a4ew6yd4nn.dat"/>
+ </customIcon>
+ <SwcItem name="fl.core.ComponentShim" version="1267043003" isTopLevel="true"/>
+ </DOMCompiledClipItem>
+ <DOMCompiledClipItem name="FLVPlayback 2.5" itemID="4faa3474-0000004b" linkageExportForAS="true" linkageClassName="fl.video.FLVPlayback" sourceLastImported="1268346527" sourcePlatform="macintosh" tooltip="FLVPlayback component 2.5" customIconID="0" actionscriptClass="fl.video.FLVPlayback" livePreviewScmHRef="50KJV3R4CP.swf" livePreviewScmSourceFilename="/Users/tc/Library/Application Support/Adobe/Flash CS5/fr_FR/Configuration/TMP50KJV3R4CP..swf" persistLivePreview11="true" livePreview11ScmHRef="50KJW3R4CP.swf" livePreview11ScmSourceFilename="/Users/tc/Library/Application Support/Adobe/Flash CS5/fr_FR/Configuration/TMP50KJT3R4CP..swf" editFrameIndex="1" requiredMinimumPlayerVersion="0" requiredMinimumASVersion="0" parametersAreLocked="true" swcPath="FLVPlayback 2.5.xml" rootSymbolLinkageID="fl.video.FLVPlayback" movieRectRight="6401" movieRectBottom="4800" playerVersion="10" actionscriptVersion="3" hashKey="LWJ4qfDKC.LqmxYv0myxv1">
+ <parametersAsXML><![CDATA[ <property id="align">
+ <Inspectable name="align" variable="align" category="" verbose="0" defaultValue="center" enumeration="center,top,left,bottom,right,topLeft,topRight,bottomLeft,bottomRight" type="List"/>
+ </property>
+ <property id="autoPlay">
+ <Inspectable name="autoPlay" variable="autoPlay" category="" verbose="0" defaultValue="true" type="Boolean"/>
+ </property>
+ <property id="cuePoints">
+ <Inspectable name="cuePoints" variable="cuePoints" category="" verbose="0" defaultValue="" type="Video Cue Points"/>
+ </property>
+ <property id="dvrFixedDuration">
+ <Inspectable name="dvrFixedDuration" variable="dvrFixedDuration" category="" verbose="0" defaultValue="false" type="Boolean"/>
+ </property>
+ <property id="dvrIncrement">
+ <Inspectable name="dvrIncrement" variable="dvrIncrement" category="" verbose="0" defaultValue="1800" type="Number"/>
+ </property>
+ <property id="dvrIncrementVariance">
+ <Inspectable name="dvrIncrementVariance" variable="dvrIncrementVariance" category="" verbose="0" defaultValue="300" type="Number"/>
+ </property>
+ <property id="dvrSnapToLive">
+ <Inspectable name="dvrSnapToLive" variable="dvrSnapToLive" category="" verbose="0" defaultValue="true" type="Boolean"/>
+ </property>
+ <property id="isDVR">
+ <Inspectable name="isDVR" variable="isDVR" category="" verbose="0" defaultValue="false" type="Boolean"/>
+ </property>
+ <property id="isLive">
+ <Inspectable name="isLive" variable="isLive" category="" verbose="0" defaultValue="false" type="Boolean"/>
+ </property>
+ <property id="preview">
+ <Inspectable name="preview" variable="preview" category="" verbose="0" defaultValue="" type="Video Preview"/>
+ </property>
+ <property id="scaleMode">
+ <Inspectable name="scaleMode" variable="scaleMode" category="" verbose="0" defaultValue="maintainAspectRatio" enumeration="maintainAspectRatio,noScale,exactFit" type="List"/>
+ </property>
+ <property id="skin">
+ <Inspectable name="skin" variable="skin" category="" verbose="0" defaultValue="" type="Video Skin"/>
+ </property>
+ <property id="skinAutoHide">
+ <Inspectable name="skinAutoHide" variable="skinAutoHide" category="" verbose="0" defaultValue="false" type="Boolean"/>
+ </property>
+ <property id="skinBackgroundAlpha">
+ <Inspectable name="skinBackgroundAlpha" variable="skinBackgroundAlpha" category="" verbose="0" defaultValue="0.85" type="Number"/>
+ </property>
+ <property id="skinBackgroundColor">
+ <Inspectable name="skinBackgroundColor" variable="skinBackgroundColor" category="" verbose="0" defaultValue="#47ABCB" type="Color"/>
+ </property>
+ <property id="source">
+ <Inspectable name="source" variable="source" category="" verbose="0" defaultValue="" type="Video Content Path"/>
+ </property>
+ <property id="volume">
+ <Inspectable name="volume" variable="volume" category="" verbose="0" defaultValue="1" type="Number"/>
+ </property>
+]]></parametersAsXML>
+ <classProperties><![CDATA[<component id="fl/video/FLVPlayback" class="fl.video.FLVPlayback" livePreviewClass="FLVPlaybackStageLivePreview" modified="1268346527643">
+<movieBounds xmin="0" xmax="6400" ymin="0" ymax="4800" />
+<classDefs>
+ <classDef id="fl.video.CuePointType"/>
+ <classDef id="fl.video.ParseResults"/>
+ <classDef id="fl.video.VideoPlayerState"/>
+ <classDef id="fl.video.NCManagerDynamicStream"/>
+ <classDef id="fl.video.NCManagerNativeShim"/>
+ <classDef id="fl.video.FMSCapabilities"/>
+ <classDef id="fl.video.ConnectClientDynamicStream"/>
+ <classDef id="fl.video.VideoError"/>
+ <classDef id="fl.video.VideoEvent"/>
+ <classDef id="fl.video.AutoLayoutEvent"/>
+ <classDef id="fl.video.SkinErrorEvent"/>
+ <classDef id="fl.video.VolumeBarAccImpl"/>
+ <classDef id="fl.video.FPADManager"/>
+ <classDef id="fl.video.SeekBarAccImpl"/>
+ <classDef id="fl.video.ReconnectClient"/>
+ <classDef id="fl.video.VideoScaleMode"/>
+ <classDef id="fl.video.ConnectClient"/>
+ <classDef id="fl.livepreview.LivePreviewParent"/>
+ <classDef id="fl.video.NCManagerNative"/>
+ <classDef id="fl.video.DynamicStreamItem"/>
+ <classDef id="fl.video.VideoPlayerClient"/>
+ <classDef id="fl.video.LayoutEvent"/>
+ <classDef id="fl.video.Icon"/>
+ <classDef id="fl.video.DynamicStream"/>
+ <classDef id="fl.video.ControlData"/>
+ <classDef id="fl.video.FPMediaCapabilities"/>
+ <classDef id="fl.video.VideoState"/>
+ <classDef id="fl.video.QueuedCommand"/>
+ <classDef id="fl.video.VideoProgressEvent"/>
+ <classDef id="fl.video.VideoAlign"/>
+ <classDef id="fl.video.CuePointManager"/>
+ <classDef id="fl.video.IVPEvent"/>
+ <classDef id="fl.video.VideoPlayer"/>
+ <classDef id="fl.video.UIManager"/>
+ <classDef id="fl.video.ConnectClientNative"/>
+ <classDef id="fl.video.INCManager"/>
+ <classDef id="fl.video.SoundEvent"/>
+ <classDef id="fl.video.FLVPlayback"/>
+ <classDef id="fl.video.MetadataEvent"/>
+ <classDef id="fl.video.SMILManager"/>
+ <classDef id="fl.video.NCManager"/>
+ <classDef id="fl.video.DVRManager"/>
+</classDefs>
+<class id="fl.video.FLVPlayback" >
+ <LivePreviewVersion param1="1" />
+ <RequiresDataBinding param1="true" />
+ <minimumPlayerVersion param1="10" />
+ <IconFile param1="FLVPlayback.png" />
+ <Event param1="soundUpdate" type="fl.video.SoundEvent" />
+ <Event param1="stoppedStateEntered" type="fl.video.VideoEvent" />
+ <Event param1="unsupportedPlayerVersion" type="fl.video.VideoEvent" />
+ <Event param1="stateChange" type="fl.video.VideoEvent" />
+ <Event param1="skinLoaded" type="fl.video.VideoEvent" />
+ <Event param1="skinError" type="fl.video.SkinErrorEvent" />
+ <Event param1="seeked" type="fl.video.VideoEvent" />
+ <Event param1="scrubStart" type="fl.video.VideoEvent" />
+ <Event param1="scrubFinish" type="fl.video.VideoEvent" />
+ <Event param1="rewind" type="fl.video.VideoEvent" />
+ <Event param1="layout" type="fl.video.LayoutEvent" />
+ <Event param1="ready" type="fl.video.VideoEvent" />
+ <Event param1="progress" type="fl.video.VideoProgressEvent" />
+ <Event param1="playheadUpdate" type="fl.video.VideoEvent" />
+ <Event param1="playingStateEntered" type="fl.video.VideoEvent" />
+ <Event param1="pausedStateEntered" type="fl.video.VideoEvent" />
+ <Event param1="metadataReceived" type="fl.video.MetadataEvent" />
+ <Event param1="fastForward" type="fl.video.VideoEvent" />
+ <Event param1="cuePoint" type="fl.video.MetadataEvent" />
+ <Event param1="complete" type="fl.video.VideoEvent" />
+ <Event param1="close" type="fl.video.VideoEvent" />
+ <Event param1="bufferingStateEntered" type="fl.video.VideoEvent" />
+ <Event param1="autoRewound" type="fl.video.VideoEvent" />
+ <Event param1="autoLayout" type="fl.video.AutoLayoutEvent" />
+ <__go_to_ctor_definition_help file="C:\devsrc\flashfarm\media_frameworks\branches\FLVPlayback_AS3_DVR\FLVPlayback\..\fl\video\FLVPlayback.as" pos="31557" />
+ <method id="playheadPercentage" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="activeVideoPlayerIndex" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="align" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable type="List" enumeration="center,top,left,bottom,right,topLeft,topRight,bottomLeft,bottomRight" defaultValue="center" />
+ </method>
+ <method id="autoPlay" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" />
+ </method>
+ <method id="autoRewind" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="bitrate" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="buffering" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="bufferingBar" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="bufferingBarHidesAndDisablesOthers" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="backButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="bufferTime" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="bytesLoaded" returnType="uint" isProperty="true" permissions="readonly">
+ </method>
+ <method id="bytesTotal" returnType="uint" isProperty="true" permissions="readonly">
+ </method>
+ <method id="source" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable type="Video Content Path" />
+ </method>
+ <method id="dvrIncrement" returnType="Number" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="1800" />
+ </method>
+ <method id="dvrIncrementVariance" returnType="Number" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="300" />
+ </method>
+ <method id="dvrFixedDuration" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="false" />
+ </method>
+ <method id="dvrSnapToLive" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" />
+ </method>
+ <method id="enableLiveCast" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="forwardButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="fullScreenBackgroundColor" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="fullScreenButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="fullScreenSkinDelay" returnType="int" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="fullScreenTakeOver" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="height" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="idleTimeout" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="isDVR" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="false" />
+ </method>
+ <method id="isRTMP" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="isLive" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="false" />
+ </method>
+ <method id="metadata" returnType="Object" isProperty="true" permissions="readonly">
+ </method>
+ <method id="metadataLoaded" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="muteButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="ncMgr" returnType="INCManager" isProperty="true" permissions="readonly">
+ </method>
+ <method id="pauseButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="paused" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="playButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="playheadTime" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="playheadUpdateInterval" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="playing" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="playPauseButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="preferredHeight" returnType="int" isProperty="true" permissions="readonly">
+ </method>
+ <method id="preferredWidth" returnType="int" isProperty="true" permissions="readonly">
+ </method>
+ <method id="progressInterval" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="registrationX" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="registrationY" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="registrationWidth" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="registrationHeight" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scaleMode" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable type="List" enumeration="maintainAspectRatio,noScale,exactFit" defaultValue="maintainAspectRatio" />
+ </method>
+ <method id="scaleX" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scaleY" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scrubbing" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="seekBar" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="seekBarInterval" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="seekBarScrubTolerance" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="seekToPrevOffset" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skin" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable type="Video Skin" />
+ </method>
+ <method id="skinAutoHide" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="false" />
+ </method>
+ <method id="skinBackgroundAlpha" returnType="Number" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="0.85" />
+ </method>
+ <method id="skinBackgroundColor" returnType="uint" isProperty="true" permissions="readwrite">
+ <Inspectable type="Color" defaultValue="#47ABCB" />
+ </method>
+ <method id="skinFadeTime" returnType="int" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skinScaleMaximum" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="soundTransform" returnType="SoundTransform" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="state" returnType="String" isProperty="true" permissions="readonly">
+ </method>
+ <method id="stateResponsive" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="stopButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="stopped" returnType="Boolean" isProperty="true" permissions="readonly">
+ </method>
+ <method id="totalTime" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="visibleVideoPlayerIndex" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="volume" returnType="Number" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="1" />
+ </method>
+ <method id="volumeBar" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="volumeBarInterval" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="volumeBarScrubTolerance" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="width" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="x" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="y" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="endTabIndex" returnType="int" isProperty="true" permissions="readonly">
+ </method>
+ <method id="startTabIndex" returnType="int" isProperty="true" permissions="readonly">
+ </method>
+ <method id="preview" returnType="String" isProperty="true" permissions="writeonly">
+ <Inspectable type="Video Preview" />
+ </method>
+ <method id="componentInspectorSetting" returnType="Boolean" isProperty="true" permissions="writeonly">
+ </method>
+ <method id="cuePoints" returnType="Array" isProperty="true" permissions="writeonly">
+ <Inspectable type="Video Cue Points" />
+ </method>
+ <method id="boundingBox_mc" returnType="DisplayObject" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="setSize" returnType="void" isProperty="false">
+ </method>
+ <method id="setScale" returnType="void" isProperty="false">
+ </method>
+ <method id="load" returnType="void" isProperty="false">
+ </method>
+ <method id="play" returnType="void" isProperty="false">
+ </method>
+ <method id="play2" returnType="void" isProperty="false">
+ </method>
+ <method id="playWhenEnoughDownloaded" returnType="void" isProperty="false">
+ </method>
+ <method id="pause" returnType="void" isProperty="false">
+ </method>
+ <method id="stop" returnType="void" isProperty="false">
+ </method>
+ <method id="seek" returnType="void" isProperty="false">
+ </method>
+ <method id="seekSeconds" returnType="void" isProperty="false">
+ </method>
+ <method id="seekPercent" returnType="void" isProperty="false">
+ </method>
+ <method id="seekToNavCuePoint" returnType="void" isProperty="false">
+ </method>
+ <method id="seekToNextNavCuePoint" returnType="void" isProperty="false">
+ </method>
+ <method id="seekToPrevNavCuePoint" returnType="void" isProperty="false">
+ </method>
+ <method id="addASCuePoint" returnType="Object" isProperty="false">
+ </method>
+ <method id="removeASCuePoint" returnType="Object" isProperty="false">
+ </method>
+ <method id="findCuePoint" returnType="Object" isProperty="false">
+ </method>
+ <method id="findNearestCuePoint" returnType="Object" isProperty="false">
+ </method>
+ <method id="findNextCuePointWithName" returnType="Object" isProperty="false">
+ </method>
+ <method id="setFLVCuePointEnabled" returnType="Number" isProperty="false">
+ </method>
+ <method id="isFLVCuePointEnabled" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="bringVideoPlayerToFront" returnType="void" isProperty="false">
+ </method>
+ <method id="getVideoPlayer" returnType="VideoPlayer" isProperty="false">
+ </method>
+ <method id="closeVideoPlayer" returnType="void" isProperty="false">
+ </method>
+ <method id="enterFullScreenDisplayState" returnType="void" isProperty="false">
+ </method>
+ <method id="assignTabIndexes" returnType="int" isProperty="false">
+ </method>
+ <method id="FLVPlayback" isConstructor="true" isProperty="false">
+ </method>
+</class><livePreview class="FLVPlaybackStageLivePreview">
+<movieBounds xmin="0" xmax="6401" ymin="0" ymax="4800" />
+<classDefs>
+ <classDef id="fl.livepreview.IEditContextV1"/>
+ <classDef id="fl.livepreview.IPreviewInterface"/>
+ <classDef id="fl.video.CuePointType"/>
+ <classDef id="fl.video.VideoPlayerState"/>
+ <classDef id="fl.video.DynamicStreamItem"/>
+ <classDef id="fl.video.ControlData"/>
+ <classDef id="fl.video.CuePointManager"/>
+ <classDef id="fl.video.UIManager"/>
+ <classDef id="fl.video.INCManager"/>
+ <classDef id="fl.video.VideoScaleMode"/>
+ <classDef id="fl.livepreview.EditContextFlags"/>
+ <classDef id="fl.video.VideoState"/>
+ <classDef id="fl.video.QueuedCommand"/>
+ <classDef id="fl.video.IVPEvent"/>
+ <classDef id="fl.video.ParseResults"/>
+ <classDef id="fl.video.FPMediaCapabilities"/>
+ <classDef id="fl.video.SMILManager"/>
+ <classDef id="fl.video.FPADManager"/>
+ <classDef id="fl.video.FMSCapabilities"/>
+ <classDef id="fl.video.VideoAlign"/>
+ <classDef id="fl.video.ConnectClient"/>
+ <classDef id="fl.video.ReconnectClient"/>
+ <classDef id="fl.video.VideoPlayerClient"/>
+ <classDef id="fl.video.LayoutEvent"/>
+ <classDef id="fl.video.SoundEvent"/>
+ <classDef id="fl.video.VolumeBarAccImpl"/>
+ <classDef id="fl.video.SeekBarAccImpl"/>
+ <classDef id="fl.livepreview.IVideoInterfaceV1"/>
+ <classDef id="fl.video.VideoError"/>
+ <classDef id="UIManagerStage"/>
+ <classDef id="fl.video.NCManager"/>
+ <classDef id="fl.video.VideoEvent"/>
+ <classDef id="fl.video.MetadataEvent"/>
+ <classDef id="fl.video.ConnectClientDynamicStream"/>
+ <classDef id="fl.video.ConnectClientNative"/>
+ <classDef id="fl.video.DVRManager"/>
+ <classDef id="fl.video.VideoProgressEvent"/>
+ <classDef id="fl.video.AutoLayoutEvent"/>
+ <classDef id="fl.video.NCManagerDynamicStream"/>
+ <classDef id="fl.video.NCManagerNative"/>
+ <classDef id="fl.video.DynamicStream"/>
+ <classDef id="fl.video.SkinErrorEvent"/>
+ <classDef id="fl.video.VideoPlayer"/>
+ <classDef id="FLVPlaybackStageLivePreview"/>
+ <classDef id="fl.stage.video.StopButtonDown"/>
+ <classDef id="fl.stage.video.StopButtonNormal"/>
+ <classDef id="fl.stage.video.StopButtonOver"/>
+ <classDef id="fl.video.FLVPlayback"/>
+ <classDef id="fl.stage.video.ComponentVersionView"/>
+ <classDef id="fl.stage.video.BackgroundBox"/>
+ <classDef id="FLVPlaybackStage"/>
+ <classDef id="fl.livepreview.LivePreviewParent"/>
+ <classDef id="fl.video.Icon"/>
+</classDefs>
+<class id="FLVPlaybackStageLivePreview" >
+ <method id="width" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="height" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="source" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="isLive" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="volume" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="align" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skinAutoHide" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scaleMode" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="autoPlay" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skin" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skinBackgroundAlpha" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="skinBackgroundColor" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="DocumentRoot" returnType="String" isProperty="true" permissions="writeonly">
+ </method>
+ <method id="FullPathSourceFromRelativePath" returnType="String" isProperty="true" permissions="writeonly">
+ </method>
+ <method id="avatar_mc" returnType="DisplayObject" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="caPreviewClass" returnType="ComponentVersionView" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="createButtonsOverlay" returnType="void" isProperty="false">
+ </method>
+ <method id="destroyButtonsOverlay" returnType="void" isProperty="false">
+ </method>
+ <method id="SetFLVplaybackPlayheadUpdateTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="initFLVplaybackPlayheadUpdateTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="stopFLVplaybackPlayheadUpdateTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="onFLVplaybackPlayheadUpdateTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="startFLVplaybackRemotePreloadBufferingTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="stopFLVplaybackRemotePreloadBufferingTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="onFLVplaybackRemotePreloadBufferingTimer" returnType="void" isProperty="false">
+ </method>
+ <method id="FileExist" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="setSize" returnType="void" isProperty="false">
+ </method>
+ <method id="draw" returnType="void" isProperty="false">
+ </method>
+ <method id="setIPreviewInterface" returnType="void" isProperty="false">
+ </method>
+ <method id="designTimeEdit" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="load" returnType="void" isProperty="false">
+ </method>
+ <method id="play" returnType="void" isProperty="false">
+ </method>
+ <method id="pause" returnType="void" isProperty="false">
+ </method>
+ <method id="stop" returnType="void" isProperty="false">
+ </method>
+ <method id="seek" returnType="void" isProperty="false">
+ </method>
+ <method id="seekVideo" returnType="void" isProperty="false">
+ </method>
+ <method id="seekSeconds" returnType="void" isProperty="false">
+ </method>
+ <method id="startSeek" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="stopSeek" returnType="void" isProperty="false">
+ </method>
+ <method id="setDocumentRoot" returnType="void" isProperty="false">
+ </method>
+ <method id="ResetSource" returnType="void" isProperty="false">
+ </method>
+ <method id="DisableSetSource" returnType="void" isProperty="false">
+ </method>
+ <method id="EnableSetSource" returnType="void" isProperty="false">
+ </method>
+ <method id="loadPreview" returnType="void" isProperty="false">
+ </method>
+ <method id="unloadPreview" returnType="void" isProperty="false">
+ </method>
+ <method id="close" returnType="void" isProperty="false">
+ </method>
+ <method id="Mute" returnType="void" isProperty="false">
+ </method>
+ <method id="grabBitmap" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="FLVPlaybackStageLivePreview" isConstructor="true" isProperty="false">
+ </method>
+</class></livePreview>
+</component>
+]]></classProperties>
+ <customIcon>
+ <CustomIcon rowByteCount="72" colorDepth="32" width="18" height="18" frameRight="360" frameBottom="360" isTransparent="true" href="50KJY3R4CP.dat"/>
+ </customIcon>
+ <SwcItem name="fl.video.FLVPlayback" version="1268346527" isTopLevel="true"/>
+ </DOMCompiledClipItem>
+ <DOMCompiledClipItem name="FLVPlaybackCaptioning" itemID="4faa3474-00000059" linkageExportForAS="true" linkageClassName="fl.video.FLVPlaybackCaptioning" sourceLastImported="1263907861" sourcePlatform="macintosh" customIconID="0" actionscriptClass="fl.video.FLVPlaybackCaptioning" livePreviewScmHRef="50O3J3R4CU.swf" livePreviewScmSourceFilename="/Users/tc/Library/Application Support/Adobe/Flash CS5/fr_FR/Configuration/TMP50O3I3R4CU..swf" persistLivePreview11="true" livePreview11ScmHRef="50O3J3R4CU2.swf" livePreview11ScmSourceFilename="/Users/tc/Library/Application Support/Adobe/Flash CS5/fr_FR/Configuration/TMP50O3H3R4CU..swf" editFrameIndex="1" requiredMinimumPlayerVersion="0" requiredMinimumASVersion="0" parametersAreLocked="true" swcPath="FLVPlaybackCaptioning.xml" rootSymbolLinkageID="fl.video.FLVPlaybackCaptioning" movieRectRight="1440" movieRectBottom="1680" playerVersion="9" actionscriptVersion="3" hashKey="u6WoxbQBPf5MDbMcy6Jt7.">
+ <parametersAsXML><![CDATA[ <property id="autoLayout">
+ <Inspectable name="autoLayout" variable="autoLayout" category="" verbose="0" defaultValue="true" type="Boolean"/>
+ </property>
+ <property id="captionTargetName">
+ <Inspectable name="captionTargetName" variable="captionTargetName" category="" verbose="0" defaultValue="auto" type="String"/>
+ </property>
+ <property id="flvPlaybackName">
+ <Inspectable name="flvPlaybackName" variable="flvPlaybackName" category="" verbose="0" defaultValue="auto" type="String"/>
+ </property>
+ <property id="showCaptions">
+ <Inspectable name="showCaptions" variable="showCaptions" category="" verbose="0" defaultValue="true" type="Boolean"/>
+ </property>
+ <property id="simpleFormatting">
+ <Inspectable name="simpleFormatting" variable="simpleFormatting" category="" verbose="0" defaultValue="false" type="Boolean"/>
+ </property>
+ <property id="source">
+ <Inspectable name="source" variable="source" category="" verbose="0" defaultValue="" type="String"/>
+ </property>
+]]></parametersAsXML>
+ <classProperties><![CDATA[<component id="fl/video/FLVPlaybackCaptioning" class="fl.video.FLVPlaybackCaptioning" modified="1263907861046">
+<movieBounds xmin="0" xmax="1440" ymin="0" ymax="1680" />
+<classDefs>
+ <classDef id="fl.livepreview.LivePreviewParent"/>
+ <classDef id="fl.video.TimedTextManager"/>
+ <classDef id="fl.video.CaptionChangeEvent"/>
+ <classDef id="fl.video.CaptionTargetEvent"/>
+ <classDef id="fl.video.FLVPlaybackCaptioning"/>
+</classDefs>
+<class id="fl.video.FLVPlaybackCaptioning" >
+ <RequiresDataBinding param1="true" />
+ <IconFile param1="FLVPlaybackCaptioning.png" />
+ <Event param1="securityError" type="flash.events.SecurityErrorEvent" />
+ <Event param1="progress" type="flash.events.ProgressEvent" />
+ <Event param1="open" type="flash.events.Event" />
+ <Event param1="ioError" type="flash.events.IOErrorEvent" />
+ <Event param1="httpStatus" type="flash.events.HTTPStatusEvent" />
+ <Event param1="complete" type="flash.events.Event" />
+ <Event param1="captionTargetCreated" type="fl.video.CaptionTargetEvent" />
+ <Event param1="captionChange" type="fl.video.CaptionChangeEvent" />
+ <method id="showCaptions" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" />
+ </method>
+ <method id="source" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="" />
+ </method>
+ <method id="autoLayout" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" />
+ </method>
+ <method id="captionTargetName" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="auto" />
+ </method>
+ <method id="captionTarget" returnType="DisplayObject" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="captionButton" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="flvPlaybackName" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="auto" />
+ </method>
+ <method id="flvPlayback" returnType="FLVPlayback" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="track" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="videoPlayerIndex" returnType="uint" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="simpleFormatting" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="false" />
+ </method>
+ <method id="getCaptionsAsTranscript" returnType="String" isProperty="false">
+ </method>
+ <method id="getCaptionsAsArray" returnType="Array" isProperty="false">
+ </method>
+ <method id="secondsToTime" returnType="String" isProperty="false">
+ </method>
+ <method id="findInCaptions" returnType="Array" isProperty="false">
+ </method>
+ <method id="FLVPlaybackCaptioning" isConstructor="true" isProperty="false">
+ </method>
+</class></component>
+]]></classProperties>
+ <customIcon>
+ <CustomIcon rowByteCount="64" colorDepth="32" width="16" height="16" frameRight="320" frameBottom="320" isTransparent="true" href="50O3K3R4CU.dat"/>
+ </customIcon>
+ <SwcItem name="fl.video.FLVPlaybackCaptioning" version="1263907861" isTopLevel="true"/>
+ </DOMCompiledClipItem>
+ </media>
+ <symbols>
+ <Include href="Component Assets/_private/Component_avatar.xml" loadImmediate="false"/>
+ <Include href="Component Assets/ProgressBarSkins/ProgressBar_barSkin.xml"/>
+ <Include href="Component Assets/ProgressBarSkins/ProgressBar_indeterminateSkin.xml"/>
+ <Include href="Component Assets/ProgressBarSkins/ProgressBar_trackSkin.xml"/>
+ <Include href="ProgressBar.xml"/>
+ </symbols>
+ <timelines>
+ <DOMTimeline name="Séquence 1">
+ <layers>
+ <DOMLayer name="Calque 1" color="#4FFF4F" current="true" isSelected="true">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements/>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timelines>
+ <swatchLists>
+ <swatchList>
+ <swatches>
+ <SolidSwatchItem/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#003300" hue="80" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#006600" hue="80" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#009900" hue="80" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#00CC00" hue="80" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00FF00" hue="80" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#330000" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#333300" hue="40" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#336600" hue="60" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#339900" hue="67" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#33CC00" hue="70" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#33FF00" hue="72" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#660000" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#663300" hue="20" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#666600" hue="40" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#669900" hue="53" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#66CC00" hue="60" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#66FF00" hue="64" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#333333" brightness="48"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#000033" hue="160" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#003333" hue="120" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#006633" hue="100" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#009933" hue="93" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#00CC33" hue="90" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00FF33" hue="88" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#330033" hue="200" saturation="239" brightness="24"/>
+ <SolidSwatchItem color="#333333" brightness="48"/>
+ <SolidSwatchItem color="#336633" hue="80" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#339933" hue="80" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#33CC33" hue="80" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#33FF33" hue="80" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#660033" hue="220" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#663333" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#666633" hue="40" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#669933" hue="60" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#66CC33" hue="67" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#66FF33" hue="70" saturation="239" brightness="144"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#666666" brightness="96"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#000066" hue="160" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#003366" hue="140" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#006666" hue="120" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#009966" hue="107" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#00CC66" hue="100" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00FF66" hue="96" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#330066" hue="180" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#333366" hue="160" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#336666" hue="120" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#339966" hue="100" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#33CC66" hue="93" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#33FF66" hue="90" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#660066" hue="200" saturation="239" brightness="48"/>
+ <SolidSwatchItem color="#663366" hue="200" saturation="80" brightness="72"/>
+ <SolidSwatchItem color="#666666" brightness="96"/>
+ <SolidSwatchItem color="#669966" hue="80" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#66CC66" hue="80" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#66FF66" hue="80" saturation="239" brightness="168"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#999999" brightness="144"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#000099" hue="160" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#003399" hue="147" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#006699" hue="133" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#009999" hue="120" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#00CC99" hue="110" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00FF99" hue="104" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#330099" hue="173" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#333399" hue="160" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#336699" hue="140" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#339999" hue="120" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#33CC99" hue="107" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#33FF99" hue="100" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#660099" hue="187" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#663399" hue="180" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#666699" hue="160" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#669999" hue="120" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#66CC99" hue="100" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#66FF99" hue="93" saturation="239" brightness="168"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#CCCCCC" brightness="192"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#0000CC" hue="160" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#0033CC" hue="150" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#0066CC" hue="140" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#0099CC" hue="130" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00CCCC" hue="120" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#00FFCC" hue="112" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#3300CC" hue="170" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#3333CC" hue="160" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#3366CC" hue="147" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#3399CC" hue="133" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#33CCCC" hue="120" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#33FFCC" hue="110" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#6600CC" hue="180" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#6633CC" hue="173" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#6666CC" hue="160" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#6699CC" hue="140" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#66CCCC" hue="120" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#66FFCC" hue="107" saturation="239" brightness="168"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#FFFFFF" brightness="240"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#0000FF" hue="160" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#0033FF" hue="152" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#0066FF" hue="144" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#0099FF" hue="136" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#00CCFF" hue="128" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#00FFFF" hue="120" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#3300FF" hue="168" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#3333FF" hue="160" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#3366FF" hue="150" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#3399FF" hue="140" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#33CCFF" hue="130" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#33FFFF" hue="120" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#6600FF" hue="176" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#6633FF" hue="170" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#6666FF" hue="160" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#6699FF" hue="147" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#66CCFF" hue="133" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#66FFFF" hue="120" saturation="239" brightness="168"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#FF0000" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#990000" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#993300" hue="13" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#996600" hue="27" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#999900" hue="40" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#99CC00" hue="50" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#99FF00" hue="56" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#CC0000" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC3300" hue="10" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC6600" hue="20" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC9900" hue="30" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CCCC00" hue="40" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CCFF00" hue="48" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF0000" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF3300" hue="8" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF6600" hue="16" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF9900" hue="24" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FFCC00" hue="32" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FFFF00" hue="40" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#00FF00" hue="80" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#990033" hue="227" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#993333" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#996633" hue="20" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#999933" hue="40" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#99CC33" hue="53" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#99FF33" hue="60" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#CC0033" hue="230" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC3333" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CC6633" hue="13" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CC9933" hue="27" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CCCC33" hue="40" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CCFF33" hue="50" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF0033" hue="232" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF3333" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF6633" hue="10" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF9933" hue="20" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FFCC33" hue="30" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FFFF33" hue="40" saturation="239" brightness="144"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#0000FF" hue="160" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#990066" hue="213" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#993366" hue="220" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#996666" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#999966" hue="40" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#99CC66" hue="60" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#99FF66" hue="67" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#CC0066" hue="220" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC3366" hue="227" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CC6666" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#CC9966" hue="20" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#CCCC66" hue="40" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#CCFF66" hue="53" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FF0066" hue="224" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF3366" hue="230" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF6666" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FF9966" hue="13" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FFCC66" hue="27" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FFFF66" hue="40" saturation="239" brightness="168"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#FFFF00" hue="40" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#990099" hue="200" saturation="239" brightness="72"/>
+ <SolidSwatchItem color="#993399" hue="200" saturation="120" brightness="96"/>
+ <SolidSwatchItem color="#996699" hue="200" saturation="48" brightness="120"/>
+ <SolidSwatchItem color="#999999" brightness="144"/>
+ <SolidSwatchItem color="#99CC99" hue="80" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#99FF99" hue="80" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#CC0099" hue="210" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC3399" hue="213" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CC6699" hue="220" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#CC9999" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#CCCC99" hue="40" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#CCFF99" hue="60" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#FF0099" hue="216" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF3399" hue="220" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF6699" hue="227" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FF9999" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#FFCC99" hue="20" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#FFFF99" hue="40" saturation="239" brightness="192"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#00FFFF" hue="120" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#9900CC" hue="190" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#9933CC" hue="187" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#9966CC" hue="180" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#9999CC" hue="160" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#99CCCC" hue="120" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#99FFCC" hue="100" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#CC00CC" hue="200" saturation="239" brightness="96"/>
+ <SolidSwatchItem color="#CC33CC" hue="200" saturation="144" brightness="120"/>
+ <SolidSwatchItem color="#CC66CC" hue="200" saturation="120" brightness="144"/>
+ <SolidSwatchItem color="#CC99CC" hue="200" saturation="80" brightness="168"/>
+ <SolidSwatchItem color="#CCCCCC" brightness="192"/>
+ <SolidSwatchItem color="#CCFFCC" hue="80" saturation="239" brightness="216"/>
+ <SolidSwatchItem color="#FF00CC" hue="208" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF33CC" hue="210" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF66CC" hue="213" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FF99CC" hue="220" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#FFCCCC" saturation="239" brightness="216"/>
+ <SolidSwatchItem color="#FFFFCC" hue="40" saturation="239" brightness="216"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#FF00FF" hue="200" saturation="239" brightness="120"/>
+ <SolidSwatchItem/>
+ <SolidSwatchItem color="#9900FF" hue="184" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#9933FF" hue="180" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#9966FF" hue="173" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#9999FF" hue="160" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#99CCFF" hue="140" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#99FFFF" hue="120" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#CC00FF" hue="192" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#CC33FF" hue="190" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#CC66FF" hue="187" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#CC99FF" hue="180" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#CCCCFF" hue="160" saturation="239" brightness="216"/>
+ <SolidSwatchItem color="#CCFFFF" hue="120" saturation="239" brightness="216"/>
+ <SolidSwatchItem color="#FF00FF" hue="200" saturation="239" brightness="120"/>
+ <SolidSwatchItem color="#FF33FF" hue="200" saturation="239" brightness="144"/>
+ <SolidSwatchItem color="#FF66FF" hue="200" saturation="239" brightness="168"/>
+ <SolidSwatchItem color="#FF99FF" hue="200" saturation="239" brightness="192"/>
+ <SolidSwatchItem color="#FFCCFF" hue="200" saturation="239" brightness="216"/>
+ <SolidSwatchItem color="#FFFFFF" brightness="240"/>
+ </swatches>
+ </swatchList>
+ </swatchLists>
+ <extendedSwatchLists>
+ <swatchList>
+ <swatches>
+ <LinearGradientSwatchItem>
+ <GradientEntry color="#FFFFFF" ratio="0"/>
+ <GradientEntry ratio="1"/>
+ </LinearGradientSwatchItem>
+ <RadialGradientSwatchItem>
+ <GradientEntry color="#FFFFFF" ratio="0"/>
+ <GradientEntry ratio="1"/>
+ </RadialGradientSwatchItem>
+ <RadialGradientSwatchItem>
+ <GradientEntry color="#FF0000" ratio="0"/>
+ <GradientEntry ratio="1"/>
+ </RadialGradientSwatchItem>
+ <RadialGradientSwatchItem>
+ <GradientEntry color="#00FF00" ratio="0"/>
+ <GradientEntry ratio="1"/>
+ </RadialGradientSwatchItem>
+ <RadialGradientSwatchItem>
+ <GradientEntry color="#0000FF" ratio="0"/>
+ <GradientEntry ratio="1"/>
+ </RadialGradientSwatchItem>
+ <LinearGradientSwatchItem>
+ <GradientEntry color="#0066FD" ratio="0"/>
+ <GradientEntry color="#FFFFFF" ratio="0.376470588235294"/>
+ <GradientEntry color="#FFFFFF" ratio="0.47843137254902"/>
+ <GradientEntry color="#996600" ratio="0.501960784313725"/>
+ <GradientEntry color="#FFCC00" ratio="0.666666666666667"/>
+ <GradientEntry color="#FFFFFF" ratio="1"/>
+ </LinearGradientSwatchItem>
+ <LinearGradientSwatchItem>
+ <GradientEntry color="#FF0000" ratio="0"/>
+ <GradientEntry color="#FFFF00" ratio="0.164705882352941"/>
+ <GradientEntry color="#00FF00" ratio="0.364705882352941"/>
+ <GradientEntry color="#00FFFF" ratio="0.498039215686275"/>
+ <GradientEntry color="#0000FF" ratio="0.666666666666667"/>
+ <GradientEntry color="#FF00FF" ratio="0.831372549019608"/>
+ <GradientEntry color="#FF0000" ratio="1"/>
+ </LinearGradientSwatchItem>
+ </swatches>
+ </swatchList>
+ </extendedSwatchLists>
+ <PrinterSettings platform="macintosh"/>
+ <publishHistory>
+ <PublishItem publishSize="106532" publishTime="1336579908"/>
+ <PublishItem publishSize="106533" publishTime="1336579839"/>
+ <PublishItem publishSize="106534" publishTime="1336579721"/>
+ <PublishItem publishSize="1049" publishTime="1336579579"/>
+ <PublishItem publishSize="106428" publishTime="1336579255"/>
+ <PublishItem publishSize="106426" publishTime="1336579214"/>
+ <PublishItem publishSize="106430" publishTime="1336579166"/>
+ <PublishItem publishSize="106430" publishTime="1336579160"/>
+ <PublishItem publishSize="106430" publishTime="1336579147"/>
+ <PublishItem publishSize="106423" publishTime="1336579090"/>
+ <PublishItem publishSize="106425" publishTime="1336579044"/>
+ <PublishItem publishSize="106425" publishTime="1336579005"/>
+ <PublishItem publishSize="106423" publishTime="1336578994"/>
+ <PublishItem publishSize="106421" publishTime="1336578948"/>
+ <PublishItem publishSize="106418" publishTime="1336578913"/>
+ <PublishItem publishSize="106380" publishTime="1336576813"/>
+ <PublishItem publishSize="106377" publishTime="1336576800"/>
+ <PublishItem publishSize="106381" publishTime="1336576788"/>
+ <PublishItem publishSize="106381" publishTime="1336576750"/>
+ <PublishItem publishSize="106378" publishTime="1336576734"/>
+ </publishHistory>
+ <swcCache>
+ <Swc hashKey="LWJ4qfDKC.LqmxYv0myxv1" href="511TA3R4DC.swc">
+ <classDefinitions>
+ <ClassDefinition value="fl.video.CuePointType"/>
+ <ClassDefinition value="fl.video.ParseResults"/>
+ <ClassDefinition value="fl.video.VideoPlayerState"/>
+ <ClassDefinition value="fl.video.NCManagerDynamicStream"/>
+ <ClassDefinition value="fl.video.NCManagerNativeShim"/>
+ <ClassDefinition value="fl.video.FMSCapabilities"/>
+ <ClassDefinition value="fl.video.ConnectClientDynamicStream"/>
+ <ClassDefinition value="fl.video.VideoError"/>
+ <ClassDefinition value="fl.video.VideoEvent"/>
+ <ClassDefinition value="fl.video.AutoLayoutEvent"/>
+ <ClassDefinition value="fl.video.SkinErrorEvent"/>
+ <ClassDefinition value="fl.video.VolumeBarAccImpl"/>
+ <ClassDefinition value="fl.video.FPADManager"/>
+ <ClassDefinition value="fl.video.SeekBarAccImpl"/>
+ <ClassDefinition value="fl.video.ReconnectClient"/>
+ <ClassDefinition value="fl.video.VideoScaleMode"/>
+ <ClassDefinition value="fl.video.ConnectClient"/>
+ <ClassDefinition value="fl.livepreview.LivePreviewParent"/>
+ <ClassDefinition value="fl.video.NCManagerNative"/>
+ <ClassDefinition value="fl.video.DynamicStreamItem"/>
+ <ClassDefinition value="fl.video.VideoPlayerClient"/>
+ <ClassDefinition value="fl.video.LayoutEvent"/>
+ <ClassDefinition value="fl.video.Icon"/>
+ <ClassDefinition value="fl.video.DynamicStream"/>
+ <ClassDefinition value="fl.video.ControlData"/>
+ <ClassDefinition value="fl.video.FPMediaCapabilities"/>
+ <ClassDefinition value="fl.video.VideoState"/>
+ <ClassDefinition value="fl.video.QueuedCommand"/>
+ <ClassDefinition value="fl.video.VideoProgressEvent"/>
+ <ClassDefinition value="fl.video.VideoAlign"/>
+ <ClassDefinition value="fl.video.CuePointManager"/>
+ <ClassDefinition value="fl.video.IVPEvent"/>
+ <ClassDefinition value="fl.video.VideoPlayer"/>
+ <ClassDefinition value="fl.video.UIManager"/>
+ <ClassDefinition value="fl.video.ConnectClientNative"/>
+ <ClassDefinition value="fl.video.INCManager"/>
+ <ClassDefinition value="fl.video.SoundEvent"/>
+ <ClassDefinition value="fl.video.FLVPlayback"/>
+ <ClassDefinition value="fl.video.MetadataEvent"/>
+ <ClassDefinition value="fl.video.SMILManager"/>
+ <ClassDefinition value="fl.video.NCManager"/>
+ <ClassDefinition value="fl.video.DVRManager"/>
+ <ClassDefinition value="fl.livepreview.IEditContextV1"/>
+ <ClassDefinition value="fl.livepreview.IPreviewInterface"/>
+ <ClassDefinition value="fl.video.CuePointType"/>
+ <ClassDefinition value="fl.video.VideoPlayerState"/>
+ <ClassDefinition value="fl.video.DynamicStreamItem"/>
+ <ClassDefinition value="fl.video.ControlData"/>
+ <ClassDefinition value="fl.video.CuePointManager"/>
+ <ClassDefinition value="fl.video.UIManager"/>
+ <ClassDefinition value="fl.video.INCManager"/>
+ <ClassDefinition value="fl.video.VideoScaleMode"/>
+ <ClassDefinition value="fl.livepreview.EditContextFlags"/>
+ <ClassDefinition value="fl.video.VideoState"/>
+ <ClassDefinition value="fl.video.QueuedCommand"/>
+ <ClassDefinition value="fl.video.IVPEvent"/>
+ <ClassDefinition value="fl.video.ParseResults"/>
+ <ClassDefinition value="fl.video.FPMediaCapabilities"/>
+ <ClassDefinition value="fl.video.SMILManager"/>
+ <ClassDefinition value="fl.video.FPADManager"/>
+ <ClassDefinition value="fl.video.FMSCapabilities"/>
+ <ClassDefinition value="fl.video.VideoAlign"/>
+ <ClassDefinition value="fl.video.ConnectClient"/>
+ <ClassDefinition value="fl.video.ReconnectClient"/>
+ <ClassDefinition value="fl.video.VideoPlayerClient"/>
+ <ClassDefinition value="fl.video.LayoutEvent"/>
+ <ClassDefinition value="fl.video.SoundEvent"/>
+ <ClassDefinition value="fl.video.VolumeBarAccImpl"/>
+ <ClassDefinition value="fl.video.SeekBarAccImpl"/>
+ <ClassDefinition value="fl.livepreview.IVideoInterfaceV1"/>
+ <ClassDefinition value="fl.video.VideoError"/>
+ <ClassDefinition value="UIManagerStage"/>
+ <ClassDefinition value="fl.video.NCManager"/>
+ <ClassDefinition value="fl.video.VideoEvent"/>
+ <ClassDefinition value="fl.video.MetadataEvent"/>
+ <ClassDefinition value="fl.video.ConnectClientDynamicStream"/>
+ <ClassDefinition value="fl.video.ConnectClientNative"/>
+ <ClassDefinition value="fl.video.DVRManager"/>
+ <ClassDefinition value="fl.video.VideoProgressEvent"/>
+ <ClassDefinition value="fl.video.AutoLayoutEvent"/>
+ <ClassDefinition value="fl.video.NCManagerDynamicStream"/>
+ <ClassDefinition value="fl.video.NCManagerNative"/>
+ <ClassDefinition value="fl.video.DynamicStream"/>
+ <ClassDefinition value="fl.video.SkinErrorEvent"/>
+ <ClassDefinition value="fl.video.VideoPlayer"/>
+ <ClassDefinition value="FLVPlaybackStageLivePreview"/>
+ <ClassDefinition value="fl.stage.video.StopButtonDown"/>
+ <ClassDefinition value="fl.stage.video.StopButtonNormal"/>
+ <ClassDefinition value="fl.stage.video.StopButtonOver"/>
+ <ClassDefinition value="fl.video.FLVPlayback"/>
+ <ClassDefinition value="fl.stage.video.ComponentVersionView"/>
+ <ClassDefinition value="fl.stage.video.BackgroundBox"/>
+ <ClassDefinition value="FLVPlaybackStage"/>
+ <ClassDefinition value="fl.livepreview.LivePreviewParent"/>
+ <ClassDefinition value="fl.video.Icon"/>
+ </classDefinitions>
+ </Swc>
+ <Swc hashKey="kfuaIecnz3BPM/B8Awo4b." href="511TD3R4DC.swc">
+ <classDefinitions>
+ <ClassDefinition value="fl.core.AccessibilityShim"/>
+ <ClassDefinition value="fl.controls.CheckBox"/>
+ <ClassDefinition value="fl.controls.LabelButton"/>
+ <ClassDefinition value="fl.controls.List"/>
+ <ClassDefinition value="fl.controls.ComboBox"/>
+ <ClassDefinition value="fl.controls.ProgressBarDirection"/>
+ <ClassDefinition value="fl.data.SimpleCollectionItem"/>
+ <ClassDefinition value="fl.controls.TextArea"/>
+ <ClassDefinition value="fl.controls.Slider"/>
+ <ClassDefinition value="fl.events.DataChangeEvent"/>
+ <ClassDefinition value="fl.accessibility.ComboBoxAccImpl"/>
+ <ClassDefinition value="fl.events.DataChangeType"/>
+ <ClassDefinition value="fl.accessibility.TileListAccImpl"/>
+ <ClassDefinition value="fl.accessibility.ButtonAccImpl"/>
+ <ClassDefinition value="fl.controls.BaseButton"/>
+ <ClassDefinition value="fl.core.UIComponent"/>
+ <ClassDefinition value="fl.controls.DataGrid"/>
+ <ClassDefinition value="fl.containers.BaseScrollPane"/>
+ <ClassDefinition value="fl.livepreview.LivePreviewParent"/>
+ <ClassDefinition value="fl.controls.Label"/>
+ <ClassDefinition value="fl.managers.IFocusManagerComponent"/>
+ <ClassDefinition value="fl.controls.UIScrollBar"/>
+ <ClassDefinition value="fl.controls.listClasses.ICellRenderer"/>
+ <ClassDefinition value="fl.controls.dataGridClasses.DataGridCellEditor"/>
+ <ClassDefinition value="fl.controls.ColorPicker"/>
+ <ClassDefinition value="fl.managers.FocusManager"/>
+ <ClassDefinition value="fl.events.DataGridEventReason"/>
+ <ClassDefinition value="fl.events.SliderEvent"/>
+ <ClassDefinition value="fl.events.SliderEventClickTarget"/>
+ <ClassDefinition value="fl.controls.progressBarClasses.IndeterminateBar"/>
+ <ClassDefinition value="fl.controls.listClasses.ListData"/>
+ <ClassDefinition value="fl.core.InvalidationType"/>
+ <ClassDefinition value="fl.controls.RadioButtonGroup"/>
+ <ClassDefinition value="fl.controls.NumericStepper"/>
+ <ClassDefinition value="fl.accessibility.LabelButtonAccImpl"/>
+ <ClassDefinition value="fl.containers.UILoader"/>
+ <ClassDefinition value="fl.events.ColorPickerEvent"/>
+ <ClassDefinition value="fl.controls.ButtonLabelPlacement"/>
+ <ClassDefinition value="fl.accessibility.CheckBoxAccImpl"/>
+ <ClassDefinition value="fl.managers.StyleManager"/>
+ <ClassDefinition value="fl.controls.TileList"/>
+ <ClassDefinition value="fl.controls.RadioButton"/>
+ <ClassDefinition value="fl.containers.ScrollPane"/>
+ <ClassDefinition value="fl.controls.listClasses.TileListData"/>
+ <ClassDefinition value="fl.events.InteractionInputType"/>
+ <ClassDefinition value="fl.controls.Button"/>
+ <ClassDefinition value="fl.core.ComponentShim"/>
+ <ClassDefinition value="fl.accessibility.UIComponentAccImpl"/>
+ <ClassDefinition value="fl.controls.SelectableList"/>
+ <ClassDefinition value="fl.events.ComponentEvent"/>
+ <ClassDefinition value="fl.accessibility.RadioButtonAccImpl"/>
+ <ClassDefinition value="fl.controls.listClasses.CellRenderer"/>
+ <ClassDefinition value="fl.managers.IFocusManagerGroup"/>
+ <ClassDefinition value="fl.controls.ScrollPolicy"/>
+ <ClassDefinition value="fl.controls.ScrollBar"/>
+ <ClassDefinition value="fl.controls.ProgressBar"/>
+ <ClassDefinition value="fl.controls.listClasses.ImageCell"/>
+ <ClassDefinition value="fl.managers.IFocusManager"/>
+ <ClassDefinition value="fl.controls.ProgressBarMode"/>
+ <ClassDefinition value="fl.accessibility.SelectableListAccImpl"/>
+ <ClassDefinition value="fl.controls.TextInput"/>
+ <ClassDefinition value="fl.events.ListEvent"/>
+ <ClassDefinition value="fl.accessibility.AccImpl"/>
+ <ClassDefinition value="fl.accessibility.DataGridAccImpl"/>
+ <ClassDefinition value="fl.controls.dataGridClasses.DataGridColumn"/>
+ <ClassDefinition value="fl.events.ScrollEvent"/>
+ <ClassDefinition value="fl.events.DataGridEvent"/>
+ <ClassDefinition value="fl.data.TileListCollectionItem"/>
+ <ClassDefinition value="fl.data.DataProvider"/>
+ <ClassDefinition value="fl.accessibility.ListAccImpl"/>
+ <ClassDefinition value="fl.controls.dataGridClasses.HeaderRenderer"/>
+ <ClassDefinition value="fl.controls.ScrollBarDirection"/>
+ <ClassDefinition value="fl.controls.SliderDirection"/>
+ </classDefinitions>
+ </Swc>
+ <Swc hashKey="u6WoxbQBPf5MDbMcy6Jt7." href="511TG3R4DC.swc">
+ <classDefinitions>
+ <ClassDefinition value="fl.livepreview.LivePreviewParent"/>
+ <ClassDefinition value="fl.video.TimedTextManager"/>
+ <ClassDefinition value="fl.video.CaptionChangeEvent"/>
+ <ClassDefinition value="fl.video.CaptionTargetEvent"/>
+ <ClassDefinition value="fl.video.FLVPlaybackCaptioning"/>
+ </classDefinitions>
+ </Swc>
+ </swcCache>
+</DOMDocument>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/LIBRARY/Component Assets/ProgressBarSkins/ProgressBar_barSkin.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,68 @@
+<DOMSymbolItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" name="Component Assets/ProgressBarSkins/ProgressBar_barSkin" itemID="44b2abe2-000001ba" linkageExportForAS="true" linkageExportInFirstFrame="false" linkageClassName="ProgressBar_barSkin" sourceLibraryItemHRef="Component Assets/ProgressBarSkins/ProgressBar_barSkin" sourceLastModified="1163712967" scaleGridLeft="1" scaleGridRight="51.95" scaleGridTop="1" scaleGridBottom="2.9" lastModified="1168289651">
+ <timeline>
+ <DOMTimeline name="ProgressBar_barSkin">
+ <layers>
+ <DOMLayer name="skin" color="#4FFF4F" current="true" isSelected="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements>
+ <DOMGroup>
+ <members>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <LinearGradient>
+ <matrix>
+ <Matrix a="0" b="-0.0083160400390625" c="0.0083160400390625" d="0" tx="6" ty="7.1"/>
+ </matrix>
+ <GradientEntry color="#99D7FE" ratio="0"/>
+ <GradientEntry color="#D9F0FE" ratio="1"/>
+ </LinearGradient>
+ </FillStyle>
+ </fills>
+ <edges>
+ <Edge fillStyle1="1" edges="!1040 61|20 60!20 60|20 19!20 19|1040 20!1040 20|1040 61"/>
+ <Edge cubics="!20 60(;20,60 20,19 20,19p20 60 20 19);"/>
+ <Edge cubics="!1040 61(;1040,61 20,60 20,60p1040 61 20 60);"/>
+ <Edge cubics="!1040 20(;1040,20 1040,61 1040,61p1040 20 1040 61);"/>
+ <Edge cubics="!20 19(;20,19 1040,20 1040,20p20 19 1040 20);"/>
+ </edges>
+ </DOMShape>
+ </members>
+ </DOMGroup>
+ <DOMGroup>
+ <members>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <LinearGradient>
+ <matrix>
+ <Matrix a="0" b="-0.00787353515625" c="0.00787353515625" d="0" tx="106.5" ty="6.45"/>
+ </matrix>
+ <GradientEntry color="#0075BF" ratio="0"/>
+ <GradientEntry color="#009DFF" ratio="0.992156862745098"/>
+ </LinearGradient>
+ </FillStyle>
+ </fills>
+ <edges>
+ <Edge fillStyle0="1" edges="!1060 0|0 0!0 0|0 80!0 80|1060 80!1060 80|1060 0!1040 60|20 60!20 60|20 20!20 20|1040 20!1040 20|1040 60"/>
+ <Edge cubics="!0 0(;0,0 0,80 0,80q0 0 0 80);"/>
+ <Edge cubics="!20 60(;20,60 20,20 20,20q20 60 20 20);"/>
+ <Edge cubics="!1060 80(;1060,80 1060,0 1060,0q1060 80 1060 0);"/>
+ <Edge cubics="!1040 20(;1040,20 1040,60 1040,60q1040 20 1040 60);"/>
+ <Edge cubics="!1060 0(;1060,0 0,0 0,0q1060 0 0 0);"/>
+ <Edge cubics="!0 80(;0,80 1060,80 1060,80q0 80 1060 80);"/>
+ <Edge cubics="!1040 60(;1040,60 20,60 20,60q1040 60 20 60);"/>
+ <Edge cubics="!20 20(;20,20 1040,20 1040,20q20 20 1040 20);"/>
+ </edges>
+ </DOMShape>
+ </members>
+ </DOMGroup>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timeline>
+</DOMSymbolItem>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/LIBRARY/Component Assets/ProgressBarSkins/ProgressBar_indeterminateSkin.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,27 @@
+<DOMSymbolItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" name="Component Assets/ProgressBarSkins/ProgressBar_indeterminateSkin" itemID="44b3e7f2-0000000f" linkageExportForAS="true" linkageExportInFirstFrame="false" linkageClassName="ProgressBar_indeterminateSkin" sourceLibraryItemHRef="Component Assets/ProgressBarSkins/ProgressBar_indeterminateSkin" sourceLastModified="1163713057" lastModified="1168289661">
+ <timeline>
+ <DOMTimeline name="ProgressBar_indeterminateSkin">
+ <layers>
+ <DOMLayer name="skin" color="#9933CC" current="true" isSelected="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <SolidColor color="#009DFF"/>
+ </FillStyle>
+ </fills>
+ <edges>
+ <Edge fillStyle1="1" edges="!1596 0|-1 798.5!-1 798.5|-1 598.5!-1 598.5|1196 0!1196 0|1596 0!1599 398.5|796 800!796 800|396 800!396 800|1599 198.5!1599 198.5|1599 398.5!1599 800|1196 800!1196 800|1599 598.5!1599 598.5|1599 800!796 0|-1 398.5!-1 398.5|-1 198.5!-1
+ 198.5|396 0!396 0|796 0"/>
+ </edges>
+ </DOMShape>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timeline>
+</DOMSymbolItem>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/LIBRARY/Component Assets/ProgressBarSkins/ProgressBar_trackSkin.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,68 @@
+<DOMSymbolItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" name="Component Assets/ProgressBarSkins/ProgressBar_trackSkin" itemID="44b2aac4-000001b5" linkageExportForAS="true" linkageExportInFirstFrame="false" linkageClassName="ProgressBar_trackSkin" sourceLibraryItemHRef="Component Assets/ProgressBarSkins/ProgressBar_trackSkin" sourceLastModified="1163713063" scaleGridLeft="1" scaleGridRight="148.95" scaleGridTop="1.25" scaleGridBottom="2.65" lastModified="1168289670">
+ <timeline>
+ <DOMTimeline name="ProgressBar_trackSkin">
+ <layers>
+ <DOMLayer name="skin" color="#4FFF4F" current="true" isSelected="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements>
+ <DOMGroup>
+ <members>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <LinearGradient>
+ <matrix>
+ <Matrix a="0" b="-0.0083160400390625" c="0.0083160400390625" d="0" tx="6" ty="7.1"/>
+ </matrix>
+ <GradientEntry color="#CCCCCC" alpha="0.4" ratio="0"/>
+ <GradientEntry color="#FFFFFF" alpha="0.6" ratio="1"/>
+ </LinearGradient>
+ </FillStyle>
+ </fills>
+ <edges>
+ <Edge fillStyle1="1" edges="!2980 61|20 60!20 60|20 19!20 19|2980 20!2980 20|2980 61"/>
+ <Edge cubics="!20 60(;20,60 20,19 20,19p20 60 20 19)20,19;"/>
+ <Edge cubics="!2980 61(;2980,61 20,60 20,60p2980 61 20 60);"/>
+ <Edge cubics="!2980 20(;2980,20 2980,61 2980,61p2980 20 2980 61);"/>
+ <Edge cubics="!20 19(;20,19 2980,20 2980,20p20 19 2980 20);"/>
+ </edges>
+ </DOMShape>
+ </members>
+ </DOMGroup>
+ <DOMGroup>
+ <members>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <LinearGradient>
+ <matrix>
+ <Matrix a="0" b="-0.00787353515625" c="0.00787353515625" d="0" tx="106.5" ty="6.45"/>
+ </matrix>
+ <GradientEntry color="#5B5D5E" ratio="0"/>
+ <GradientEntry color="#B7BABC" ratio="1"/>
+ </LinearGradient>
+ </FillStyle>
+ </fills>
+ <edges>
+ <Edge fillStyle0="1" edges="!3000 0|0 0!0 0|0 80!0 80|3000 80!3000 80|3000 0!2980 60|20 60!20 60|20 20!20 20|2980 20!2980 20|2980 60"/>
+ <Edge cubics="!20 60(20,60;20,60 20,20 20,20p20 60 20 20)20,20;"/>
+ <Edge cubics="!2980 60(2980,60;2980,60 20,60 20,60p2980 60 20 60)20,60;"/>
+ <Edge cubics="!2980 20(;2980,20 2980,60 2980,60p2980 20 2980 60);"/>
+ <Edge cubics="!20 20(;20,20 2980,20 2980,20p20 20 2980 20);"/>
+ <Edge cubics="!3000 0(3000,0;3000,0 0,0 0,0p3000 0 0 0);"/>
+ <Edge cubics="!3000 80(;3000,80 3000,0 3000,0p3000 80 3000 0);"/>
+ <Edge cubics="!0 80(;0,80 3000,80 3000,80p0 80 3000 80)3000,80;"/>
+ <Edge cubics="!0 0(0,0;0,0 0,80 0,80p0 0 0 80);"/>
+ </edges>
+ </DOMShape>
+ </members>
+ </DOMGroup>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timeline>
+</DOMSymbolItem>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/LIBRARY/Component Assets/_private/Component_avatar.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,35 @@
+<DOMSymbolItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" name="Component Assets/_private/Component_avatar" itemID="44f89322-00000020" sourceLibraryItemHRef="Component Assets/Shared/Component_avatar" sourceLastModified="1163714548" lastModified="1168286780">
+ <timeline>
+ <DOMTimeline name="Component_avatar">
+ <layers>
+ <DOMLayer name="Avatar" color="#4FFF4F" current="true" isSelected="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements>
+ <DOMShape>
+ <fills>
+ <FillStyle index="1">
+ <SolidColor color="#FFFFFF"/>
+ </FillStyle>
+ </fills>
+ <strokes>
+ <StrokeStyle index="1">
+ <SolidStroke scaleMode="normal" weight="0.05" solidStyle="hairline">
+ <fill>
+ <SolidColor/>
+ </fill>
+ </SolidStroke>
+ </StrokeStyle>
+ </strokes>
+ <edges>
+ <Edge fillStyle1="1" strokeStyle="1" edges="!1600 440|0 440!0 440|0 0!0 0|1600 0!1600 0|1600 440"/>
+ </edges>
+ </DOMShape>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timeline>
+</DOMSymbolItem>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/LIBRARY/ProgressBar.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,642 @@
+<DOMComponentItem xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://ns.adobe.com/xfl/2008/" name="ProgressBar" itemID="44b2ac3f-000001bc" linkageExportForAS="true" linkageClassName="fl.controls.ProgressBar" sourceLibraryItemHRef="ProgressBar" sourceLastModified="1164926528" lastModified="1267043552" lastUniqueIdentifier="14" tooltip="ProgressBar" customIconID="0" actionscriptClass="fl.controls.ProgressBar" livePreviewScmHRef="haewux0luj14.swf" livePreviewScmSourceFilename="ProgressBar.swf" persistLivePreview11="true" livePreview11ScmHRef="haexax0luj.swf" livePreview11ScmSourceFilename="C:\Documents and Settings\jkamerer\Local Settings\Application Data\Adobe\Flash CS5\en_US\Configuration\TMPafof4yd528..swf" editFrameIndex="2" requiredMinimumPlayerVersion="9" requiredMinimumASVersion="3" parametersAreLocked="true">
+ <timeline>
+ <DOMTimeline name="ProgressBar" currentFrame="1">
+ <layers>
+ <DOMLayer name="assets" color="#9933CC" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements/>
+ </DOMFrame>
+ <DOMFrame index="1" keyMode="9728">
+ <elements>
+ <DOMSymbolInstance libraryItemName="Component Assets/ProgressBarSkins/ProgressBar_trackSkin" name="">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="22" ty="64"/>
+ </matrix>
+ <transformationPoint>
+ <Point x="75" y="2"/>
+ </transformationPoint>
+ </DOMSymbolInstance>
+ <DOMSymbolInstance libraryItemName="Component Assets/ProgressBarSkins/ProgressBar_barSkin" name="">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="117" ty="30"/>
+ </matrix>
+ <transformationPoint>
+ <Point x="26.5" y="2"/>
+ </transformationPoint>
+ </DOMSymbolInstance>
+ <DOMSymbolInstance libraryItemName="Component Assets/ProgressBarSkins/ProgressBar_indeterminateSkin" name="">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="90.05" ty="100"/>
+ </matrix>
+ <transformationPoint>
+ <Point x="39.95" y="20"/>
+ </transformationPoint>
+ </DOMSymbolInstance>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ <DOMLayer name="asset names" color="#FF4FFF" locked="true" current="true" isSelected="true" autoNamed="false" layerType="guide">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements/>
+ </DOMFrame>
+ <DOMFrame index="1" keyMode="9728">
+ <elements>
+ <DOMRectangleObject objectWidth="427" objectHeight="177.95" x="-4" y="137" selected="true" lockFlag="true" topLeftRadius="20" topRightRadius="20" bottomLeftRadius="20" bottomRightRadius="20">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="4" ty="-136.95"/>
+ </matrix>
+ <fill>
+ <SolidColor color="#EEEEEE"/>
+ </fill>
+ <stroke>
+ <SolidStroke scaleMode="normal">
+ <fill>
+ <SolidColor color="#CCCCCC"/>
+ </fill>
+ </SolidStroke>
+ </stroke>
+ </DOMRectangleObject>
+ <DOMStaticText selected="true" width="144" height="18" isSelectable="false">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="232.4" ty="66"/>
+ </matrix>
+ <textRuns>
+ <DOMTextRun>
+ <characters>Track Skin</characters>
+ <textAttrs>
+ <DOMTextAttrs aliasText="false" lineSpacing="14.8" size="16" face="TimesNewRomanPSMT" fillColor="#666666"/>
+ </textAttrs>
+ </DOMTextRun>
+ </textRuns>
+ </DOMStaticText>
+ <DOMStaticText selected="true" width="144" height="18" isSelectable="false">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="232.4" ty="24.1"/>
+ </matrix>
+ <textRuns>
+ <DOMTextRun>
+ <characters>Bar Skin</characters>
+ <textAttrs>
+ <DOMTextAttrs aliasText="false" lineSpacing="14.8" size="16" face="TimesNewRomanPSMT" fillColor="#666666"/>
+ </textAttrs>
+ </DOMTextRun>
+ </textRuns>
+ </DOMStaticText>
+ <DOMStaticText selected="true" width="144" height="18" isSelectable="false">
+ <matrix>
+ <Matrix d="0.999725341796875" tx="232.4" ty="116.3"/>
+ </matrix>
+ <textRuns>
+ <DOMTextRun>
+ <characters>Indeterminate Pattern</characters>
+ <textAttrs>
+ <DOMTextAttrs aliasText="false" lineSpacing="14.8" size="16" face="TimesNewRomanPSMT" fillColor="#666666"/>
+ </textAttrs>
+ </DOMTextRun>
+ </textRuns>
+ </DOMStaticText>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ <DOMLayer name="avatar" color="#4FFF4F" locked="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements>
+ <DOMSymbolInstance libraryItemName="Component Assets/_private/Component_avatar" name="">
+ <matrix>
+ <Matrix a="1.875" d="0.18182373046875"/>
+ </matrix>
+ <transformationPoint>
+ <Point x="40" y="11"/>
+ </transformationPoint>
+ </DOMSymbolInstance>
+ </elements>
+ </DOMFrame>
+ <DOMFrame index="1" keyMode="9728">
+ <elements/>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ <DOMLayer name="ComponentShim" color="#FFFF4F" locked="true" autoNamed="false">
+ <frames>
+ <DOMFrame index="0" keyMode="9728">
+ <elements/>
+ </DOMFrame>
+ <DOMFrame index="1" keyMode="9728">
+ <elements>
+ <DOMCompiledClipInstance libraryItemName="Component Assets/_private/ComponentShim" selected="true" uniqueID="13">
+ <matrix>
+ <Matrix d="1.00311279296875" tx="10" ty="10"/>
+ </matrix>
+ <dataBindingXML><![CDATA[<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Séquence 1' oldCopiedComponentPath=''>
+</component>
+]]></dataBindingXML>
+ </DOMCompiledClipInstance>
+ </elements>
+ </DOMFrame>
+ </frames>
+ </DOMLayer>
+ </layers>
+ </DOMTimeline>
+ </timeline>
+ <parametersAsXML><![CDATA[ <property id="direction">
+ <Inspectable name="direction" variable="direction" category="" verbose="0" defaultValue="right" enumeration="right,left" type="List"/>
+ </property>
+ <property id="enabled">
+ <Inspectable name="enabled" variable="enabled" category="" verbose="1" defaultValue="true" type="Boolean"/>
+ </property>
+ <property id="mode">
+ <Inspectable name="mode" variable="mode" category="" verbose="0" defaultValue="event" enumeration="event,polled,manual" type="List"/>
+ </property>
+ <property id="sourceName">
+ <Inspectable name="source" variable="sourceName" category="" verbose="0" defaultValue="" type="String"/>
+ </property>
+ <property id="visible">
+ <Inspectable name="visible" variable="visible" category="" verbose="1" defaultValue="true" type="Boolean"/>
+ </property>
+]]></parametersAsXML>
+ <classProperties><![CDATA[<classDefs>
+ <classDef id="Date"/>
+ <classDef id="Date"/>
+ <classDef id="Boolean"/>
+ <classDef id="Namespace"/>
+ <classDef id="Class"/>
+ <classDef id="uint"/>
+ <classDef id="Object"/>
+ <classDef id="Number"/>
+ <classDef id="int"/>
+ <classDef id="String"/>
+ <classDef id="Function"/>
+ <classDef id="Array"/>
+ <classDef id="builtin.as$91.MethodClosure"/>
+ <classDef id="Object"/>
+ <classDef id="Boolean"/>
+ <classDef id="Namespace"/>
+ <classDef id="Class"/>
+ <classDef id="uint"/>
+ <classDef id="Number"/>
+ <classDef id="int"/>
+ <classDef id="String"/>
+ <classDef id="Function"/>
+ <classDef id="Array"/>
+ <classDef id="builtin.as$91.MethodClosure"/>
+ <classDef id="RegExp"/>
+ <classDef id="RegExp"/>
+ <classDef id="flash.display.Sprite"/>
+ <classDef id="flash.display.Sprite"/>
+ <classDef id="flash.display.DisplayObjectContainer"/>
+ <classDef id="flash.display.DisplayObjectContainer"/>
+ <classDef id="flash.display.InteractiveObject"/>
+ <classDef id="flash.display.InteractiveObject"/>
+ <classDef id="flash.display.DisplayObject"/>
+ <classDef id="flash.display.DisplayObject"/>
+ <classDef id="flash.display.IBitmapDrawable"/>
+ <classDef id="flash.display.IBitmapDrawable"/>
+ <classDef id="flash.events.WeakFunctionClosure"/>
+ <classDef id="flash.events.EventDispatcher"/>
+ <classDef id="flash.events.WeakMethodClosure"/>
+ <classDef id="flash.events.WeakFunctionClosure"/>
+ <classDef id="flash.events.WeakMethodClosure"/>
+ <classDef id="flash.events.EventDispatcher"/>
+ <classDef id="flash.events.IEventDispatcher"/>
+ <classDef id="flash.events.IEventDispatcher"/>
+ <classDef id="flash.events.Event"/>
+ <classDef id="flash.events.Event"/>
+ <classDef id="flash.display.Stage"/>
+ <classDef id="flash.display.Stage"/>
+ <classDef id="flash.geom.Rectangle"/>
+ <classDef id="flash.geom.Rectangle"/>
+ <classDef id="flash.geom.Point"/>
+ <classDef id="flash.geom.Point"/>
+ <classDef id="flash.display.LoaderInfo"/>
+ <classDef id="flash.display.LoaderInfo"/>
+ <classDef id="flash.geom.Transform"/>
+ <classDef id="flash.geom.Transform"/>
+ <classDef id="flash.accessibility.AccessibilityProperties"/>
+ <classDef id="flash.accessibility.AccessibilityProperties"/>
+ <classDef id="flash.ui.ContextMenu"/>
+ <classDef id="flash.ui.ContextMenu"/>
+ <classDef id="flash.accessibility.AccessibilityImplementation"/>
+ <classDef id="flash.accessibility.AccessibilityImplementation"/>
+ <classDef id="flash.text.TextSnapshot"/>
+ <classDef id="flash.text.TextSnapshot"/>
+ <classDef id="flash.media.SoundTransform"/>
+ <classDef id="flash.media.SoundTransform"/>
+ <classDef id="flash.display.Graphics"/>
+ <classDef id="flash.display.Graphics"/>
+ <classDef id="flash.events.KeyboardEvent"/>
+ <classDef id="flash.events.KeyboardEvent"/>
+ <classDef id="flash.events.FocusEvent"/>
+ <classDef id="flash.events.FocusEvent"/>
+ <classDef id="flash.utils.Dictionary"/>
+ <classDef id="flash.utils.Dictionary"/>
+ <classDef id="flash.text.TextField"/>
+ <classDef id="flash.text.TextField"/>
+ <classDef id="flash.events.ProgressEvent"/>
+ <classDef id="flash.events.ProgressEvent"/>
+ <classDef id="SecurityError"/>
+ <classDef id="URIError"/>
+ <classDef id="ReferenceError"/>
+ <classDef id="ArgumentError"/>
+ <classDef id="EvalError"/>
+ <classDef id="SyntaxError"/>
+ <classDef id="UninitializedError"/>
+ <classDef id="TypeError"/>
+ <classDef id="DefinitionError"/>
+ <classDef id="Error"/>
+ <classDef id="RangeError"/>
+ <classDef id="VerifyError"/>
+ <classDef id="Error"/>
+ <classDef id="SecurityError"/>
+ <classDef id="URIError"/>
+ <classDef id="ReferenceError"/>
+ <classDef id="ArgumentError"/>
+ <classDef id="EvalError"/>
+ <classDef id="SyntaxError"/>
+ <classDef id="UninitializedError"/>
+ <classDef id="TypeError"/>
+ <classDef id="DefinitionError"/>
+ <classDef id="RangeError"/>
+ <classDef id="VerifyError"/>
+ <classDef id="flash.events.MouseEvent"/>
+ <classDef id="flash.events.MouseEvent"/>
+ <classDef id="flash.system.IMEConversionMode"/>
+ <classDef id="flash.system.IMEConversionMode"/>
+ <classDef id="flash.system.IME"/>
+ <classDef id="flash.system.IME"/>
+ <classDef id="flash.text.TextFormatAlign"/>
+ <classDef id="flash.text.TextFormatAlign"/>
+ <classDef id="Math"/>
+ <classDef id="Math"/>
+ <classDef id="flash.text.TextFormat"/>
+ <classDef id="flash.text.TextFormat"/>
+ <classDef id="XMLList"/>
+ <classDef id="XML"/>
+ <classDef id="QName"/>
+ <classDef id="XMLList"/>
+ <classDef id="XML"/>
+ <classDef id="QName"/>
+ <classDef id="flash.geom.Matrix"/>
+ <classDef id="flash.geom.Matrix"/>
+ <classDef id="flash.geom.ColorTransform"/>
+ <classDef id="flash.geom.ColorTransform"/>
+ <classDef id="flash.display.BitmapData"/>
+ <classDef id="flash.display.BitmapData"/>
+ <classDef id="flash.utils.ByteArray"/>
+ <classDef id="flash.utils.ByteArray"/>
+ <classDef id="flash.display.Loader"/>
+ <classDef id="flash.display.Loader"/>
+ <classDef id="flash.system.ApplicationDomain"/>
+ <classDef id="flash.system.ApplicationDomain"/>
+ <classDef id="flash.ui.ContextMenuBuiltInItems"/>
+ <classDef id="flash.ui.ContextMenuBuiltInItems"/>
+ <classDef id="flash.text.TextRun"/>
+ <classDef id="flash.text.TextRun"/>
+ <classDef id="flash.text.TextLineMetrics"/>
+ <classDef id="flash.text.TextLineMetrics"/>
+ <classDef id="flash.text.StyleSheet"/>
+ <classDef id="flash.text.StyleSheet"/>
+ <classDef id="flash.display.SimpleButton"/>
+ <classDef id="flash.display.SimpleButton"/>
+ <classDef id="flash.ui.Keyboard"/>
+ <classDef id="flash.ui.Keyboard"/>
+ <classDef id="flash.text.TextFieldType"/>
+ <classDef id="flash.text.TextFieldType"/>
+ <classDef id="flash.events.IOErrorEvent"/>
+ <classDef id="flash.events.IOErrorEvent"/>
+ <classDef id="flash.errors.IOError"/>
+ <classDef id="flash.errors.EOFError"/>
+ <classDef id="flash.errors.StackOverflowError"/>
+ <classDef id="flash.errors.InvalidSWFError"/>
+ <classDef id="flash.errors.ScriptTimeoutError"/>
+ <classDef id="flash.errors.IllegalOperationError"/>
+ <classDef id="flash.errors.MemoryError"/>
+ <classDef id="flash.errors.IOError"/>
+ <classDef id="flash.errors.StackOverflowError"/>
+ <classDef id="flash.errors.InvalidSWFError"/>
+ <classDef id="flash.errors.ScriptTimeoutError"/>
+ <classDef id="flash.errors.IllegalOperationError"/>
+ <classDef id="flash.errors.MemoryError"/>
+ <classDef id="flash.errors.EOFError"/>
+ <classDef id="flash.events.HTTPStatusEvent"/>
+ <classDef id="flash.events.HTTPStatusEvent"/>
+ <classDef id="flash.events.ContextMenuEvent"/>
+ <classDef id="flash.events.ContextMenuEvent"/>
+ <classDef id="flash.events.IMEEvent"/>
+ <classDef id="flash.events.IMEEvent"/>
+ <classDef id="flash.events.TextEvent"/>
+ <classDef id="flash.events.TextEvent"/>
+ <classDef id="flash.events.FullScreenEvent"/>
+ <classDef id="flash.events.FullScreenEvent"/>
+ <classDef id="flash.utils.IDataInput"/>
+ <classDef id="flash.utils.IDataInput"/>
+ <classDef id="flash.utils.IDataOutput"/>
+ <classDef id="flash.utils.IDataOutput"/>
+ <classDef id="flash.events.ErrorEvent"/>
+ <classDef id="flash.events.ErrorEvent"/>
+ <classDef id="flash.events.ActivityEvent"/>
+ <classDef id="flash.events.ActivityEvent"/>
+ <classDef id="flash.filters.BitmapFilter"/>
+ <classDef id="flash.filters.BitmapFilter"/>
+ <classDef id="flash.system.LoaderContext"/>
+ <classDef id="flash.system.LoaderContext"/>
+ <classDef id="flash.net.URLRequest"/>
+ <classDef id="flash.net.URLRequest"/>
+ <classDef id="flash.system.SecurityDomain"/>
+ <classDef id="flash.system.SecurityDomain"/>
+ <classDef id="flash.utils.Timer"/>
+ <classDef id="flash.utils.Timer"/>
+ <classDef id="flash.events.TimerEvent"/>
+ <classDef id="flash.events.TimerEvent"/>
+ <classDef id="fl.managers.IFocusManager"/>
+ <classDef id="fl.managers.IFocusManagerComponent"/>
+ <classDef id="fl.core.InvalidationType"/>
+ <classDef id="fl.managers.StyleManager"/>
+ <classDef id="fl.controls.ProgressBarMode"/>
+ <classDef id="fl.controls.ProgressBarDirection"/>
+ <classDef id="fl.managers.IFocusManagerGroup"/>
+ <classDef id="fl.controls.ButtonLabelPlacement"/>
+ <classDef id="fl.events.ComponentEvent"/>
+ <classDef id="fl.managers.FocusManager"/>
+ <classDef id="fl.core.UIComponent"/>
+ <classDef id="fl.controls.ProgressBar"/>
+ <classDef id="fl.controls.progressBarClasses.IndeterminateBar"/>
+ <classDef id="fl.controls.BaseButton"/>
+ <classDef id="fl.controls.LabelButton"/>
+ <classDef id="fl.controls.Button"/>
+</classDefs>
+<class id="fl.controls.ProgressBar" >
+ <Style name="barPadding" type="Number" format="Length" />
+ <Style name="indeterminateBar" type="Class" />
+ <Style name="indeterminateSkin" type="Class" />
+ <Style name="barSkin" type="Class" />
+ <Style name="trackSkin" type="Class" />
+ <Style name="icon" type="Class" />
+ <Event param1="progress" type="flash.events.ProgressEvent" />
+ <Event param1="complete" type="flash.events.Event" />
+ <__go_to_ctor_definition_help file="c:\devsrc\flashfarm\authortool\windbgnoelicensing\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\controls\ProgressBar.as" pos="7922" />
+ <Style name="disabledTextFormat" type="flash.text.TextFormat" />
+ <Style name="textFormat" type="flash.text.TextFormat" />
+ <Style name="focusRectPadding" type="Number" format="Length" />
+ <Style name="focusRectSkin" type="Class" />
+ <Event name="hide" type="fl.events.ComponentEvent" />
+ <Event name="show" type="fl.events.ComponentEvent" />
+ <Event name="resize" type="fl.events.ComponentEvent" />
+ <Event name="move" type="fl.events.ComponentEvent" />
+ <__go_to_ctor_definition_help file="C:\devsrc\flashfarm\authortool\windbgnoelicensing\Common\Configuration\Component Source\ActionScript 3.0\User Interface\fl\core\UIComponent.as" pos="14978" />
+ <Event name="tabIndexChange" type="flash.events.Event" />
+ <Event name="tabEnabledChange" type="flash.events.Event" />
+ <Event name="tabChildrenChange" type="flash.events.Event" />
+ <Event name="keyUp" type="flash.events.KeyboardEvent" />
+ <Event name="keyDown" type="flash.events.KeyboardEvent" />
+ <Event name="rollOver" type="flash.events.MouseEvent" />
+ <Event name="rollOut" type="flash.events.MouseEvent" />
+ <Event name="mouseWheel" type="flash.events.MouseEvent" />
+ <Event name="mouseUp" type="flash.events.MouseEvent" />
+ <Event name="mouseOver" type="flash.events.MouseEvent" />
+ <Event name="mouseOut" type="flash.events.MouseEvent" />
+ <Event name="mouseMove" type="flash.events.MouseEvent" />
+ <Event name="mouseDown" type="flash.events.MouseEvent" />
+ <Event name="doubleClick" type="flash.events.MouseEvent" />
+ <Event name="click" type="flash.events.MouseEvent" />
+ <Event name="mouseFocusChange" type="flash.events.FocusEvent" />
+ <Event name="keyFocusChange" type="flash.events.FocusEvent" />
+ <Event name="focusOut" type="flash.events.FocusEvent" />
+ <Event name="focusIn" type="flash.events.FocusEvent" />
+ <Event name="render" type="flash.events.Event" />
+ <Event name="removedFromStage" type="flash.events.Event" />
+ <Event name="removed" type="flash.events.Event" />
+ <Event name="enterFrame" type="flash.events.Event" />
+ <Event name="addedToStage" type="flash.events.Event" />
+ <Event name="added" type="flash.events.Event" />
+ <Event name="deactivate" type="flash.events.Event" />
+ <Event name="activate" type="flash.events.Event" />
+ <method id="direction" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="right" type="list" enumeration="right,left" />
+ </method>
+ <method id="indeterminate" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="minimum" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="maximum" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="value" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="source" returnType="Object" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="percentComplete" returnType="Number" isProperty="true" permissions="readonly">
+ </method>
+ <method id="mode" returnType="String" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="event" type="list" enumeration="event,polled,manual" />
+ </method>
+ <method id="sourceName" returnType="String" isProperty="true" permissions="writeonly">
+ <Inspectable name="source" type="String" />
+ </method>
+ <method id="componentInspectorSetting" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="enabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" verbose="1" />
+ </method>
+ <method id="width" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="height" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="x" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="y" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scaleX" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scaleY" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="visible" returnType="Boolean" isProperty="true" permissions="readwrite">
+ <Inspectable defaultValue="true" verbose="1" />
+ </method>
+ <method id="focusEnabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="mouseFocusEnabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="focusManager" returnType="IFocusManager" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="version" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="focusTarget" returnType="IFocusManagerComponent" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="graphics" returnType="Graphics" isProperty="true" permissions="readonly">
+ </method>
+ <method id="buttonMode" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="dropTarget" returnType="DisplayObject" isProperty="true" permissions="readonly">
+ </method>
+ <method id="hitArea" returnType="Sprite" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="useHandCursor" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="soundTransform" returnType="SoundTransform" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="numChildren" returnType="int" isProperty="true" permissions="readonly">
+ </method>
+ <method id="textSnapshot" returnType="TextSnapshot" isProperty="true" permissions="readonly">
+ </method>
+ <method id="tabChildren" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="mouseChildren" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="tabEnabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="tabIndex" returnType="int" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="focusRect" returnType="Object" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="mouseEnabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="doubleClickEnabled" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="contextMenu" returnType="ContextMenu" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="accessibilityImplementation" returnType="AccessibilityImplementation" isProperty="true" permissions="readwrite">
+ <Inspectable environment="none" />
+ </method>
+ <method id="root" returnType="DisplayObject" isProperty="true" permissions="readonly">
+ </method>
+ <method id="stage" returnType="Stage" isProperty="true" permissions="readonly">
+ </method>
+ <method id="name" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="parent" returnType="DisplayObjectContainer" isProperty="true" permissions="readonly">
+ </method>
+ <method id="mask" returnType="DisplayObject" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="mouseX" returnType="Number" isProperty="true" permissions="readonly">
+ </method>
+ <method id="mouseY" returnType="Number" isProperty="true" permissions="readonly">
+ </method>
+ <method id="rotation" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="alpha" returnType="Number" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="cacheAsBitmap" returnType="Boolean" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="opaqueBackground" returnType="Object" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scrollRect" returnType="Rectangle" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="filters" returnType="Array" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="blendMode" returnType="String" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="transform" returnType="Transform" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="scale9Grid" returnType="Rectangle" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="loaderInfo" returnType="LoaderInfo" isProperty="true" permissions="readonly">
+ </method>
+ <method id="accessibilityProperties" returnType="AccessibilityProperties" isProperty="true" permissions="readwrite">
+ </method>
+ <method id="setProgress" returnType="void" isProperty="false">
+ </method>
+ <method id="reset" returnType="void" isProperty="false">
+ </method>
+ <method id="ProgressBar" isConstructor="true" isProperty="false">
+ </method>
+ <method id="setSize" returnType="void" isProperty="false">
+ </method>
+ <method id="setStyle" returnType="void" isProperty="false">
+ </method>
+ <method id="clearStyle" returnType="void" isProperty="false">
+ </method>
+ <method id="getStyle" returnType="Object" isProperty="false">
+ </method>
+ <method id="move" returnType="void" isProperty="false">
+ </method>
+ <method id="validateNow" returnType="void" isProperty="false">
+ </method>
+ <method id="invalidate" returnType="void" isProperty="false">
+ </method>
+ <method id="setSharedStyle" returnType="void" isProperty="false">
+ </method>
+ <method id="drawFocus" returnType="void" isProperty="false">
+ </method>
+ <method id="setFocus" returnType="void" isProperty="false">
+ </method>
+ <method id="getFocus" returnType="InteractiveObject" isProperty="false">
+ </method>
+ <method id="drawNow" returnType="void" isProperty="false">
+ </method>
+ <method id="UIComponent" isConstructor="true" isProperty="false">
+ </method>
+ <method id="startDrag" returnType="void" isProperty="false">
+ </method>
+ <method id="stopDrag" returnType="void" isProperty="false">
+ </method>
+ <method id="Sprite" isConstructor="true" isProperty="false">
+ </method>
+ <method id="addChild" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="addChildAt" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="removeChild" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="removeChildAt" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="getChildIndex" returnType="int" isProperty="false">
+ </method>
+ <method id="setChildIndex" returnType="void" isProperty="false">
+ </method>
+ <method id="getChildAt" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="getChildByName" returnType="DisplayObject" isProperty="false">
+ </method>
+ <method id="getObjectsUnderPoint" returnType="Array" isProperty="false">
+ </method>
+ <method id="areInaccessibleObjectsUnderPoint" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="contains" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="swapChildrenAt" returnType="void" isProperty="false">
+ </method>
+ <method id="swapChildren" returnType="void" isProperty="false">
+ </method>
+ <method id="DisplayObjectContainer" isConstructor="true" isProperty="false">
+ </method>
+ <method id="InteractiveObject" isConstructor="true" isProperty="false">
+ </method>
+ <method id="globalToLocal" returnType="Point" isProperty="false">
+ </method>
+ <method id="localToGlobal" returnType="Point" isProperty="false">
+ </method>
+ <method id="getBounds" returnType="Rectangle" isProperty="false">
+ </method>
+ <method id="getRect" returnType="Rectangle" isProperty="false">
+ </method>
+ <method id="hitTestObject" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="hitTestPoint" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="DisplayObject" isConstructor="true" isProperty="false">
+ </method>
+ <method id="toString" returnType="String" isProperty="false">
+ </method>
+ <method id="addEventListener" returnType="void" isProperty="false">
+ </method>
+ <method id="removeEventListener" returnType="void" isProperty="false">
+ </method>
+ <method id="dispatchEvent" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="hasEventListener" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="willTrigger" returnType="Boolean" isProperty="false">
+ </method>
+ <method id="EventDispatcher" isConstructor="true" isProperty="false">
+ </method>
+ <method id="Object" isConstructor="true" isProperty="false">
+ </method>
+</class>]]></classProperties>
+ <customIcon>
+ <CustomIcon rowByteCount="72" colorDepth="32" width="18" height="18" frameRight="270" frameBottom="270" isTransparent="true" href="haexpx0luj.dat"/>
+ </customIcon>
+</DOMComponentItem>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/META-INF/metadata.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,55 @@
+<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
+<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.0-c060 61.134777, 2010/02/12-17:32:00 ">
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
+ <rdf:Description rdf:about=""
+ xmlns:xmp="http://ns.adobe.com/xap/1.0/">
+ <xmp:CreatorTool>Adobe Flash Professional CS5</xmp:CreatorTool>
+ <xmp:CreateDate>2012-05-09T11:11:28+02:00</xmp:CreateDate>
+ <xmp:MetadataDate>2012-05-09T11:12:56+02:00</xmp:MetadataDate>
+ <xmp:ModifyDate>2012-05-09T11:12:56+02:00</xmp:ModifyDate>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:dc="http://purl.org/dc/elements/1.1/">
+ <dc:format>application/vnd.adobe.fla</dc:format>
+ </rdf:Description>
+ <rdf:Description rdf:about=""
+ xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
+ xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#">
+ <xmpMM:InstanceID>xmp.iid:F77F1174072068118C14885890149FB7</xmpMM:InstanceID>
+ <xmpMM:DocumentID>xmp.did:F77F1174072068118C14885890149FB7</xmpMM:DocumentID>
+ <xmpMM:OriginalDocumentID>xmp.did:F77F1174072068118C14885890149FB7</xmpMM:OriginalDocumentID>
+ <xmpMM:History>
+ <rdf:Seq>
+ <rdf:li rdf:parseType="Resource">
+ <stEvt:action>created</stEvt:action>
+ <stEvt:instanceID>xmp.iid:F77F1174072068118C14885890149FB7</stEvt:instanceID>
+ <stEvt:when>2012-05-09T11:11:28+02:00</stEvt:when>
+ <stEvt:softwareAgent>Adobe Flash Professional CS5</stEvt:softwareAgent>
+ </rdf:li>
+ </rdf:Seq>
+ </xmpMM:History>
+ </rdf:Description>
+ </rdf:RDF>
+</x:xmpmeta>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<?xpacket end="w"?>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/PublishSettings.xml Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,202 @@
+<flash_profiles>
+<flash_profile version="1.0" name="Défaut" current="true">
+ <PublishFormatProperties enabled="true">
+ <defaultNames>1</defaultNames>
+ <flash>1</flash>
+ <projectorWin>0</projectorWin>
+ <projectorMac>0</projectorMac>
+ <html>1</html>
+ <gif>0</gif>
+ <jpeg>0</jpeg>
+ <png>0</png>
+ <qt>0</qt>
+ <rnwk>0</rnwk>
+ <flashDefaultName>1</flashDefaultName>
+ <projectorWinDefaultName>1</projectorWinDefaultName>
+ <projectorMacDefaultName>1</projectorMacDefaultName>
+ <htmlDefaultName>1</htmlDefaultName>
+ <gifDefaultName>1</gifDefaultName>
+ <jpegDefaultName>1</jpegDefaultName>
+ <pngDefaultName>1</pngDefaultName>
+ <qtDefaultName>1</qtDefaultName>
+ <rnwkDefaultName>1</rnwkDefaultName>
+ <flashFileName>player_bab_ldt.swf</flashFileName>
+ <projectorWinFileName>player_bab_ldt.exe</projectorWinFileName>
+ <projectorMacFileName>player_bab_ldt.app</projectorMacFileName>
+ <htmlFileName>player_bab_ldt.html</htmlFileName>
+ <gifFileName>player_bab_ldt.gif</gifFileName>
+ <jpegFileName>player_bab_ldt.jpg</jpegFileName>
+ <pngFileName>player_bab_ldt.png</pngFileName>
+ <qtFileName>player_bab_ldt.mov</qtFileName>
+ <rnwkFileName>player_bab_ldt.smil</rnwkFileName>
+ </PublishFormatProperties>
+ <PublishHtmlProperties enabled="true">
+ <VersionDetectionIfAvailable>0</VersionDetectionIfAvailable>
+ <VersionInfo>10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1;</VersionInfo>
+ <UsingDefaultContentFilename>1</UsingDefaultContentFilename>
+ <UsingDefaultAlternateFilename>1</UsingDefaultAlternateFilename>
+ <ContentFilename>player_bab_ldt.xfl_content.html</ContentFilename>
+ <AlternateFilename>player_bab_ldt.xfl_alternate.html</AlternateFilename>
+ <UsingOwnAlternateFile>0</UsingOwnAlternateFile>
+ <OwnAlternateFilename></OwnAlternateFilename>
+ <Width>550</Width>
+ <Height>400</Height>
+ <Align>0</Align>
+ <Units>0</Units>
+ <Loop>1</Loop>
+ <StartPaused>0</StartPaused>
+ <Scale>0</Scale>
+ <HorizontalAlignment>1</HorizontalAlignment>
+ <VerticalAlignment>1</VerticalAlignment>
+ <Quality>4</Quality>
+ <DeblockingFilter>0</DeblockingFilter>
+ <WindowMode>0</WindowMode>
+ <DisplayMenu>1</DisplayMenu>
+ <DeviceFont>0</DeviceFont>
+ <TemplateFileName>/Users/tc/Library/Application Support/Adobe/Flash CS5/fr_FR/Configuration/HTML/Default.html</TemplateFileName>
+ <showTagWarnMsg>1</showTagWarnMsg>
+ </PublishHtmlProperties>
+ <PublishFlashProperties enabled="true">
+ <TopDown></TopDown>
+ <FireFox></FireFox>
+ <Report>0</Report>
+ <Protect>0</Protect>
+ <OmitTraceActions>0</OmitTraceActions>
+ <Quality>80</Quality>
+ <DeblockingFilter>0</DeblockingFilter>
+ <StreamFormat>0</StreamFormat>
+ <StreamCompress>7</StreamCompress>
+ <EventFormat>0</EventFormat>
+ <EventCompress>7</EventCompress>
+ <OverrideSounds>0</OverrideSounds>
+ <Version>10</Version>
+ <ExternalPlayer>FlashPlayer10</ExternalPlayer>
+ <ActionScriptVersion>3</ActionScriptVersion>
+ <PackageExportFrame>1</PackageExportFrame>
+ <PackagePaths></PackagePaths>
+ <AS3PackagePaths>.</AS3PackagePaths>
+ <AS3ConfigConst>CONFIG::FLASH_AUTHORING="true";</AS3ConfigConst>
+ <DebuggingPermitted>0</DebuggingPermitted>
+ <DebuggingPassword></DebuggingPassword>
+ <CompressMovie>1</CompressMovie>
+ <InvisibleLayer>1</InvisibleLayer>
+ <DeviceSound>0</DeviceSound>
+ <StreamUse8kSampleRate>0</StreamUse8kSampleRate>
+ <EventUse8kSampleRate>0</EventUse8kSampleRate>
+ <UseNetwork>0</UseNetwork>
+ <DocumentClass>player_bab_ldt</DocumentClass>
+ <AS3Strict>2</AS3Strict>
+ <AS3Coach>4</AS3Coach>
+ <AS3AutoDeclare>4096</AS3AutoDeclare>
+ <AS3Dialect>AS3</AS3Dialect>
+ <AS3ExportFrame>1</AS3ExportFrame>
+ <AS3Optimize>1</AS3Optimize>
+ <ExportSwc>0</ExportSwc>
+ <ScriptStuckDelay>15</ScriptStuckDelay>
+ <IncludeXMP>1</IncludeXMP>
+ <HardwareAcceleration>0</HardwareAcceleration>
+ <AS3Flags>4102</AS3Flags>
+ <DefaultLibraryLinkage>rsl</DefaultLibraryLinkage>
+ <RSLPreloaderMethod>wrap</RSLPreloaderMethod>
+ <RSLPreloaderSWF>$(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf</RSLPreloaderSWF>
+ <LibraryPath>
+ <library-path-entry>
+ <swc-path>$(AppConfig)/ActionScript 3.0/libs</swc-path>
+ <linkage>merge</linkage>
+ </library-path-entry>
+ <library-path-entry>
+ <swc-path>$(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc</swc-path>
+ <linkage usesDefault="true">rsl</linkage>
+ <rsl-url>http://fpdownload.adobe.com/pub/swz/tlf/1.0.0.595/textLayout_1.0.0.595.swz</rsl-url>
+ <policy-file-url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</policy-file-url>
+ <rsl-url>textLayout_1.0.0.595.swz</rsl-url>
+ </library-path-entry>
+ </LibraryPath>
+ <LibraryVersions>
+ <library-version>
+ <swc-path>$(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc</swc-path>
+ <feature name="tlfText" majorVersion="1" minorVersion="0" build="595"/>
+ <rsl-url>http://fpdownload.adobe.com/pub/swz/tlf/1.0.0.595/textLayout_1.0.0.595.swz</rsl-url>
+ <policy-file-url>http://fpdownload.adobe.com/pub/swz/crossdomain.xml</policy-file-url>
+ <rsl-url>textLayout_1.0.0.595.swz</rsl-url>
+ </library-version>
+ </LibraryVersions>
+ </PublishFlashProperties>
+ <PublishJpegProperties enabled="true">
+ <Width>550</Width>
+ <Height>400</Height>
+ <Progressive>0</Progressive>
+ <DPI>4718592</DPI>
+ <Size>0</Size>
+ <Quality>80</Quality>
+ <MatchMovieDim>1</MatchMovieDim>
+ </PublishJpegProperties>
+ <PublishRNWKProperties enabled="true">
+ <exportFlash>1</exportFlash>
+ <flashBitRate>0</flashBitRate>
+ <exportAudio>1</exportAudio>
+ <audioFormat>0</audioFormat>
+ <singleRateAudio>0</singleRateAudio>
+ <realVideoRate>100000</realVideoRate>
+ <speed28K>1</speed28K>
+ <speed56K>1</speed56K>
+ <speedSingleISDN>0</speedSingleISDN>
+ <speedDualISDN>0</speedDualISDN>
+ <speedCorporateLAN>0</speedCorporateLAN>
+ <speed256K>0</speed256K>
+ <speed384K>0</speed384K>
+ <speed512K>0</speed512K>
+ <exportSMIL>1</exportSMIL>
+ </PublishRNWKProperties>
+ <PublishGifProperties enabled="true">
+ <Width>550</Width>
+ <Height>400</Height>
+ <Animated>0</Animated>
+ <MatchMovieDim>1</MatchMovieDim>
+ <Loop>1</Loop>
+ <LoopCount></LoopCount>
+ <OptimizeColors>1</OptimizeColors>
+ <Interlace>0</Interlace>
+ <Smooth>1</Smooth>
+ <DitherSolids>0</DitherSolids>
+ <RemoveGradients>0</RemoveGradients>
+ <TransparentOption></TransparentOption>
+ <TransparentAlpha>128</TransparentAlpha>
+ <DitherOption></DitherOption>
+ <PaletteOption></PaletteOption>
+ <MaxColors>255</MaxColors>
+ <PaletteName></PaletteName>
+ </PublishGifProperties>
+ <PublishPNGProperties enabled="true">
+ <Width>550</Width>
+ <Height>400</Height>
+ <OptimizeColors>1</OptimizeColors>
+ <Interlace>0</Interlace>
+ <Transparent>0</Transparent>
+ <Smooth>1</Smooth>
+ <DitherSolids>0</DitherSolids>
+ <RemoveGradients>0</RemoveGradients>
+ <MatchMovieDim>1</MatchMovieDim>
+ <DitherOption></DitherOption>
+ <FilterOption></FilterOption>
+ <PaletteOption></PaletteOption>
+ <BitDepth>24 bits avec Alpha</BitDepth>
+ <MaxColors>255</MaxColors>
+ <PaletteName></PaletteName>
+ </PublishPNGProperties>
+ <PublishQTProperties enabled="true">
+ <Width>550</Width>
+ <Height>400</Height>
+ <MatchMovieDim>1</MatchMovieDim>
+ <UseQTSoundCompression>0</UseQTSoundCompression>
+ <AlphaOption></AlphaOption>
+ <LayerOption></LayerOption>
+ <QTSndSettings>00000000</QTSndSettings>
+ <ControllerOption>0</ControllerOption>
+ <Looping>0</Looping>
+ <PausedAtStart>0</PausedAtStart>
+ <PlayEveryFrame>0</PlayEveryFrame>
+ <Flatten>1</Flatten>
+ </PublishQTProperties>
+</flash_profile>
+</flash_profiles>
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/assets/player_bab_ldt/player_bab_ldt/player_bab_ldt.xfl Wed Jun 27 14:50:52 2012 +0200
@@ -0,0 +1,1 @@
+PROXY-CS5
\ No newline at end of file