How conglam56/circuitar works
This package is a Unity plugin for running MediaPipe CalculatorGraphs and handling their media inputs and outputs. The principal workflow is for a Unity application to prepare model assets, supply media to a configured graph, and use graph output for application rendering. The runtime also exposes image, audio, video, tensor, task-protocol, and GPU capabilities. The README is empty and most implementation files were not sampled, so the graph shows documented responsibilities and clear sampled calls without assuming internal graph wiring.
Main entry points: CalculatorGraph.cs Calculator graph · GpuManager.cs GPU manager · ResourceManager Asset managers · Annotation Annotation controllers
Components 22
Unity integration
- Asset managers
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/ResourceManager - Resource resolver
Packages/com.github.homuler.mediapipe/Runtime/Scripts/PInvoke/NativeMethods/Util/ResourceUtil_Safe.cs - Annotation controllers
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Annotation
Graph framework
- Graph configuration
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Framework/ValidatedGraphConfig.cs - Calculator graph
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Framework/CalculatorGraph.cs - Packets and timestamps
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Framework/Packet.cs - Output poller
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Framework/OutputStreamPoller.cs - Media formats
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Framework/Formats
Media processing
- Calculator definitions
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Calculators - Task graph options
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Tasks - Tensor inference
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Calculators/Tensor/InferenceCalculator.cs - Vision workflows
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Calculators/Image - Audio workflows
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Calculators/Audio - Video workflows
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Calculators/Video - Task modules
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Protobuf/Tasks/Vision
GPU support
- GPU manager
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/GpuManager.cs - GPU resources
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Gpu/GpuResources.cs - GL calculator helper
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Gpu/GlCalculatorHelper.cs
Native interop
- Result marshalling
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Marshal - Native bindings
Packages/com.github.homuler.mediapipe/Runtime/Scripts/PInvoke - Native handles
Packages/com.github.homuler.mediapipe/Runtime/Scripts/Core
Other components
- Unity application
Connections 12
- Unity application → Asset managers: prepares assets
- Asset managers → Resource resolver: registers paths
- Unity application → Graph configuration: provides configuration
- Unity application → Calculator graph: uses graph
- Unity application → Media formats: provides media
- Calculator graph → Packets and timestamps: accepts packets
- Calculator graph → Output poller: exposes outputs
- Unity application → Output poller: reads results
- Unity application → Annotation controllers: renders landmarks
- Annotation controllers → Unity application: draws annotations
- GPU manager → GPU resources: creates resources
- GPU manager → GL calculator helper: initializes helper