{
  "slug": "video-fps",
  "name": "gizza-ai/video-fps",
  "version": "0.1.0",
  "title": "Change Video Frame Rate Online — gizza.ai",
  "description": "Change a video's frame rate right in your browser — set any fps (60→30, 24, 25). Frames are dropped or duplicated with ffmpeg locally, nothing is uploaded, free.",
  "tags": [
    "video",
    "fps",
    "frame rate",
    "framerate",
    "60fps",
    "30fps",
    "convert",
    "reencode"
  ],
  "category": "video",
  "urls": {
    "page": "https://gizza.ai/tools/video-fps/",
    "markdown": "https://gizza.ai/tools/video-fps/index.md",
    "descriptor": "https://gizza.ai/tools/video-fps/tool.json",
    "deep_link_example": "https://gizza.ai/tools/video-fps/?url=https://example.com/input&fps=30"
  },
  "cli": "gizza tool video-fps 'url=https://example.com/input' 'fps=30'",
  "tool": {
    "description": "Change a video's frame rate to a fixed target (e.g. 60→30, or any chosen fps). Provide either url (HTTP/HTTPS) or ref (id from a prior tool call), plus fps (target frames per second, default 30). Lowering the rate drops frames; raising it duplicates them — the clip's duration is unchanged, only its frames-per-second. The video is re-encoded to H.264 (crf 20); audio is kept as-is. mp4/mov/m4v/mkv inputs keep their container; other inputs (e.g. webm) are converted to MP4. fps is clamped to 1-240.",
    "parameters": {
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "url"
          ]
        },
        {
          "required": [
            "ref"
          ]
        }
      ],
      "properties": {
        "fps": {
          "description": "Target frame rate in frames per second (e.g. 30, 24, 60). Lowering drops frames, raising duplicates them; the clip's duration is unchanged. Default 30. Clamped to 1-240.",
          "maximum": 240,
          "minimum": 1,
          "type": "number"
        },
        "ref": {
          "description": "Reference id from a prior tool call. Use either url or ref.",
          "type": "string"
        },
        "url": {
          "description": "Video URL (HTTP/HTTPS). Use either url or ref.",
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}