TECHNICAL MANUAL

DOCUMENTATION & ARCHITECTURE

Send a video or audio file along with your custom prompt logic. The audio track is extracted and analysed; the model returns the exact structured output you define: timed transcripts, summaries, multilingual dubbing, or schema-valid JSON.

CREDENTIALS

GETTING ACCESS & API KEYS

Access is invite-only. An invitation code is issued by the operator and redeemed once; after that, generate your own API keys from the Account Portal.

SECURITY PROTOCOL
Keep your API key server-side. Pass it via the x-api-key: YOUR_KEY header or Authorization: Bearer YOUR_KEY.
QUICK START

EXECUTING YOUR FIRST REQUEST

Send your video and prompt in one multipart request to the local server:

TERMINAL: cURL INGESTION
curl -X POST https://framecall.site/ask \
  -H "x-api-key: $FRAMEWISE_KEY" \
  -F "file=@interview.mp4" \
  -F "provider=aistudio" \
  -F "model=gemini-3.8-flash" \
  -F "prompt=Transcribe speech with MM:SS.mmm timestamps and speaker labels." \
  -F "timeoutMs=180000"
RESPONSE: JSON PAYLOAD
{
  "ok": true,
  "reply": "00:00.120 Speaker 1: Welcome to the local intelligence demonstration...\n00:04.550 Speaker 2: We achieve full data isolation.",
  "provider": "aistudio",
  "callId": "call-7a8b9c-…"
}
ARCHITECTURE

STATELESS BY SPECIFICATION

Framewise is not a chatbot. Every request is strictly independent: one input video and one prompt in, one structured answer out. No conversational history is preserved between adjacent calls.

REPRODUCIBILITY GUARANTEES

  • Deterministic: Re-running a request months later produces comparable results.
  • Safe Retries: Network retries never pollute or corrupt previous dialogue states.
  • Zero Bleed: Multiple tenant workers can execute in parallel on the same debug port without cross-talk.
ENGINES

CHOOSING AN ENGINE

You can choose which engine executes your request with the provider parameter. All three share the same queue, pacing, caps and error codes — only the transport differs, so switching engines changes nothing else in your integration.

ENGINE MODEL PIN MEAN SPEED BEST SUITED FOR
aistudio gemini-3.8-flash ~15 – 20 seconds Default. Consistent latency, instant JSON responses, low-latency pipelines.
wrapper Gemini 2.5 Pro / Flash ~5 – 30 seconds Fastest on text and short media; runs without a browser process, so it is the cheapest per account.
gemini Gemini 2.5 Pro / Flash Bimodal — ~15 s or 2 – 5 min Slowest and least predictable. Audio is still extracted first, so it gains nothing from the video track.

Speeds are measured on the bridge host and vary with file size and load. If you do not send a provider, the operator's configured default is used. You do not have to pick one — a request that omits it always works.

TEMPLATES

READY-MADE PROMPT RECIPES

1. Timed JSON Transcript

Transcribe this video. Return a JSON array with:
[ { "start": "MM:SS.mmm", "end": "MM:SS.mmm", "speaker": "...", "text": "..." } ]
Split on natural breath pauses and speaker transitions.

2. Dubbing & Translation Matrix

Segment this clip for automated dubbing. Return JSON array with:
"start", "end", "character", "gender", "emotion", "text_original", "text_target" in Khmer.
Ensure target text duration naturally conforms to original line duration.

3. Scene Segmentation from Audio

Split this audio into narrative scenes. Return JSON array with:
"start", "end", "scene_title", "summary", "speaker_list".

The video track is stripped before upload, so prompts asking for on-screen text, OCR or visual description will not get useful answers. Segmentation here is inferred from dialogue and pauses.