Skip to content

API Reference

Lu-Fi edited this page Oct 27, 2026 · 2 revisions

API reference

Reference of the public OpenIMP API for people who build streamers and tools on top of it. The functions have the signatures of the vendor SDK; each entry says what the call does in OpenIMP, which values it accepts, what it returns, how it is usually combined with other calls, and on which SoCs it has been tested.

Module Entries Described
ISP (including ISP tuning) 186 186
FrameSource 34 34
Encoder 94 94
OSD 31 31
IVS 17 17
Audio (AI, AO, AENC, ADEC) 82 82
DMIC 17 17
System 26 26

One entry covers a Get/Set pair. Entries that are marked "not yet verified" are described from the function name and a quick look at the implementation; they are being checked one by one.

Status symbols are those of the feature matrix (API coverage tables):

  • ✅ works, device-tested
  • ✅+ works, device-tested, better than the vendor
  • ✅rt API round trip on device, no visible effect expected
  • ✅r works: called by the streamer on fleet cameras of this SoC that passed the fleet soak
  • ✅○ vendor no-op, OpenIMP matches that
  • 🔧h implemented, host tests only (no camera run yet)
  • 🔧a really connected per static audit, no device test tracked
  • 🔧+ API round trip in QEMU, no camera
  • ⚠c value only stored and read back, nothing applied
  • ⚠s returns 0 without any effect
  • ❌e exported but fails or has a known defect
  • ❌ not exported by OpenIMP
  • · function does not exist on this SoC (not in that SoC's vendor API; not a gap)
  • ? state not determined
  • 📋 no OpenIMP build for this SoC yet (planned)

The pages are generated from the OpenIMP sources (tools/gen_api_wiki.py); the descriptions live in docs/api_reference/*.yaml. Differences from the vendor library that go beyond a single call are collected in Beyond the Vendor.

Clone this wiki locally