Studiov0.1.1
signal:// developers
API & Agent Control
The same isomorphic engine that streams video in the studio renders single images over HTTP — for scripts, automations, and AI agents. Perceptually-correct linear-light luminance, high-quality pyramid downscaling, unsharp-mask detail enhancement, Floyd–Steinberg dithering, Sobel edge detection, and an adaptive Bayesian temporal filter, all under the hood.
Live playground
POST /api/v1/renderColumns · 100
Charset
Format
cURL
curl -X POST /api/v1/render \
-H "Content-Type: application/json" \
-d '{"imageUrl":"/test-portrait.png","columns":100,"charset":"detailed","format":"text","color":false,"edges":false}'Response
Run a request to see the output.
Endpoints
GET
/api/healthPOST
/api/v1/renderGET
/api/v1/a2v-handoffPOST
/api/mcpGET
/api/v1/agentGET
/api/openapi.jsonRender parameters
| Param | Type | Default | Description |
|---|---|---|---|
| columns | integer 8–400 | 120 | Output width in characters. |
| charset | enum | detailed | One of: standard, detailed, blocks, binary, dots, minimal. |
| format | enum | text | text | ansi | html | json | json-compact | svg. |
| color | boolean | false | Per-cell 24-bit color (ignored by plain text). |
| invert | boolean | false | Invert luminance mapping. |
| contrast | float 0.2–4 | 1.15 | Tonal contrast multiplier. |
| brightness | float -150–150 | 0 | Luminance offset. |
| saturation | float 0–4 | 1.4 | Color-mode saturation boost. |
| gamma | float 0.2–3 | 1 | Perceptual midtone response. |
| edges | boolean | false | Sobel edge-detection line-art mode. |
| edgeStrength | float 0.1–5 | 1.8 | Edge magnitude multiplier. |
| dither | boolean | false | Floyd–Steinberg error diffusion. |
| sharpen | float 0–1 | 0.35 | Unsharp-mask detail enhancement. |
| autoLevels | float 0–1 | 0.9 | Automatic percentile histogram stretch. |
| structure | float 0–1 | 0.55 | Contour-aware directional glyph substitution ( - / | \ ). |
| denoise | float 0–1 | 0.35 | Edge-preserving bilateral denoising before detail recovery. |
| motionSensitivity | float 0–1 | 0.7 | Motion responsiveness in the final Bayesian posterior update. |
| autoOptimize | float 0–1 | 0.9 | Strength of source-aware Auto Director tuning against the selected quality rubric. |
| qualityTarget | enum | balanced | balanced | portrait | motion | low-light | round-trip. |
| glyphStrategy | enum | adaptive | adaptive chooses the smallest glyph codebook under maxGlyphRmse; fixed preserves the selected ramp. |
| maxGlyphRmse | float 0.005–0.1 | 0.03 | Maximum normalized luminance quantization RMSE for adaptive glyph selection. |
| monoColor | hex | #e5e5e5 | Color for mono/ansi/svg/html output. |
Formats:
textansihtmljsonjson-compactsvgCharsets:standarddetailedblocksbinarydotsminimalAgents & MCP
POST /api/mcpThe Model Context Protocol endpoint speaks JSON-RPC 2.0 and exposes a single render_ascii tool. Point any MCP-compatible agent at the endpoint, or fetch the agent manifest for ready-to-run recipes.
MCP tool call
curl -X POST /api/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "render_ascii",
"arguments": { "imageUrl": "https://asciicast.stream/test-portrait.png", "color": true, "format": "ansi" }
}
}'