Organized addons into a folder

This commit is contained in:
Jamie Hardt
2020-09-19 22:03:20 -07:00
parent 1d23efb52a
commit b7a48838a5
4 changed files with 105 additions and 58 deletions

47
sound_objects/__init__.py Normal file
View File

@@ -0,0 +1,47 @@
import bpy
from .operator_add_speakers_to_objects import AddSoundToMeshOperator
from .operator_adm_export import ADMWaveExport
from .operator_wav_import import ImportWav
bl_info = {
"name": "Sound Objects",
"description": "Tools for adding sounds to objects and export to immersive format",
"author": "Jamie Hardt",
"version": (0, 1),
"warning": "Requires `ear` EBU ADM Renderer package to be installed",
"blender": (2, 90, 0)
#"category": "Import-Export"
}
def import_wav_menu_callback(self, context):
self.layout.operator(ImportWav.bl_idname, text="WAV Audio Files (.wav)")
def export_adm_menu_callback(self, context):
self.layout.operator(ADMWaveExport.bl_idname, text="ADM Broadcast-WAVE (.wav)")
def add_sound_to_mesh_menu_callback(self, context):
self.layout.operator(AddSoundToMeshOperator.bl_idname, icon='SPEAKER')
def register():
bpy.utils.register_class(AddSoundToMeshOperator)
bpy.utils.register_class(ADMWaveExport)
bpy.utils.register_class(ImportWav)
bpy.types.TOPBAR_MT_file_import.append(import_wav_menu_callback)
bpy.types.TOPBAR_MT_file_export.append(export_adm_menu_callback)
bpy.types.VIEW3D_MT_object.append(add_sound_to_mesh_menu_callback)
def unregister():
bpy.utils.unregister_class(AddSoundToMeshOperator)
bpy.utils.unregister_class(ADMWaveExport)
bpy.utils.unregister_class(ImportWav)
bpy.types.TOPBAR_MT_file_import.remove(import_wav_menu_callback)
bpy.types.TOPBAR_MT_file_export.remove(export_adm_menu_callback)
bpy.types.VIEW3D_MT_object.remove(add_sound_to_mesh_menu_callback)

View File

@@ -17,14 +17,14 @@ from typing import List
import sys import sys
bl_info = { # bl_info = {
"name": "Add Sounds to Objects", # "name": "Add Sounds to Objects",
"description": "Adds sounds to selected mesh objects", # "description": "Adds sounds to selected mesh objects",
"author": "Jamie Hardt", # "author": "Jamie Hardt",
"version": (0, 21), # "version": (0, 21),
"blender": (2, 90, 0), # "blender": (2, 90, 0),
"category": "Object", # "category": "Object",
} # }
class SoundBank: class SoundBank:
def __init__(self, prefix): def __init__(self, prefix):
@@ -300,20 +300,20 @@ class AddSoundToMeshOperator(Operator):
return {'FINISHED'} return {'FINISHED'}
def menu_func(self, context): # def menu_func(self, context):
self.layout.operator(AddSoundToMeshOperator.bl_idname, icon='SPEAKER') # self.layout.operator(AddSoundToMeshOperator.bl_idname, icon='SPEAKER')
def register(): # def register():
bpy.utils.register_class(AddSoundToMeshOperator) # bpy.utils.register_class(AddSoundToMeshOperator)
bpy.types.VIEW3D_MT_object.append(menu_func) # bpy.types.VIEW3D_MT_object.append(menu_func)
def unregister(): # def unregister():
bpy.utils.unregister_class(AddSoundToMeshOperator) # bpy.utils.unregister_class(AddSoundToMeshOperator)
bpy.types.VIEW3D_MT_object.remove(menu_func) # bpy.types.VIEW3D_MT_object.remove(menu_func)
if __name__ == "__main__": # if __name__ == "__main__":
register() # register()

View File

@@ -29,15 +29,15 @@ from math import sqrt
from dataclasses import dataclass from dataclasses import dataclass
from typing import List, Tuple from typing import List, Tuple
bl_info = { # bl_info = {
"name": "Export ADM Broadcast-WAV File", # "name": "Export ADM Broadcast-WAV File",
"description": "Export a Broadcast-WAV with each speaker as an ADM object", # "description": "Export a Broadcast-WAV with each speaker as an ADM object",
"author": "Jamie Hardt", # "author": "Jamie Hardt",
"version": (0, 23), # "version": (0, 23),
"warning": "Requires `ear` EBU ADM Renderer package to be installed", # "warning": "Requires `ear` EBU ADM Renderer package to be installed",
"blender": (2, 90, 0), # "blender": (2, 90, 0),
"category": "Import-Export", # "category": "Import-Export",
} # }
class FrameInterval: class FrameInterval:
def __init__(self, start_frame, end_frame): def __init__(self, start_frame, end_frame):
@@ -473,20 +473,20 @@ class ADMWaveExport(Operator, ExportHelper):
# Only needed if you want to add into a dynamic menu # Only needed if you want to add into a dynamic menu
def menu_func_export(self, context): # def menu_func_export(self, context):
self.layout.operator(ADMWaveExport.bl_idname, text="ADM Broadcast-WAVE (.wav)") # self.layout.operator(ADMWaveExport.bl_idname, text="ADM Broadcast-WAVE (.wav)")
def register(): # def register():
bpy.utils.register_class(ADMWaveExport) # bpy.utils.register_class(ADMWaveExport)
bpy.types.TOPBAR_MT_file_export.append(menu_func_export) # bpy.types.TOPBAR_MT_file_export.append(menu_func_export)
def unregister(): # def unregister():
bpy.utils.unregister_class(ADMWaveExport) # bpy.utils.unregister_class(ADMWaveExport)
bpy.types.TOPBAR_MT_file_export.remove(menu_func_export) # bpy.types.TOPBAR_MT_file_export.remove(menu_func_export)
if __name__ == "__main__": # if __name__ == "__main__":
register() # register()

View File

@@ -1,17 +1,17 @@
import bpy import bpy
import os import os
bl_info = { # bl_info = {
"name": "Import WAV Files", # "name": "Import WAV Files",
"description": "Import WAV files, with options to automatically pack and Fake user", # "description": "Import WAV files, with options to automatically pack and Fake user",
"author": "Jamie Hardt", # "author": "Jamie Hardt",
"version": (0, 20), # "version": (0, 20),
"blender": (2, 90, 0), # "blender": (2, 90, 0),
"location": "File > Import > WAV Audio Files", # "location": "File > Import > WAV Audio Files",
"warning": "", # used for warning icon and text in addons panel # "warning": "", # used for warning icon and text in addons panel
"support": "COMMUNITY", # "support": "COMMUNITY",
"category": "Import-Export", # "category": "Import-Export",
} # }
def read_some_data(context, filepath, pack, dir, fake): def read_some_data(context, filepath, pack, dir, fake):
@@ -85,22 +85,22 @@ class ImportWav(Operator, ImportHelper):
# Only needed if you want to add into a dynamic menu # Only needed if you want to add into a dynamic menu
def menu_func_import(self, context): # def menu_func_import(self, context):
self.layout.operator(ImportWav.bl_idname, text="WAV Audio Files (.wav)") # self.layout.operator(ImportWav.bl_idname, text="WAV Audio Files (.wav)")
def register(): # def register():
bpy.utils.register_class(ImportWav) # bpy.utils.register_class(ImportWav)
bpy.types.TOPBAR_MT_file_import.append(menu_func_import) # bpy.types.TOPBAR_MT_file_import.append(menu_func_import)
def unregister(): # def unregister():
bpy.utils.unregister_class(ImportWav) # bpy.utils.unregister_class(ImportWav)
bpy.types.TOPBAR_MT_file_import.remove(menu_func_import) # bpy.types.TOPBAR_MT_file_import.remove(menu_func_import)
if __name__ == "__main__": # if __name__ == "__main__":
register() # register()
# test call # test call
# bpy.ops.import_test.wav_file_batch('INVOKE_DEFAULT') # bpy.ops.import_test.wav_file_batch('INVOKE_DEFAULT')