C / C++
Build the graph in code
Create a graph, add/configure nodes, link pins and drive execution through CoreMF_API.h. Opaque handles expose lifecycle and status; production-enabled builds add document/session control.
Developers
Control the same native engine from C/C++, Python, Node.js, Java or Go. Build graphs in code or JSON; access video frames and audio samples through the matching plugin interface.
Find a required function in the feature index ↗.
Pick your integration surface
Match your delivery using the Capability & Delivery Matrix.
C / C++
Create a graph, add/configure nodes, link pins and drive execution through CoreMF_API.h. Opaque handles expose lifecycle and status; production-enabled builds add document/session control.
Graph JSON
Import/export graph configuration, parameterize templates and compose subgraphs. runAPI executes pipelines through the public API; runGraph is the native/source companion.
Bindings
Python, Node.js, Java and Go implementations wrap the public ABI. Choose the binding packages and platforms listed in your delivery.
Choose the interface
| Integration | Access and behavior | Delivery |
|---|---|---|
| Application API | Configure nodes, graphs and supported production operations through opaque handles. Access to packets, video frames or audio samples uses the matching extension interface. | Binary SDK; CoreMF_API.h only. |
| Production preview | Receive borrowed RGBA frames through documented Production preview callbacks. Copy data needed beyond the callback lifetime. | Production-enabled application SDK/profile. |
| Native processing plugins | Inspect/modify packet bytes, video planes or audio samples through declared ports and buffer ownership rules; use the same extension architecture for custom AI processing. | Separately agreed ABI/template, component headers and matching development dependencies. |
| Script processing plugins | Load compatible Python or JavaScript packages to process video frames and audio sample buffers. Runtime adapters and data-transfer costs differ. | Selected plugin packages and their runtime/model dependencies. |
| Native component integration | Use native classes and external source/sink callbacks for the required raw/encoded media integration. | Agreed source/development delivery or consulting engagement, with actual component dependencies. |
Video frame/audio sample access is an engine capability. The selected interface determines which data is exposed to your application or extension.
Public application API
Create, configure and run graphs through the delivered public header. Expand the reference for lifecycle and ownership reminders.
| Entry points | Use | Contract to observe |
|---|---|---|
cmf_global_init / cmf_global_shutdown |
Initialize and release global runtime use. | Finish graph work and release handles before final shutdown. |
cmf_graph_create / cmf_graph_destroy |
Own an opaque graph handle. | Release each handle once; retain required callback state until work finishes. |
cmf_graph_add_node / cmf_graph_link |
Build graph topology through registered nodes and pins. | Check every returned status and validate the selected node/configuration contract. |
cmf_graph_import_jsonstring |
Configure a graph from its JSON topology. | Use the document shape and node availability supported by the delivered build. |
cmf_graph_start / cmf_graph_process /
cmf_graph_eof
|
Execute the graph and inspect completion. | Errors and drained EOF are separate. Do not count a failed worker as successful completion. |
cmf_graph_flush / cmf_graph_stop |
Flush or stop graph work. | Stop on failure before cleanup; release graph handles before shutting down the runtime. |
These are public function names and usage guidance, not substitute declarations. Use the exact package's CoreMF_API.h and API documentation for signatures, callback lifetimes, errors and compatibility.
Explore the optional AI tracking recipe ↗Installed consumer
Include CoreMF_API.h and link through the installed
CMake or pkg-config metadata. Match the SDK and runtime
dependencies to your target platform. Start with the
CoreMF evaluation guide
and the application_sdk example delivered under
share/coremf/examples. Build outside the source
checkout and validate your graph on the selected runtime.
# CMakeLists.txt
find_package(CoreMF 0.4 REQUIRED CONFIG COMPONENTS Application)
target_link_libraries(my_app
PRIVATE CoreMF::Application)
Use runAPI list-inputs, list-outputs,
list-pipelines, list-filters and
list-protocols to inspect the selected build. The
runner capability guide
groups configuration options by task.
Build with CoreMF
Send your required interface, language and target environment.