Worauf Sie achten müssen, um die Lautstärke anzupassen.
Ich werde es mit den beiden oben genannten schaffen.
--Noisy Umgebung-> Maximale Lautstärke
Ich möchte, dass Sie dies ohne Erlaubnis tun. Lassen Sie den Timer nach dem Starten so semi-permanent bewegen.
Die Ausgangslautstärke (%) wird in die Variable der Box Set Speaker Vol. Eingegeben. Stellen Sie danach die Lautstärke jedes Mal im festgelegten Intervall ein.
Config.py
def onLoad(self):
self.timer = None
self.nFacesDetected = -1
self.audiodevice = ALProxy("ALAudioDevice")
self.defaultVol = self.audiodevice.getOutputVolume()
self.vol = self.defaultVol
def onUnload(self):
self.cancelTimer()
def cancelTimer(self):
if self.timer:
self.timer.stop()
self.timer = None
def onTimer(self):
self.timerOutput()
def startTimer(self):
import qi
self.timer = qi.PeriodicTask()
self.timer.setCallback(self.onTimer)
self.timer.setUsPeriod(int(self.getParameter("Period (s)") * 1000 * 1000))
self.timer.start(True)
def onInput_onStart(self):
self.cancelTimer()
self.startTimer()
def onInput_onStop(self):
self.audiodevice.setOutputVolume(self.defaultVol)
if self.timer and self.timer.isRunning():
self.onStopped()
self.onUnload()
def onInput_inputFaceTracked(self, p):
if(len(p) > 0):
if(self.nFacesDetected != len(p[1]) -1): # an additional array has been placed at the end for time
self.nFacesDetected = len(p[1]) -1 # filtered info and has to be substracted when counting faces
self._JudgeOutput( self.nFacesDetected )
else:
if(self.nFacesDetected != 0):
self.nFacesDetected = 0
self._JudgeOutput( self.nFacesDetected )
def _JudgeOutput(self, envMaterial):
self.logger.info("FrontMicEnergy:%d" % self.audiodevice.getFrontMicEnergy())
self.logger.info("envMaterial:%d" % envMaterial)
if (self.audiodevice.getFrontMicEnergy() >= 1800):
self.EnvironmentVolume(100)
elif envMaterial == 0:
self.EnvironmentVolume(self.defaultVol)
elif envMaterial == 1:
self.EnvironmentVolume(60)
elif envMaterial >= 2 and envMaterial < 4:
self.EnvironmentVolume(80)
elif envMaterial >= 4:
self.EnvironmentVolume(100)
Aktivieren Sie zum Starten dieses Flag neben der Wiedergabetaste. Wenn Sie ein Plug-In einfügen, wird die App automatisch gestartet, wenn Pepper gestartet wird.
Das ursprüngliche Volume wird beim Laden von Config gespeichert und beim Schließen der Anwendung zurückgegeben. Wenn Sie den hinteren Stoßfänger innerhalb von 5 Sekunden nach dem Berühren Ihres Kopfes viermal drücken, wird die Lautstärke wiederhergestellt und die Anwendung beendet.
[Robot Library] von Robot Start (https://robo-lib.com/repositories/summary/42) https://robo-lib.com/repositories/summary/42