MediaPipe.NET

Pure .NET bindings for Google's MediaPipe.

MediaPipe.NET

Discord NuGet

Bringing the best of MediaPipe to the .NET ecosystem! Based on MediaPipeUnity, MediaPipe.NET brings Google’s MediaPipe into the .NET ecosystem in its fullest.

Installation

You may install via NuGet:

dotnet add --project <Project> Mediapipe.Net

Since this library is mapping off native methods from MediaPipe to the CLR realm, the runtime is not explicitly included in the NuGet package or in this repository.
Interested parties who may want to head to the MediaPipe.NET.Runtime repository, where the native code resides.

However, if you just want things to work, You will want to use MediaPipe.Net.Runtime, you have the option of using CPU or GPU:

$ dotnet add --project <Project> Mediapipe.Net.Runtime.Gpu # if you want to use GPU
$ dotnet add --project <Project> Mediapipe.Net.Runtime.Cpu # if you want to use CPU

⚠️ NOTE ⚠️ : Certain features may not work at the moment in GPU, please consult the compatibility matrix.

Compatibility Matrix

We share the same compatibility matrix with MediaPipeUnityPlugin, so this will change depending on whichever party implements what’s missing.

Linux (x86_64) macOS (x86_64) macOS (ARM64) Windows (x86_64) Android iOS
Linux (AMD64) [1] ✔️
Intel Mac ✔️
M1 Mac [2] ✔️
Windows 10 (AMD64) [3][4] ✔️ ✔️

Examples

Check out the Hello world example for an example graph.

Copyright

MediaPipe.NET is Copyright © The Vignette Authors, Licensed under MIT. Parts of this code is based on MediaPipeUnity, Copyright © homuler, Licensed under MIT.


  1. Tested on Arch Linux. ↩︎

  2. Experimental, because MediaPipe does not support M1 Mac. ↩︎

  3. Windows 11 will be also OK. ↩︎

  4. Running MediaPipe on Windows is experimental. ↩︎