diff options
-rw-r--r-- | voctocore/default-config.ini | 3 | ||||
-rw-r--r-- | voctocore/lib/audiomix.py | 4 | ||||
-rw-r--r-- | voctocore/lib/pipeline.py | 8 | ||||
-rw-r--r-- | voctogui/lib/ui.py | 16 |
4 files changed, 22 insertions, 9 deletions
diff --git a/voctocore/default-config.ini b/voctocore/default-config.ini index 4c85abb..168e3e8 100644 --- a/voctocore/default-config.ini +++ b/voctocore/default-config.ini @@ -5,6 +5,9 @@ audiocaps=audio/x-raw,format=S16LE,channels=2,layout=interleaved,rate=48000 ; tcp-ports will be 10000,10001,10002 sources=cam1,cam2,grabber +; set the initial audio source +audiosource=cam1 + [output-buffers] ; voctocore has a buffer on all video-outputs, that store video-frames for your diff --git a/voctocore/lib/audiomix.py b/voctocore/lib/audiomix.py index 37376fd..f35dd0c 100644 --- a/voctocore/lib/audiomix.py +++ b/voctocore/lib/audiomix.py @@ -8,10 +8,10 @@ from lib.clock import Clock class AudioMix(object): - def __init__(self): + def __init__(self, source=0): self.log = logging.getLogger('AudioMix') - self.selectedSource = 0 + self.selectedSource = source self.caps = Config.get('mix', 'audiocaps') self.names = Config.getlist('mix', 'sources') diff --git a/voctocore/lib/pipeline.py b/voctocore/lib/pipeline.py index 1a1349e..6213ac6 100644 --- a/voctocore/lib/pipeline.py +++ b/voctocore/lib/pipeline.py @@ -60,8 +60,14 @@ class Pipeline(object): self.log.info('Creating Videmixer') self.vmix = VideoMix() + # check if there is an audio source preconfigured + try: + audiosource = names.index(Config.get('mix', 'audiosource')) + except: + audiosource = 0 + self.log.info('Creating Audiomixer') - self.amix = AudioMix() + self.amix = AudioMix(audiosource) port = 16000 self.log.info('Creating Mixer-Background VSource at tcp-port %u', port) diff --git a/voctogui/lib/ui.py b/voctogui/lib/ui.py index 92d0692..a8fb6a9 100644 --- a/voctogui/lib/ui.py +++ b/voctogui/lib/ui.py @@ -58,12 +58,16 @@ class Ui(UiBuilder): uibuilder=self ) - drawing_area = self.find_widget_recursive(self.win, 'combo_audio') - self.audio_selector_controller = AudioSelectorController( - drawing_area, - win=self.win, - uibuilder=self - ) + # check if there is a fixed audio source configured. + # if so, remove the combo-box entirely instead of setting it up. + if Config.has_option('mix', 'audiosource'): + drawing_area.remove(self.find_widget_recursive(self.win, 'box_audio')) + else: + self.audio_selector_controller = AudioSelectorController( + drawing_area=self.find_widget_recursive(self.win, 'combo_audio'), + win=self.win, + uibuilder=self + ) # Setup Toolbar Controllers toolbar = self.find_widget_recursive(self.win, 'toolbar') |