| SpecBridge | ||
| SpecBridge.xcodeproj | ||
| .gitignore | ||
| Changelog.md | ||
| LICENSE | ||
| README.md | ||
| SpecsBridge_Gemini_Convo.txt | ||
SpecBridge
SpecBridge is an open-source iOS toolkit that connects Ray-Ban Meta smart glasses to Twitch. It serves as a bridge between the Meta Wearables Device Access Toolkit (DAT) and standard broadcasting protocols, allowing developers to build custom live-streaming experiences.
Note: While the underlying architecture supports RTMP (allowing for potential YouTube/Kick support), this version is currently hardcoded for Twitch.
Features
- 720p Vertical Video: Native support for 9:16 portrait streaming (1280x720) optimized for mobile viewing.
- Smart Encoder Priming: Eliminates "black screen" or "1x1 aspect ratio" glitches on stream start by pre-analyzing video headers.
- Live Video Bridge: Routes raw video frames from Ray-Ban Meta glasses directly to Twitch.
- Audio Handling: Manages iOS audio sessions to prevent Bluetooth disconnects during streaming.
- Secure Auth: Setup screen to input and store your Twitch Stream Key locally on the device.
- Modern Swift: Uses Swift Concurrency (async/await) and the Actor model for thread-safe streaming.
Prerequisites
Before attempting to build this project, ensure you have the following:
Hardware
- Mac: A Mac computer capable of running Xcode.
- iPhone: An iPhone running iOS 17.0 or later.
- Smart Glasses: Ray-Ban Meta Smart Glasses (Gen 2).
Software & Accounts
- Xcode 15+: Required to compile the Swift code.
- Meta View App: Installed on your iPhone and paired with your glasses.
- Twitch Account: To obtain your Stream Key.
Important: Enable Developer Mode
You must enable Developer Mode on your glasses for them to communicate with third-party apps like SpecBridge.
- Open the Meta View app on your iPhone.
- Navigate to the Devices tab (Glasses icon).
- Tap the Gear icon (Settings) > General > About.
- Tap the Version number 5 times repeatedly.
- A "Developer Mode" toggle will appear. Switch it to ON.
Installation
This application is not available on the App Store. You must build and install it directly onto your iPhone using Xcode.
-
Clone the Repository Download the source code to your Mac.
-
Open in Xcode Double-click
SpecBridge.xcodeprojto open the project. -
Resolve Dependencies Xcode should automatically detect and fetch the required libraries (Meta Wearables DAT and HaishinKit). Note: If errors appear, go to File > Packages > Resolve Package Versions.
-
Sign the App
- Click the "SpecBridge" project icon in the top-left sidebar.
- Select the "SpecBridge" target in the center panel.
- Go to the Signing & Capabilities tab.
- Select your personal Apple ID under the "Team" dropdown.
-
Deploy to iPhone
- Connect your iPhone to your Mac via USB.
- Select your iPhone from the device list at the top of the Xcode window.
- Click the Run (Play) button.
Usage Guide
Once the app is running on your phone, follow this specific sequence to start a stream.
1. Connect to Glasses
- On the setup screen, tap Connect.
- The app will redirect you to the Meta View app.
- Accept the connection request in Meta View.
- You will be automatically redirected back to SpecBridge.
- Verify: The status indicator in SpecBridge should show "Connected".
2. Configure Stream Key
- Once connected, the Stream Key field will become active.
- Enter your Twitch Stream Key (found in your Twitch Creator Dashboard > Settings > Stream).
- Tap Save & Continue.
3. Start Streaming
- You will see the main dashboard with a camera preview placeholder.
- Tap Go Live.
- Wait for Cues:
- You will hear an audio prompt: "Experience Started".
- The LED on your glasses will turn on.
- The video feed will appear on your iPhone screen.
- After a few seconds, your stream will be live on Twitch.
4. Stop Streaming
- Tap Stop All in the app to end the broadcast.
- You will hear an audio prompt: "Experience Stopped".
Known Issues
- Twitch Only: This version does not yet support changing the RTMP URL to other services (Kick, YouTube).
Roadmap
We are actively working on the following improvements:
- Multi-Platform Support: Adding a settings menu to allow custom RTMP URLs (YouTube, Kick, etc).
- UI Polish: Improving the setup flow and status indicators.
Disclaimer
This project is an unofficial tool and is not affiliated with, endorsed by, or connected to Meta Platforms, Inc. or Twitch Interactive, Inc. "Ray-Ban Meta" is a trademark of Luxottica Group S.p.A. and Meta Platforms, Inc.
License
MIT License. See LICENSE for details.