diff options
author | MaZderMind <git@mazdermind.de> | 2016-08-05 16:26:19 +0200 |
---|---|---|
committer | MaZderMind <git@mazdermind.de> | 2016-08-05 16:26:19 +0200 |
commit | 59f0abcf365e7c80bb51912d95ccc6d262d759c8 (patch) | |
tree | 6522358a4ce194736645f8e15b6425065ebb2714 /voctocore/lib | |
parent | 73a800f74b8a606ce1e970243cc5e707046f0ef6 (diff) | |
parent | 24d3c9a08fd5e02998ba965642d5fd934f525466 (diff) |
Merge branch 'default-composite'
Diffstat (limited to 'voctocore/lib')
-rw-r--r-- | voctocore/lib/commands.py | 10 | ||||
-rw-r--r-- | voctocore/lib/videomix.py | 29 |
2 files changed, 36 insertions, 3 deletions
diff --git a/voctocore/lib/commands.py b/voctocore/lib/commands.py index 64d1c57..bfe3168 100644 --- a/voctocore/lib/commands.py +++ b/voctocore/lib/commands.py @@ -115,9 +115,13 @@ class ControlServerCommands(object): mode = decodeEnumName(CompositeModes, mode_name_or_id) self.pipeline.vmix.setCompositeMode(mode) - status = self._get_composite_status() - return NotifyResponse('composite_mode', status) - + composite_status = self._get_composite_status() + video_status = self._get_video_status() + return [ + NotifyResponse('composite_mode', composite_status), + NotifyResponse('video_status', *video_status) + ] + def set_videos_and_composite(self, src_a_name_or_id, src_b_name_or_id, mode_name_or_id): if src_a_name_or_id != '*': src_a_id = decodeName(self.sources, src_a_name_or_id) diff --git a/voctocore/lib/videomix.py b/voctocore/lib/videomix.py index 7ff98c2..2fa9200 100644 --- a/voctocore/lib/videomix.py +++ b/voctocore/lib/videomix.py @@ -296,6 +296,33 @@ class VideoMix(object): mixerpad.set_property('alpha', state.alpha) mixerpad.set_property('zorder', state.zorder) + def selectCompositeModeDefaultSources(self): + sectionNames = { + CompositeModes.fullscreen: 'fullscreen', + CompositeModes.side_by_side_equal: 'side-by-side-equal', + CompositeModes.side_by_side_preview: 'side-by-side-preview', + CompositeModes.picture_in_picture: 'picture-in-picture' + } + + compositeModeName = self.compositeMode.name + sectionName = sectionNames[self.compositeMode] + + try: + defSource = Config.get(sectionName, 'default-a') + self.setVideoSourceA(self.names.index(defSource)) + self.log.info('Changing sourceA to default of Mode %s: %s', compositeModeName, defSource) + except Exception as e: + print(e) + pass + + try: + defSource = Config.get(sectionName, 'default-b') + self.setVideoSourceB(self.names.index(defSource)) + self.log.info('Changing sourceB to default of Mode %s: %s', compositeModeName, defSource) + except Exception as e: + print(e) + pass + def on_handoff(self, object, buffer): if self.padStateDirty: self.padStateDirty = False @@ -335,6 +362,8 @@ class VideoMix(object): def setCompositeMode(self, mode): self.compositeMode = mode + + self.selectCompositeModeDefaultSources() self.recalculateMixerState() def getCompositeMode(self): |