Advertisement
Guest User

Простейший OSMF-плеер

a guest
Jan 18th, 2011
469
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package ru.denivip.stats
  2. {
  3.     import flash.events.TimerEvent;
  4.     import flash.utils.Timer;
  5.     import flash.utils.clearTimeout;
  6.     import flash.utils.setTimeout;
  7.    
  8.     import org.osmf.elements.VideoElement;
  9.     import org.osmf.events.MediaElementEvent;
  10.     import org.osmf.media.MediaElement;
  11.     import org.osmf.media.MediaFactoryItem;
  12.     import org.osmf.media.MediaResourceBase;
  13.     import org.osmf.media.PluginInfo;
  14.     import org.osmf.traits.MediaTraitType;
  15.     import org.osmf.traits.TimeTrait;
  16.     import org.osmf.traits.TraitEventDispatcher;
  17.  
  18.     public class StatsPluginInfo extends PluginInfo
  19.     {
  20.         public static var NS:String = 'ru.denivip.stats';
  21.        
  22.         private var timer:Timer;
  23.        
  24.         private var media:MediaElement;
  25.        
  26.         public function StatsPluginInfo()
  27.         {
  28.             var items:Vector.<MediaFactoryItem> = new Vector.<MediaFactoryItem>();
  29.             var item:MediaFactoryItem = new MediaFactoryItem(NS, canHandleResourceFunction, mediaElementCreationFunction);
  30.             items.push(item);
  31.            
  32.             super(items, creationNotificationFunction);
  33.         }
  34.        
  35.         private function canHandleResourceFunction(resource:MediaResourceBase):Boolean
  36.         {
  37.             return true;
  38.         }
  39.        
  40.         private function mediaElementCreationFunction():MediaElement
  41.         {
  42.             return new VideoElement();
  43.         }
  44.        
  45.         private function creationNotificationFunction(media:MediaElement):void
  46.         {
  47.             trace('created media element');
  48.            
  49.             var tracker:StatsTracker = new StatsTracker(media);
  50.            
  51.             if (media.hasTrait(MediaTraitType.TIME)) {
  52.                 tracker.start();
  53.             }
  54.         }
  55.     }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement