Package flumotion :: Package component :: Package combiners :: Package switch :: Module switch :: Class AVSwitch
[hide private]

Class AVSwitch

source code

                  object --+                        
                           |                        
     common.common.InitMixin --+                    
                               |                    
     extern.log.log.Loggable --+                    
                               |                    
         component.BaseComponent --+                
                                   |                
      feedcomponent010.FeedComponent --+            
                                       |            
      feedcomponent.ParseLaunchComponent --+        
                                           |        
feedcomponent.MultiInputParseLaunchComponent --+    
                                               |    
                                          Switch --+
                                                   |
                                                  AVSwitch
Known Subclasses:

Nested Classes [hide private]

Inherited from Switch: componentMediumClass

Instance Methods [hide private]
 
init(self)
A subclass should do as little as possible in its init method.
source code
 
do_check(self)
Subclasses can implement me to run any checks before the component performs setup.
source code
 
get_pipeline_string(self, properties)
Method that must be implemented by subclasses to produce the gstparse string for the component's pipeline.
source code
 
configure_pipeline(self, pipeline, properties)
Method that can be implemented by subclasses if they wish to interact with the pipeline after it has been created and set on the component.
source code
 
switch_to(self, eater) source code
 
_set_last_timestamp(self) source code
 
_block_cb(self, pad, blocked) source code
 
_block_switch_sink_pads(self, block) source code
 
on_pads_blocked(self) source code
 
_add_pad_probes_for_start_time(self, activeEater) source code
 
_start_time_buffer_probe(self, pad, buffer, eaterName) source code
 
_check_start_times_received(self) source code
 
eaterSetActive(self, feedId) source code

Inherited from Switch: do_pipeline_playing, eventStarted, eventStopped, is_active, switch_to_for_event

Inherited from feedcomponent.MultiInputParseLaunchComponent: get_muxer_string, get_queue_string, unblock_eater

Inherited from feedcomponent.ParseLaunchComponent: add_default_eater_feeder, create_pipeline, get_eater_template, get_feeder_template, parse_pipeline, parse_tmpl, set_pipeline

Inherited from feedcomponent010.FeedComponent: addEffect, attachPadMonitorToFeeder, bus_message_received_cb, cleanup, connect_feeders, do_setup, do_stop, eatFromFD, feedToFD, get_element, get_element_property, get_master_clock, get_pipeline, install_eater_continuity_watch, install_eater_event_probes, make_message_for_gstreamer_error, provide_master_clock, reconnectEater, set_element_property, set_master_clock, stop_pipeline, try_start_pipeline

Inherited from component.BaseComponent: __init__, addMessage, adminCallRemote, check_properties, fixRenamedProperties, getMood, getName, getWorkerName, setMedium, setMood, setShutdownHook, setWorkerName, setup, stop, waitForHappy

Inherited from component.BaseComponent (private): _pollCPU

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __str__

Inherited from extern.log.log.Loggable: __providedBy__, debug, doLog, error, info, log, logFunction, logObjectName, warning, warningFailure

Class Variables [hide private]
  logCategory = 'comb-av-switch'
Implementors can provide a category to log their messages under.

Inherited from feedcomponent.MultiInputParseLaunchComponent: QUEUE_SIZE_BUFFERS

Inherited from feedcomponent.ParseLaunchComponent: DELIMITER, DEPAY_TMPL, EATER_TMPL, FDSRC_TMPL, FEEDER_TMPL, checkOffset, checkTimestamp

Inherited from feedcomponent010.FeedComponent: FEEDER_STATS_UPDATE_FREQUENCY

Inherited from extern.log.log.Loggable: __implemented__, __provides__

Instance Variables [hide private]

Inherited from component.BaseComponent: medium, name

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

init(self)

source code 

A subclass should do as little as possible in its init method. In particular, it should not try to access resources.

Failures during init are marshalled back to the manager through the worker's remote_create method, since there is no component state proxied to the manager yet at the time of init.

Overrides: component.BaseComponent.init
(inherited documentation)

do_check(self)

source code 

Subclasses can implement me to run any checks before the component performs setup.

Messages can be added to the component state's 'messages' list key. Any error messages added will trigger the component going to sad an flumotion.common.errors.ComponentSetupError being raised; do_setup() will not be called.

In the event of a fatal problem that can't be expressed through an error message, this method should raise an exception or return a failure.

It is not necessary to chain up in this function. The return value may be a deferred.

Overrides: component.BaseComponent.do_check
(inherited documentation)

get_pipeline_string(self, properties)

source code 

Method that must be implemented by subclasses to produce the gstparse string for the component's pipeline. Subclasses should not chain up; this method raises a NotImplemented error.

Returns: a new pipeline string representation.

Overrides: feedcomponent.ParseLaunchComponent.get_pipeline_string
(inherited documentation)

configure_pipeline(self, pipeline, properties)

source code 

Method that can be implemented by subclasses if they wish to interact with the pipeline after it has been created and set on the component.

This could include attaching signals and bus handlers.

Overrides: feedcomponent.ParseLaunchComponent.configure_pipeline
(inherited documentation)

switch_to(self, eater)

source code 
Overrides: Switch.switch_to

eaterSetActive(self, feedId)

source code 
Overrides: Switch.eaterSetActive