{
  "slug": "video-frame-extract",
  "name": "gizza-ai/video-frame-extract",
  "version": "0.1.0",
  "title": "Extract a Frame from a Video — gizza.ai",
  "description": "Grab a single frame from any video as a PNG image, right in your browser — pick a timestamp in seconds. Runs locally with ffmpeg, nothing is uploaded, free.",
  "tags": [
    "video",
    "frame",
    "extract",
    "screenshot",
    "thumbnail",
    "still",
    "png"
  ],
  "category": "video",
  "urls": {
    "page": "https://gizza.ai/tools/video-frame-extract/",
    "markdown": "https://gizza.ai/tools/video-frame-extract/index.md",
    "descriptor": "https://gizza.ai/tools/video-frame-extract/tool.json",
    "deep_link_example": "https://gizza.ai/tools/video-frame-extract/?url=https://example.com/input&timestamp=1"
  },
  "cli": "gizza tool video-frame-extract 'url=https://example.com/input' 'timestamp=1'",
  "tool": {
    "description": "Extract a single frame from a video at the given timestamp (seconds), output as PNG. The PNG is naturally chainable into image-resize, image-crop, or image-convert via ref. Provide either url (HTTP/HTTPS) or ref (id from a prior tool call).",
    "parameters": {
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "url"
          ]
        },
        {
          "required": [
            "ref"
          ]
        }
      ],
      "properties": {
        "ref": {
          "description": "Reference id from a prior tool call. Use either url or ref.",
          "type": "string"
        },
        "timestamp": {
          "description": "Timestamp in seconds.",
          "minimum": 0,
          "type": "number"
        },
        "url": {
          "description": "Video URL (HTTP/HTTPS). Use either url or ref.",
          "type": "string"
        }
      },
      "required": [
        "timestamp"
      ],
      "type": "object"
    }
  }
}