Que rechercher pour régler le volume.
Je vais le faire avec les deux ci-dessus.
Je veux que vous le fassiez sans permission, donc après l'avoir démarré, laissez le Timer bouger de manière semi-permanente comme ça.
Le volume de sortie (%) est placé dans la variable de la boîte Set Speaker Vol. Après cela, réglez le volume à chaque fois à l'intervalle défini.
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)
Pour le démarrer, cochez cet indicateur à côté du bouton de lecture, ou si vous insérez un plug-in, l'application commencera à s'exécuter automatiquement au démarrage de Pepper.
Le volume d'origine est mémorisé lorsque Config est chargé et renvoyé lorsque l'application est fermée. Si vous appuyez 4 fois sur le pare-chocs arrière dans les 5 secondes après avoir touché votre tête, le volume sera rétabli et l'application se terminera.
[Bibliothèque de robots] de Robot Start (https://robo-lib.com/repositories/summary/42) https://robo-lib.com/repositories/summary/42
Recommended Posts