mediapipe/docs/getting_started/cpp.md
2023-04-03 15:12:06 -07:00

2.2 KiB

layout target title parent has_children has_toc nav_order
forward https://developers.google.com/mediapipe/framework/getting_started/cpp MediaPipe in C++ Getting Started true false 5

MediaPipe in C++

{: .no_toc }

  1. TOC {:toc}

Attention: Thanks for your interest in MediaPipe! We have moved to https://developers.google.com/mediapipe as the primary developer documentation site for MediaPipe as of April 3, 2023.


Please follow instructions below to build C++ command-line example apps in the supported MediaPipe solutions. To learn more about these example apps, start from Hello World! in C++.

Building C++ command-line example apps

Option 1: Running on CPU

  1. To build, for example, MediaPipe Hands, run:

    bazel build -c opt --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu
    
  2. To run the application:

    GLOG_logtostderr=1 bazel-bin/mediapipe/examples/desktop/hand_tracking/hand_tracking_cpu \
      --calculator_graph_config_file=mediapipe/graphs/hand_tracking/hand_tracking_desktop_live.pbtxt
    

    This will open up your webcam as long as it is connected and on. Any errors is likely due to your webcam being not accessible.

Option 2: Running on GPU

Note: This currently works only on Linux, and please first follow OpenGL ES Setup on Linux Desktop.

  1. To build, for example, MediaPipe Hands, run:

    bazel build -c opt --copt -DMESA_EGL_NO_X11_HEADERS --copt -DEGL_NO_X11 \
      mediapipe/examples/desktop/hand_tracking:hand_tracking_gpu
    
  2. To run the application:

    GLOG_logtostderr=1 bazel-bin/mediapipe/examples/desktop/hand_tracking/hand_tracking_gpu \
      --calculator_graph_config_file=mediapipe/graphs/hand_tracking/hand_tracking_desktop_live_gpu.pbtxt
    

    This will open up your webcam as long as it is connected and on. Any errors is likely due to your webcam being not accessible, or GPU drivers not setup properly.