Moved setStdin to BaseClass

This commit is contained in:
B-Watch 2020-07-08 11:55:46 +02:00
parent 35ada90130
commit ba2fab398e
4 changed files with 7 additions and 10 deletions

View file

@ -18,6 +18,7 @@ import time
import logging
import threading
from abc import ABC, abstractmethod
from boswatch.utils import paths
from boswatch.processManager import ProcessManager
logging.debug("- %s loaded", __name__)
@ -65,7 +66,7 @@ class InputBase(ABC):
logging.debug("Add received data to queue")
print(data)
def startmm(self, decoderConfig):
def startmm(self, decoderConfig, StdIn):
mmProc = ProcessManager(str(decoderConfig.get("mmPath", default="multimon-ng")), textMode=True)
if decoderConfig.get("fms", default=0):
mmProc.addArgument("-a FMSFSK")
@ -81,4 +82,6 @@ class InputBase(ABC):
mmProc.addArgument("-C " + str(decoderConfig.get("mmChar")))
mmProc.addArgument("-f alpha")
mmProc.addArgument("-t raw -")
mmProc.setStdin(StdIn)
mmProc.setStderr(open(paths.LOG_PATH + "multimon-ng.log", "a"))
return mmProc

View file

@ -40,9 +40,7 @@ class LineInInput(InputBase):
lineInProc.setStderr(open(paths.LOG_PATH + "asla.log", "a"))
lineInProc.start()
mmProc = self.startmm(decoderConfig)
mmProc.setStdin(lineInProc.stdout)
mmProc.setStderr(open(paths.LOG_PATH + "multimon-ng.log", "a"))
mmProc = self.startmm(decoderConfig, lineInProc.stdout)
mmProc.start()
logging.info("start decoding")

View file

@ -39,9 +39,7 @@ class PulseAudioInput(InputBase):
PulseAudioProc.setStderr(open(paths.LOG_PATH + "pulseaudio.log", "a"))
PulseAudioProc.start()
mmProc = self.startmm(decoderConfig)
mmProc.setStdin(PulseAudioProc.stdout)
mmProc.setStderr(open(paths.LOG_PATH + "multimon-ng.log", "a"))
mmProc = self.startmm(decoderConfig, PulseAudioProc.stdout)
mmProc.start()
logging.info("start decoding")

View file

@ -41,9 +41,7 @@ class SdrInput(InputBase):
sdrProc.setStderr(open(paths.LOG_PATH + "rtl_fm.log", "a"))
sdrProc.start()
mmProc = self.startmm(decoderConfig)
mmProc.setStdin(sdrProc.stdout)
mmProc.setStderr(open(paths.LOG_PATH + "multimon-ng.log", "a"))
mmProc = self.startmm(decoderConfig, sdrProc.stdout)
mmProc.start()
logging.info("start decoding")