No description
  • C# 96.5%
  • Python 2.6%
  • NSIS 0.5%
  • Nix 0.2%
  • Shell 0.1%
Find a file
Cyrus Otter 5c5dea41ec
All checks were successful
Build / capture-linux (push) Successful in 26s
Build / app-windows (push) Successful in 1m5s
Build / release (push) Has been skipped
README: FCAM on GitHub is branch feature/fcam-capture of CyrusOtter/Baballonia
main of CyrusOtter/Baballonia mirrors upstream Baballonia; the FCAM change is
one commit on its feature/fcam-capture branch, so build from that branch.
2026-09-27 03:46:11 +02:00
.forgejo/workflows Links to GitHub instead of the Forgejo hosts 2026-09-26 11:31:45 +02:00
.github Update Baballonia to target NET 10 (#213) 2026-02-14 11:07:18 -05:00
nix Remove nix packaging (#175) 2025-12-11 10:40:57 -10:00
src Links to GitHub instead of the Forgejo hosts 2026-09-26 11:31:45 +02:00
tools/FcamProbe Add FCAM UDP face camera capture for a Babble tracker on a Steam Frame 2026-09-25 23:29:23 +02:00
.editorconfig Add support for mobile development + general refactoring (#3) 2024-03-23 16:17:09 +01:00
.envrc Nix flake init 2025-08-04 18:27:11 +02:00
.gitattributes Move _internal.zip to separate server 2025-09-16 11:46:18 -05:00
.gitignore Overlay rewrite (#148) 2025-11-14 15:17:06 -05:00
.gitmodules feat(Firmware) Add wireless flashing 2025-05-21 13:49:15 -05:00
Baballonia.sln Add FCAM UDP face camera capture for a Babble tracker on a Steam Frame 2026-09-25 23:29:23 +02:00
BaballoniaPromo.png Update README 2025-10-21 13:20:25 -05:00
CODE_OF_CONDUCT.md Add CONTRIBUTING.md/CODE_OF_CONDUCT.md 2025-09-08 13:48:55 -05:00
CONTRIBUTING.md Add CONTRIBUTING.md/CODE_OF_CONDUCT.md 2025-09-08 13:48:55 -05:00
CREDITS.md Add About/Credits page to app (#226) 2026-02-23 19:29:40 -05:00
crowdin.yml Update crowdin.yml 2025-09-12 10:47:02 -05:00
Directory.Build.props Add support for mobile development + general refactoring (#3) 2024-03-23 16:17:09 +01:00
download_dependencies.ps1 Overlay rewrite (#148) 2025-11-14 15:17:06 -05:00
download_dependencies.sh Overlay rewrite (#148) 2025-11-14 15:17:06 -05:00
flake.lock Remove nix packaging (#175) 2025-12-11 10:40:57 -10:00
flake.nix Remove nix packaging (#175) 2025-12-11 10:40:57 -10:00
LICENSE Update LICENSE 2025-10-22 02:16:04 -07:00
Nuget.Config Add Nuget.Config 2024-03-10 11:20:51 +01:00
README.md README: FCAM on GitHub is branch feature/fcam-capture of CyrusOtter/Baballonia 2026-09-27 03:46:11 +02:00

Baballonia Promo

Baballonia

Baballonia is a cross-platform, hardware-agnostic XR eye and face tracking application.

OTT Labs fork: Babble tracker on a Steam Frame

This fork adds the FCAM UDP Stream capture module (src/Baballonia.FcamStreamCapture): a face camera source that receives JPEG frames over UDP from a Babble tracker plugged into a Steam Frame, where Babble-Bridge forwards /dev/ttyACM0 over Wi-Fi. The wire format is documented in that repository's PROTOCOL.md; tools/FcamProbe is a console receiver for debugging.

Install

  1. There is no binary release yet: build the app from source (see below), then copy the publish output src\Baballonia.Desktop\bin\Release\net10.0\win-x64\publish\ to a folder of your choice (for example D:\Games\Babble) and run Baballonia.Desktop.exe. The build is self-contained, no .NET runtime install is needed. Settings live in %APPDATA%\ProjectBabble.
  2. Install the bridge on the headset (see the Babble-Bridge README).
  3. Home page, Face Camera Address: fcam://<headset-ip>:8555. In the drop-down labelled This is a... below it, select FCAM UDP Stream, then press Start Camera. No firewall rule is needed on the PC.

Build from source

The FCAM module, its tests and tools/FcamProbe are on GitHub as one commit on top of Baballonia: branch feature/fcam-capture of CyrusOtter/Baballonia, whose main mirrors Baballonia. It builds as is; only the CI workflow below is specific to this fork.

git clone --recurse-submodules -b feature/fcam-capture https://github.com/CyrusOtter/Baballonia.git Babble
cd Babble
./download_dependencies.ps1      # calibration overlay, trainer, espflash (optional for development)
dotnet test src/Baballonia.Tests --filter Fcam
dotnet publish src/Baballonia.Desktop -r win-x64 -c Release --self-contained -f net10.0

Publish without -o: a post-publish target moves the capture modules into publish\Modules\, and the app loads them from there. The submodules are required, the XAML build fails without them.

CI (.forgejo/workflows/build.yml) builds the module on Linux and the app plus the FCAM tests on the Windows builder for every push; a vX.Y.Z tag publishes the win-x64 zip to a Forgejo release.

Installation

Steam

Baballonia is now on Steam! Download it here!

This is the suggested install method. You will automatically recieve updates with this method.

Windows (Alternative)

Head to the releases tab and download the latest installer.

You may be prompted to download the .NET runtime for desktop apps, install it if need be.

Linux (Alternative)

Head to the releases tab and download the latest tarball.

You may be prompted to download the .NET runtime for desktop apps, install it if need be.

MacOS

Baballonia currently does not have an installer for MacOS. You will need to follow our build instructions and run it from source.

Platform Compatibility

To get started, follow the quickstart guide on our documentation page.

VRChat

VRCFaceTracking

To use Baballonia with VRChat, you will need to use VRCFaceTracking with the VRCFT-Babble module.

  1. Download and install the latest version of VRCFaceTracking from Steam.
  2. Install the VRCFT-Babble module within VRCFaceTracking.
  3. Use Baballonia to set the module mode (eyes, face or both). Restart VRCFaceTracking to see your changes.

More information can be found on the VRCFT Docs

VRC Native Eyelook

Alternatively, Baballonia also supports VRC Native Eyelook.

While this doesn't support lower face tracking, it supports (almost) all VRChat Avatars.

Resonite

Resonite works natively with Baballonia's eye and face tracking - no external tools necessary!

ChilloutVR

ChilloutVR has a mod-based integration for Baballonia's eye and face tracking. Please refer to our docs (below) for installation.

For more game information and setup, refer to our ChilloutVR documentation page.

Supported Hardware

Baballonia supports many kinds of hardware for eye and face tracking:

Device Eyes Face Notes
Official Babble Face Tracker ❌ ✅
DIY and 3rd party Babble Trackers ❌ ✅
Vive Facial Tracker ❌ ✅
DIY EyetrackVR ✅ ❌
Bigscreen Beyond 2E ✅ ❌ On Linux, requires go-bsb-cams
Vive Pro Eye ✅ ❌ Requires Revision
Varjo Aero ✅ ❌ Requires the Varjo Streamer
HP Reverb G2 Omnicept ✅ ❌ Requires BrokenEye
Pimax Crystal ✅ ❌ Requires BrokenEye

For more hardware information, refer to our documentation pages.


Build Instructions

Baballonia.Desktop

  1. Run the associated download_dependencies script for your given platform (.ps1 on Windows, .sh on Linux).
  2. If you are using an IDE, disable these projects:
  • VRCFaceTracking
  • VRCFaceTracking.Core
  • VRCFaceTracking.SDK
  • VRCFaceTracking.Baballonia
  • Baballonia.iOS
  • Baballonia.Android
  1. Run dotnet build inside the src/Baballonia.Desktop directory, or build with your IDE

Publishing

If you want to publish a standalone installer for Baballonia, download NSIS here, or use your package manager. Then, run the .nsi script located at src/Baballonia.Desktop/main.nsi

Baballonia.Android/iOS

  1. If you are using an IDE, disable these projects:
  • VRCFaceTracking
  • VRCFaceTracking.Core
  • VRCFaceTracking.SDK
  • VRCFaceTracking.Baballonia
  • Baballonia.Desktop
  • Baballonia.iOS, if you are building for Android
  • Baballonia.Android, if you are building for iOS
  1. Run dotnet build inside the src/Baballonia.Android or src/Baballonia.iOS directory, or build with your IDE

VRCFaceTracking.Baballonia

  1. If you are using an IDE, disable all projects except the following:
  • VRCFaceTracking.Core
  • VRCFaceTracking.SDK
  • VRCFaceTracking.Baballonia
  1. Run dotnet build inside the src/VRCFaceTracking.Baballonia directory, or build with your IDE

This will create a VRCFaceTracking.Baballonia.zip module which you can install manually.

For more build information, refer to our build documentation page.