jdxi_editor.devel.parse_drum_json ================================= .. py:module:: jdxi_editor.devel.parse_drum_json .. autoapi-nested-parse:: Script to load and parse a Drum JSON file from .msz using JD-Xi's SysExParser. Usage: python3 parse_drum_json.py [path_to_msz_file] [json_filename] .. rubric:: Example python3 parse_drum_json.py tests/ceremony_from_software.msz jdxi_tone_data_19703e00.json Functions --------- .. autoapisummary:: jdxi_editor.devel.parse_drum_json.print_header jdxi_editor.devel.parse_drum_json.print_msg jdxi_editor.devel.parse_drum_json.print_error jdxi_editor.devel.parse_drum_json.print_warning jdxi_editor.devel.parse_drum_json.print_success jdxi_editor.devel.parse_drum_json.load_json_from_msz jdxi_editor.devel.parse_drum_json.parse_drum_json jdxi_editor.devel.parse_drum_json.main Module Contents --------------- .. py:function:: print_header(msg: str) .. py:function:: print_msg(msg: str) .. py:function:: print_error(msg: str) .. py:function:: print_warning(msg: str) .. py:function:: print_success(msg: str) .. py:function:: load_json_from_msz(msz_path: pathlib.Path, json_filename: str) -> Optional[str] Load a JSON file from an .msz archive. :param msz_path: Path to the .msz file :param json_filename: Name of the JSON file to extract :return: JSON string or None if not found .. py:function:: parse_drum_json(json_string: str) -> Optional[Dict[str, Any]] Parse a JSON string using JDXiJsonSysexParser. :param json_string: JSON string to parse :return: Parsed dictionary or None .. py:function:: main() Main function to load and parse drum JSON file.