{ "$schema":              "https://json-schema.org/draft/2020-12/schema",
  "$comment":             "https://schemas.mpai.community/AIF/V3.0/data/AIMMetadata.json",
  "$id":                  "https://schemas.mpai.community/CAE1/V2.5/AIMs/AudioSceneDescription.json",
  "title":                "Audio Scene Description V2.5",
  "Header":               "CAE-ASD-V2.5",

  "Identifier":           {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */"},

  "APIProfile":           "Basic",
  "Execution":            "Exchange",
  "Description":          "Describes an Audio Scene in terms of its composing Audio Objects. The Audio Scene Descriptors input, if present, comes from AIMs of other standards and is not used by the SubAIMs of this Module.",

  "InternalTypes":        [ ],

  "ExternalPorts":        [{"Name": "SpaceTime", "Direction": "Input", "DataType": "OSD-SPT-V1.5", "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "AudioObject", "Direction": "Input", "DataType": "OSD-BAO-V1.5", "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "AudioSceneDescriptors", "Direction": "Input", "DataType": "OSD-BAS-V1.5", "IsOptional": true, "Technology": "Software", "Protocol": "", "IsRemote": false},
                           {"Name": "AudioSceneDescriptors", "Direction": "Output", "DataType": "OSD-BAS-V1.5", "Technology": "Software", "Protocol": "", "IsRemote": false}],
  "SubAIMs":              [{"Header": "CAE-AAT-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-ASL-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-ASE-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-AST-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}},
                           {"Header": "CAE-AMX-V2.5", "Identifier": {"ImplementerID": "/* String assigned by IIDRA */", "ImplementationID": "/* String assigned by Implementer */", "AIMName": "/* The name of the AIM, given by the concatenation of the two strings ImplementerID and ImplementationID, in this order, with no space and no character between them. */", "Relation": "Internal"}}],
  "Topology":             [{"Output": {"AIMName": "", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-AAT-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "CAE-AAT-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-ASL-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "CAE-ASL-V2.5", "DataType": "OSD-OSA-V1.5"}, "Input": {"AIMName": "CAE-ASE-V2.5", "DataType": "OSD-OSA-V1.5"}},
                           {"Output": {"AIMName": "CAE-AAT-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-ASE-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "CAE-ASE-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-AST-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "", "DataType": "OSD-SPT-V1.5"}, "Input": {"AIMName": "CAE-AMX-V2.5", "DataType": "OSD-SPT-V1.5"}},
                           {"Output": {"AIMName": "CAE-AST-V2.5", "DataType": "OSD-BAO-V1.5"}, "Input": {"AIMName": "CAE-AMX-V2.5", "DataType": "OSD-BAO-V1.5"}},
                           {"Output": {"AIMName": "CAE-ASE-V2.5", "DataType": "OSD-BAS-V1.5"}, "Input": {"AIMName": "CAE-AMX-V2.5", "DataType": "OSD-BAS-V1.5"}},
                           {"Output": {"AIMName": "CAE-AMX-V2.5", "DataType": "OSD-BAS-V1.5"}, "Input": {"AIMName": "", "DataType": "OSD-BAS-V1.5"}}],

  "AIMLicence":          "/* AIM Licence offered by the Implementer (AIF-LIC-V3.0): Grant, Term, Updates, Payment, TermsURI - or omit it if the AIM needs no AIM Licence */",

  "Implementations":      [{"ImplementationURI": "/* URI storing Implementation */",
                            "BinaryName":       "/* BinaryName */",
                            "Architecture":     "/* x86 | x86-64 | ARM | ARM64 | MIPS | RISC-V */",
                            "OperatingSystem":  "/* Windows | Linux | MacOS | Debian | Ubuntu | RedHat | Android | Zephyr | RTOS | Oniro | iOS */",
                            "Version":          "/* Version */",
                            "Source":           "/* AIMStorage | MPAIStore | AIMURL */",
                            "Destination":      "/* Destination URI */"}],

  "ResourcePolicies":     [{"Name": "Memory",    "Minimum": "/* GB */",                  "Request": "/* GB */",                  "Maximum": "/* GB */"},
                           {"Name": "CPU:Class", "Minimum": "/* Low | Medium | High */", "Request": "/* Low | Medium | High */", "Maximum": "/* Low | Medium | High */"}],

  "DataXMData":           { },

  "Documentation":        [{"Type": "Specification", "URI": "https://mpai.community/standards/mpai-cae/usc/v2-5/ai-modules/audio-scene-description/"}]}
