OK this is well beyond my flash knowledge and was wondering if there is anyone out there that can help. Simply I need to get this Brightcove player working in a flash file, having never worked with AS3 and Classes before I'm at a total loss as to what to do. If its possible (and i know this rather cheeky to ask) could you upload an example .fla
I'm thinking everything I need to know is in the code below but flash has moved on somewhat since i used it a year ago!!
Code:// By use of this code snippet, I agree to the Brightcove Publisher T&C // found at http://corp.brightcove.com/legal/terms_publisher.cfm. /* * To use this class to load your Brightcove player instance, save this code into the root directory * of your project as BrightcovePlayer.as. Then, within your application, you can instantiate this player * using the following syntax: * * var player:BrightcovePlayer = new BrightcovePlayer(); * addChild(player); /// must be added to a display object container, such as a Sprite instance * */ package { import flash.display.Loader; import flash.display.LoaderInfo; import flash.display.Sprite; import flash.events.Event; import flash.events.ProgressEvent; import flash.net.URLRequest; import flash.system.ApplicationDomain; import flash.system.LoaderContext; import flash.system.SecurityDomain; import flash.system.Security; public class BrightcovePlayer extends Sprite { private var bcPlayer:Object; public function BrightcovePlayer() { init(); } private function init():void { var config:Object = new Object(); // change the playerID to load a different player config["playerID"] = 14146705001; config["width"] = 464; config["height"] = 394; Security.allowDomain("http://admin.brightcove.com"); createPlayer(config); } private function onPlayerLoadInit(pEvent:Event):void { var pLoaderInfo:LoaderInfo = pEvent.target as LoaderInfo; var pLoader:Loader = pLoaderInfo.loader; var pPlayer:Sprite = pLoaderInfo.content as Sprite; if (bcPlayer && pPlayer != bcPlayer) { if (bcPlayer.parent) { bcPlayer.parent.removeChild(bcPlayer); } } bcPlayer = pPlayer; addChild(bcPlayer as Sprite); if (contains(pLoader)) removeChild(pLoader); } private function onPlayerLoadProgress(pEvent:ProgressEvent):void { // place preload feedback here for shell movie } private function createPlayer(config:Object):void { var cacheServerServices:String = "http://c.brightcove.com/services"; var cdnURL:String = "http://admin.brightcove.com"; var publisherID:String = "1815805388"; var configItems:String = ""; for (var i:String in config) { if (i == "flashID" || i == "width" || i == "height") continue; configItems += "&" + i + "=" + escape(config[i]); } var file:String = cacheServerServices + "/viewer/federated_f9/" + config["playerID"] + "?isVid=1&isUI=1" + "&flashID="+escape(config["flashID"])+ "&playerWidth="+escape(config["width"])+ "&playerHeight="+escape(config["height"])+ "&publisherID="+escape(publisherID)+ configItems; var player:Loader = new Loader(); addChild(player); player.contentLoaderInfo.addEventListener(Event.INIT, onPlayerLoadInit); player.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onPlayerLoadProgress); var context:LoaderContext = new LoaderContext(); context.applicationDomain = ApplicationDomain.currentDomain; player.load(new URLRequest(file), context); } public function onTemplateLoaded():void { dispatchEvent(new Event("templateLoaded")); } public function getModule(pModule:String):Object { return Object(bcPlayer).getModule(pModule); } } }




Reply With Quote
