{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://mpai.community/standards/resources/MPAI-AIF/V2.0/AIW-AIM-metadata.schema.json",
  "title": "SpeechRestorationSystem",
  "Identifier": {
    "ImplementerID": "/* String assigned by IIDRA */",
    "Specification": {
      "Standard": "MPAI-CAE",
      "AIW": "",
      "AIM": "CAE-SRS",
      "Version": "2.2"
    }
  },
  "APIProfile": "Basic",
  "Description": "This AIW implements Speech Reconding Sysstem AIW",
  "Types": [
    {
      "Name": "SpeechObject_t",
      "Type": "uint8[]"
    },
    {
      "Name": "TextObject_t",
      "Type": "uint[]"
    }
  ],
  "Ports": [
    {
      "Name": "AudioSegmentsForModelling",
      "Direction": "InputOutput",
      "RecordType": "SpeechObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "TextList",
      "Direction": "InputOutput",
      "RecordType": "TextObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "NeuralNetworkSpeechModel",
      "Direction": "InputOutput",
      "RecordType": "NNModel_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "DamagedSegments",
      "Direction": "InputOutput",
      "RecordType": "SpeechObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "DamagedList",
      "Direction": "InputOutput",
      "RecordType": "TextObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "SynthesisedSpeech",
      "Direction": "OutputInput",
      "RecordType": "SpeechObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    },
    {
      "Name": "RestoredSegment",
      "Direction": "OutputInput",
      "RecordType": "SpeechObject_t",
      "Technology": "Software",
      "Protocol": "",
      "IsRemote": false
    }
  ],
  "SubAIMs": [
    {
      "Name": "SpeechModelCreation",
      "Identifier": {
      "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "SpeechModelCreation",
          "Version": "2.2"
        }
      }
    },
    {
      "Name": "SpeechSynthesisforRestoration",
      "Identifier": {
      "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-MMC",
          "AIW": "",
          "AIM": "TextToSpeech",
          "Version": "2.2"
        }
      }
    },
    {
      "Name": "SpeechRestorationAssembly",
      "Identifier": {
      "ImplementerID": "/* String assigned by IIDRA */",
        "Specification": {
          "Standard": "MPAI-CAE",
          "AIW": "",
          "AIM": "SpeechRestorationAssembly",
          "Version": "2.2"
        }
      }
    }
  ],
  "Topology": [
    {
      "Output": {
        "AIMName": "",
        "PortName": "AudioSegmentforModelling"
      },
      "Input": {
        "AIMName": "SpeechModelCreation",
        "PortName": "AudioSegmentforModelling"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "TextList"
      },
      "Input": {
        "AIMName": "TextToSpeech",
        "PortName": "TextList"
      }
    },
    {
      "Output": {
        "AIMName": "SpeechModelCreation",
        "PortName": "NeuralNetworkSpeechModel"
      },
      "Input": {
        "AIMName": "TextToSpeech",
        "PortName": "NeuralNetworkSpeechModel"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "DamagedSegment"
      },
      "Input": {
        "AIMName": "SpeechRestorationAssermbly",
        "PortName": "DamagedSegment"
      }
    },
    {
      "Output": {
        "AIMName": "",
        "PortName": "DamagedList"
      },
      "Input": {
        "AIMName": "SpeechRestorationAssermbly",
        "PortName": "DamagedList"
      }
    },
    {
      "Output": {
        "AIMName": "TextToSpeech",
        "PortName": "SynthesisedSpeech"
      },
      "Input": {
        "AIMName": "SpeechRestorationAssembly",
        "PortName": "SynthesisedSpeech"
      }
    },
    {
      "Output": {
        "AIMName": "SpeechRestorationAssermbly",
        "PortName": "RestoredSegment"
      },
      "Input": {
        "AIMName": "",
        "PortName": "RestoredSegment"
      }
    }
  ],
  "Implementations": [],
  "Documentation": [
    {
      "Type": "Tutorial",
      "URI": "https://mpai.community/standards/mpai-cae/"
    }
  ]
}
