23 lines
682 B
Python
23 lines
682 B
Python
import bpy
|
|
|
|
def all_speakers(scene: bpy.types.Scene) -> list[bpy.types.Object]:
|
|
return [obj for obj in scene.objects if obj.type == 'SPEAKER']
|
|
|
|
|
|
def solo_speakers(scene: bpy.types.Scene, solo_group: list[bpy.types.Object]):
|
|
for speaker in all_speakers(scene):
|
|
assert type(speaker.data) is bpy.types.Speaker
|
|
if speaker in solo_group:
|
|
speaker.data.muted = False
|
|
else:
|
|
speaker.data.muted = True
|
|
|
|
speaker.data.update_tag()
|
|
|
|
|
|
def unmute_all_speakers(scene):
|
|
for speaker in all_speakers(scene):
|
|
assert type(speaker.data) is bpy.types.Speaker
|
|
speaker.data.muted = False
|
|
speaker.data.update_tag()
|