{ "$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/OSD/V1.5/AIMs/AudioSegmentation.json",
  "title": "Audio Segmentation V1.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. */" },
  "Header":       "CAE-AUS-V1.0",

  "APIProfile":   "Basic",
  "Description":  "This AIM implements the segmentation of an audio program.",

  "ExternalPorts":  [
    { "Name": "SpeechFile"   , "Direction": "Input",   "DataType": ["OSD-SPO-V1.5", "OSD-BSO-V1.5"],  "Technology": "Software", "Protocol": "", "IsRemote": false },
    { "Name": "SpeechObject" , "Direction": "Output",  "DataType": "OSD-SPO-V1.5",  "Technology": "Software", "Protocol": "", "IsRemote": false },
    { "Name": "SpeakerTime"  , "Direction": "Output",  "DataType": "OSD-STM-V1.5",  "Technology": "Software", "Protocol": "", "IsRemote": false },
    { "Name": "SpeechOverlap", "Direction": "Output",  "DataType": "MMC-SOL-V2.5",  "Technology": "Software", "Protocol": "", "IsRemote": false }
  ],

  "SubAIMs":  [ ],
  "Topology":  [ ],

  "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 */",

  "AccessSources":   [{"Name": "speaker-embedder", "Uri": "/* URI of the file */", "Sha256": "/* SHA-256 */", "Setting": "EcapaModel", "AsFile": "ecapa-tdnn.onnx", "Description": "The speaker recognition model (ECAPA-TDNN, 192-value embeddings)."}],

  "Implementations":  [
   {
    "BinaryName": "/* provided by implementer */",
    "Architecture": "/* x86-64 | ARM64 */",
    "OperatingSystem": "/* Windows | Linux | MacOS */",
    "Version": "/* implementer version */",
    "Source": "/* AIMStorage | MPAIStore */",
    "Destination": "/* provided by implementer */"
   }
  ],

  "ResourcePolicies":  [
    { "Name": "Memory"              , "Minimum": "/* GB */",             "Maximum": "/* GB */",             "Request": "/* GB */" },
    { "Name": "CPU:Number"          , "Minimum": "/* integer, 0=all */", "Maximum": "/* integer, 0=all */", "Request": "/* integer */" },
    { "Name": "CPU:Class"           , "Minimum": "/* string */",         "Maximum": "/* string */",         "Request": "/* string */" },
    { "Name": "GPU:Number"          , "Minimum": "/* integer, 0=all */", "Maximum": "/* integer, 0=all */", "Request": "/* integer */" },
    { "Name": "GPU:CUDA:Class"      , "Minimum": "/* string */",         "Maximum": "/* string */",         "Request": "/* string */" },
    { "Name": "GPU:CUDA:FrameBuffer", "Minimum": "/* GB */",             "Maximum": "/* GB */",             "Request": "/* GB */" },
    { "Name": "GPU:CUDA:MemorySpeed", "Minimum": "/* GB/s */",           "Maximum": "/* GB/s */",           "Request": "/* GB/s */" }
  ],

  "DataXMData":  { },

  "Documentation":  [{ "Type": "Tutorial", "URI": "https://mpai.community/standards/mpai-cae/v3-0/ai-modules/audio-segmentation/" }] }