Package flumotion :: Package component :: Package misc :: Package kuscheduler :: Module kuscheduler
[hide private]

Source Code for Module flumotion.component.misc.kuscheduler.kuscheduler

 1  # -*- Mode: Python -*- 
 2  # vi:si:et:sw=4:sts=4:ts=4 
 3   
 4  # Flumotion - a streaming media server 
 5  # Copyright (C) 2004,2005,2006,2007,2008,2009 Fluendo, S.L. 
 6  # Copyright (C) 2010,2011 Flumotion Services, S.A. 
 7  # All rights reserved. 
 8  # 
 9  # This file may be distributed and/or modified under the terms of 
10  # the GNU Lesser General Public License version 2.1 as published by 
11  # the Free Software Foundation. 
12  # This file is distributed without any warranty; without even the implied 
13  # warranty of merchantability or fitness for a particular purpose. 
14  # See "LICENSE.LGPL" in the source distribution for more information. 
15  # 
16  # Headers in this file shall remain intact. 
17   
18  import gst 
19   
20  from flumotion.common.i18n import gettexter 
21  from flumotion.component import feedcomponent 
22  from flumotion.component.effects.kuscheduler import kuscheduler 
23   
24  __all__ = ['KeyUnitsScheduler'] 
25  __version__ = "$Rev$" 
26  T_ = gettexter() 
27   
28   
29 -class KeyUnitsScheduler(feedcomponent.ParseLaunchComponent):
30 logCategory = 'keyunits-scheduler' 31
32 - def get_pipeline_string(self, properties):
33 return 'identity silent=true name=identity'
34
35 - def configure_pipeline(self, pipeline, properties):
36 self.interval = properties.get('interval', 10000) * gst.MSECOND 37 38 identity = pipeline.get_by_name("identity") 39 # Add key units scheduler 40 scheduler = kuscheduler.KeyUnitsScheduler('video-kuscheduler', 41 identity.get_pad("src"), pipeline, self.interval) 42 self.addEffect(scheduler) 43 scheduler.plug()
44