Skip to content

epalosh/openfov

OpenFOV

CI Latest release License: MIT Python: 3.11+ Platform: Windows

Webcam head tracking for iRacing.

Install

Download OpenFOV-x.y.z-setup.exe from Releases and run it. The installer also fetches the Microsoft Visual C++ Runtime if your machine doesn't already have it.

On first launch Windows may show "Windows protected your PC." Click More info → Run anyway. OpenFOV is currently shipped unsigned. Once signed, this prompt goes away for new downloads.

See docs/INSTALL.md for the full install + setup + uninstall walkthrough.

Quick start

  1. Run OpenFOV.
  2. The first-run wizard walks you through: pick a webcam → calibrate your neutral pose (look straight, press the button) → read the in-game tips → done.
  3. Launch iRacing. TrackIR should be enabled by default!
  4. Drive.

To recenter your view at any time, press F9.

Troubleshooting

There are known issues with getting OpenFOV connected to iRacing on some users' setups. We are working on a solution! In the meantime, see the "Issues" tab for discussion on this, and how you might be able to fix the issue manually until a new release is dropped. ETA before 6/14. Thank you for your patience!

Architecture

Webcam → MediaPipe FaceLandmarker → One Euro filter
                                      ↓
                         per-axis Bezier curve + invert
                                      ↓
                          FT_SharedMem (FreeTrack proto)
                                      ↓
                      bundled NPClient64.dll (loaded by iRacing)
                                      ↓
                                 iRacing

OpenFOV writes the FreeTrack shared-memory section directly, and a bundled NPClient64.dll (clean MIT source, originally from linux-track) exposes the NaturalPoint TrackIR API to iRacing.

Tech stack

  • Python 3.12 with PySide6 (Qt 6) for the UI
  • MediaPipe FaceLandmarker for 478-landmark face tracking
  • One Euro Filter for low-lag / low-jitter smoothing
  • Compiled to a standalone Windows binary with Nuitka
  • Wrapped in Inno Setup for installation

License

MIT. See LICENSE. Third-party attributions are in NOTICE.

Trademarks

TrackIR is a trademark of NaturalPoint, Inc. OpenFOV is not affiliated with, endorsed by, or sponsored by NaturalPoint. Mentions of TrackIR and the NPClient API exist only to describe interoperability with third-party games that implement support for that API.

About

Open-source webcam head tracking for iRacing. Achieve VR-style POV with any standard webcam!

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors