{
  "Identifier": {
    "ImplementerID": "/* String assigned by IIDRA */",
    "Specification": {
      "Standard": "MPAI-CAE",
      "AIW": "",
      "AIM": "AudioSceneDescription",
      "Version": "2.2"
    }
  },
  "Description": "This AIM implements Audio Scene Description function.",
  "Types": [
    {
      "Name": "MicrophoneArrayGeometry_t",
      "Type": "uint8[]"
    },
    {
      "Name": "Audio_t",
      "Type": "uint16[]"
    },
    {
      "Name": "ArrayAudio_t",
      "Type": "Audio_t[]"
    },
    {
      "Name": "AudioSceneDescriptors_t",
      "Type": " uint8[]"
    }
  ],
  "Ports": [
    {
      "Name": "MicrophoneArrayGeometry1",
      "Direction": "InputOutput",
      "RecordType": "MicrophoneArrayGeometry_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "MicrophoneArrayGeometry2",
      "Direction": "InputOutput",
      "RecordType": "MicrophoneArrayGeometry_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "MicrophoneArrayGeometry3",
      "Direction": "InputOutput",
      "RecordType": "MicrophoneArrayGeometry_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "MicrophoneArrayGeometry4",
      "Direction": "InputOutput",
      "RecordType": "MicrophoneArrayGeometry_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "MultichannelAudio",
      "Direction": "InputOutput",
      "RecordType": "ArrayAudio_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "AudioSceneDescriptors",
      "Direction": "OutputInput",
      "RecordType": "AudioSceneDescriptors_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    }
  ],
  "SubAIMs": [
    {
      "Name": "AudioAnalysisTransform",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "AudioAnalysisTransform",
          "Version": "2.1"
        }
      }
    },
    {
      "Name": "AudioSourceLocalisation",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "AudioSourceLocalisation",
          "Version": "2.1"
        }
      }
    },
    {
      "Name": "AudioSeparationAndEnhancement",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "AudioSeparationAndEnhancement",
          "Version": "2"
        }
      }
    },
    {
      "Name": "AudioSynthesisTransform",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "AudioSynthesisTransform",
          "Version": "2"
        }
      }
    },
    {
      "Name": "AudioDescriptionMultiplexing",
      "Identifier": {
        "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "AudioDescriptionMultiplexing",
          "Version": "2"
        }
      }
    }
  ],
  "Topology": [
    {
      "Output": {
        "AIMName": "",
        "PortName": "MultichannelAudio"
      },
      "Input": {
        "AIMName": "AudioAnalysisTransform",
        "PortName": "MultichannelAudio"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "MicrophoneArrayGeometry4"
      },
      "Input": {
        "AIMName": "AudioSourceLocalisation",
        "PortName": "MicrophoneArrayGeometry4"
      }
    },
    {
      "Output": {
        "AIMName": "AudioAnalysisTransform",
        "PortName": "TransformMultichannelAudio"
      },
      "Input": {
        "AIMName": "AudioSourceLocalisation",
        "PortName": "TransformMultichannelAudio"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "MicrophoneArrayGeometry3"
      },
      "Input": {
        "AIMName": "AudioSeparationAndEnhancement",
        "PortName": "MicrophoneArrayGeometry3"
      }
    },
    {
      "Output": {
        "AIMName": "AudioSourceLocalisation",
        "PortName": "SpatialAttitudes"
      },
      "Input": {
        "AIMName": "AudioSeparationAndEnhancement",
        "PortName": "SpatialAttitudes"
      }
    },
    {
      "Output": {
        "AIMName": "AudioAnalysisTransform",
        "PortName": "TransformMultichannelAudio"
      },
      "Input": {
        "AIMName": "AudioSeparationAndEnhancement",
        "PortName": "TransformMultichannelAudio"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "MicrophoneArrayGeometry2"
      },
      "Input": {
        "AIMName": "AudioSynthesisTransform",
        "PortName": "MicrophoneArrayGeometry2"
      }
    },
    {
      "Output": {
        "AIMName": "AudioSeparationAndEnhancement",
        "PortName": "TransformEnhancedAudio"
      },
      "Input": {
        "AIMName": "AudioSynthesisTransform",
        "PortName": "TransformEnhancedAudio"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "MicrophoneArrayGeometry1"
      },
      "Input": {
        "AIMName": "AudioSynthesisTransform",
        "PortName": "MicrophoneArrayGeometry1"
      }
    },
    {
      "Output": {
        "AIMName": "AudioSynthesisTransform",
        "PortName": "EnhancedAudioObjects"
      },
      "Input": {
        "AIMName": "AudioDescriptionMultiplexing",
        "PortName": "EnhancedAudioObjects"
      }
    },
    {
      "Output": {
        "AIMName": "AudioDescriptionMultiplexing",
        "PortName": "AudioSceneDescriptors"
      },
      "Input": {
        "AIMName": "",
        "PortName": "AudioSceneDescriptors"
      }
    }
  ],
  "Implementations": [],
  "Documentation": [
    {
      "Type": "Tutorial",
      "URI": "https://mpai.community/standards/MPAI-PAF/"
    }
  ]
}