def periodic(): """ The periodic sound callback. This is called at around 20hz, and is responsible for adjusting the volume of the playing music if necessary, and also for calling the periodic functions of midi and the various channels, which then may play music. """ global pcm_volume if not pcm_ok: return False try: for c in all_channels: c.periodic() pss.periodic() # Perform a synchro-start if necessary. need_ss = False for c in all_channels: if c.synchro_start and c.wait_stop: need_ss = False break if c.synchro_start and not c.wait_stop: need_ss = True if need_ss: pss.unpause_all() for c in all_channels: c.synchro_start = False # Now, consider adjusting the volume of the channel. volumes = renpy.game.preferences.volumes for c in all_channels: vol = c.chan_volume * volumes[c.mixer] if vol != c.actual_volume: pss.set_volume(c.number, vol) c.actual_volume = vol except: if renpy.config.debug_sound: raise
def periodic(): """ The periodic sound callback. This is called at around 20hz, and is responsible for adjusting the volume of the playing music if necessary, and also for calling the periodic functions of midi and the various channels, which then may play music. """ global pcm_volume if not pcm_ok: return False try: for c in all_channels: c.periodic() pss.periodic() # Perform a synchro-start if necessary. need_ss = False for c in all_channels: if c.synchro_start and c.wait_stop: need_ss = False break if c.synchro_start and not c.wait_stop: need_ss = True if need_ss: pss.unpause_all() for c in all_channels: c.synchro_start = False except: if renpy.config.debug_sound: raise
def periodic(): """ The periodic sound callback. This is called at around 20hz, and is responsible for adjusting the volume of the playing music if necessary, and also for calling the periodic functions of midi and the various channels, which then may play music. """ global pcm_volume global old_emphasized if not pcm_ok: return False try: # A list of emphasized channels. emphasize_channels = [ ] emphasized = False for i in renpy.config.emphasize_audio_channels: c = get_channel(i) emphasize_channels.append(c) if c.get_playing(): emphasized = True if not renpy.game.preferences.emphasize_audio: emphasized = False if emphasized and not old_emphasized: vol = renpy.config.emphasize_audio_volume elif not emphasized and old_emphasized: vol = 1.0 else: vol = None old_emphasized = emphasized if vol is not None: for c in all_channels: if c in emphasize_channels: continue c.set_secondary_volume(vol, renpy.config.emphasize_audio_time) for c in all_channels: c.periodic() pss.periodic() # Perform a synchro-start if necessary. need_ss = False for c in all_channels: if c.synchro_start and c.wait_stop: need_ss = False break if c.synchro_start and not c.wait_stop: need_ss = True if need_ss: pss.unpause_all() for c in all_channels: c.synchro_start = False except: if renpy.config.debug_sound: raise
def periodic(): """ The periodic sound callback. This is called at around 20hz, and is responsible for adjusting the volume of the playing music if necessary, and also for calling the periodic functions of midi and the various channels, which then may play music. """ global pcm_volume global old_emphasized if not pcm_ok: return False try: # A list of emphasized channels. emphasize_channels = [ ] emphasized = False for i in renpy.config.emphasize_audio_channels: c = get_channel(i) emphasize_channels.append(c) if c.get_playing(): emphasized = True if emphasized and not old_emphasized: vol = renpy.config.emphasize_audio_volume elif not emphasized and old_emphasized: vol = 1.0 else: vol = None if not renpy.game.preferences.emphasize_audio: emphasized = False old_emphasized = emphasized if vol is not None: for c in all_channels: if c in emphasize_channels: continue c.set_secondary_volume(vol, renpy.config.emphasize_audio_time) for c in all_channels: c.periodic() pss.periodic() # Perform a synchro-start if necessary. need_ss = False for c in all_channels: if c.synchro_start and c.wait_stop: need_ss = False break if c.synchro_start and not c.wait_stop: need_ss = True if need_ss: pss.unpause_all() for c in all_channels: c.synchro_start = False except: if renpy.config.debug_sound: raise