PeerTube · Schema

VideoStudioCreateTask

VideoDecentralizedFederationOpen SourceActivityPubSelf-HostedStreaming
View JSON Schema on GitHub

JSON Schema

VideoStudioCreateTask.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/peertube/main/json-schema/VideoStudioCreateTask.json",
  "title": "VideoStudioCreateTask",
  "type": "array",
  "items": {
    "anyOf": [
      {
        "title": "cut",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "cut"
            ]
          },
          "options": {
            "type": "object",
            "properties": {
              "start": {
                "type": "integer"
              },
              "end": {
                "type": "integer"
              }
            }
          }
        }
      },
      {
        "title": "add-intro",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "add-intro"
            ]
          },
          "options": {
            "type": "object",
            "properties": {
              "file": {
                "type": "string",
                "format": "binary"
              }
            }
          }
        }
      },
      {
        "title": "add-outro",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "add-outro"
            ]
          },
          "options": {
            "type": "object",
            "properties": {
              "file": {
                "type": "string",
                "format": "binary"
              }
            }
          }
        }
      },
      {
        "title": "add-watermark",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "add-watermark"
            ]
          },
          "options": {
            "type": "object",
            "properties": {
              "file": {
                "type": "string",
                "format": "binary"
              }
            }
          }
        }
      },
      {
        "title": "remove-segments",
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "remove-segments"
            ]
          },
          "options": {
            "type": "object",
            "required": [
              "segments"
            ],
            "properties": {
              "segments": {
                "type": "array",
                "minItems": 1,
                "items": {
                  "type": "object",
                  "required": [
                    "start",
                    "end"
                  ],
                  "properties": {
                    "start": {
                      "type": "integer",
                      "minimum": 0
                    },
                    "end": {
                      "type": "integer",
                      "minimum": 1
                    }
                  }
                }
              }
            }
          }
        }
      }
    ]
  }
}