+ def set_master_volume(self, value, delta=False, fade=0):
+ [db_gain, self.master_volume] = gain(
+ value + int(delta) * self.master_volume,
+ self.master_volume)
+
+ for music in self.open_files.values():
+ if not (music.is_loaded_playing() or music.is_loaded_paused()):
+ continue
+
+ if fade > 0:
+ music.gain_effects.append(GainEffect(
+ "fade",
+ music.current_audio_segment,
+ music.current_loop,
+ music.sound_position,
+ music.sound_position + fade,
+ gain=db_gain))
+ else:
+ music.set_gain(db_gain)