Package flumotion :: Package component :: Package common :: Package avproducer :: Module admin_gtk
[hide private]

Source Code for Module flumotion.component.common.avproducer.admin_gtk

 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 os 
19   
20  from flumotion.component.base import admin_gtk 
21  from flumotion.component.effects.volume.admin_gtk import VolumeAdminGtkNode 
22  from flumotion.component.effects.deinterlace.admin_gtk \ 
23      import DeinterlaceAdminGtkNode 
24  from flumotion.component.effects.videoscale.admin_gtk \ 
25      import VideoscaleAdminGtkNode 
26   
27  __version__ = "$Rev$" 
28   
29   
30 -class AVProducerAdminGtk(admin_gtk.BaseAdminGtk):
31
32 - def setup(self):
33 volume = VolumeAdminGtkNode(self.state, self.admin, 34 'inputVolume', 'Input Volume') 35 self.nodes['Volume'] = volume 36 deinterlace = DeinterlaceAdminGtkNode(self.state, self.admin, 37 'deinterlace', 'Deinterlacing') 38 self.nodes['Deinterlace'] = deinterlace 39 if 'FLU_VIDEOSCALE_DEBUG' in os.environ: 40 videoscale = VideoscaleAdminGtkNode(self.state, self.admin, 41 'videoscale', 'Video scaling') 42 self.nodes['Videoscale'] = videoscale 43 return admin_gtk.BaseAdminGtk.setup(self)
44
45 - def component_volumeChanged(self, channel, rms, peak, decay):
46 volume = self.nodes['Volume'] 47 volume.volumeChanged(channel, rms, peak, decay)
48
49 - def component_effectVolumeSet(self, effect, volume):
50 """ 51 @param volume: volume multiplier between 0.0 and 4.0 52 @type volume: float 53 """ 54 if effect != 'inputVolume': 55 self.warning('Unknown effect %s in %r' % (effect, self)) 56 return 57 v = self.nodes['Volume'] 58 v.volumeSet(volume)
59
60 - def component_effectModeSet(self, effect, mode):
61 """ 62 @param mode: deinterlace mode 63 @type volume: string 64 """ 65 if effect != 'deinterlace': 66 self.warning('Unknown effect %s in %r' % (effect, self)) 67 return 68 v = self.nodes['Deinterlace'] 69 v.modeSet(mode)
70
71 - def component_effectMethodSet(self, effect, mode):
72 """ 73 @param mode: deinterlace method 74 @type volume: string 75 """ 76 if effect != 'deinterlace': 77 self.warning('Unknown effect %s in %r' % (effect, self)) 78 return 79 v = self.nodes['Deinterlace'] 80 v.methodSet(mode)
81
82 - def component_effectWidthSet(self, effect, width):
83 if effect != 'videoscale': 84 self.warning('Unknown effect %s in %r' % (effect, self)) 85 return 86 v = self.nodes['Videoscale'] 87 v.widthSet(width)
88