What's Changed
This version of Ubiq-Genie introduces a significant overhaul to the codebase, focusing on transitioning to the latest Ubiq version, migrating to TypeScript, and improving the repository's structure and functionality. While much has changed in Ubiq-Genie, its proposed server-client structure utilizing child processes is still the same. The key changes include the following.
Major Changes
Upgrade to TypeScript ESM
- Migrated all code to TypeScript, in line with the latest Ubiq server codebase.
Ubiq Version Upgrade
- Upgraded to Ubiq version v1.0.0-pre.7, enabling several new features:
- Improved WebRTC functionality including video streaming
- WebXR deployment
- New avatar options such as ReadyPlayerMe
- Integration of Unity's XR Interaction Toolkit
- For a full list of new features, check out Ubiq's release page.
Other Changes
- New CLI Tool: Added a new CLI tool for starting apps with interactive configuration on the first run.
- MediaReceiver Component: Introduced the
MediaReceiver
component to receive audio and video over peer-to-peer connections, replacing the workaround of sending raw audio from each client in the original Ubiq-Genie release and enabling capturing video frames for new vision-based applications. - Improved Transcription Sample App: Enhanced the transcription sample app to utilize the
MediaReceiver
component and added functionality to save per-peer audio to .wav files. - Unity XR Interaction Toolkit Integration: Upgraded the Unity side of each sample app to use Unity's XR Interaction Toolkit.
Repository and Codebase Improvements
- Environment Variable Handling: Improved the handling of environment variables for better configuration management.
- Server Logging: Enhanced server logging for better monitoring and debugging.
- Repository Reorganization: Reorganized the repository structure for easier development and maintenance.
- Documentation Updates: Updated documentation to reflect the changes and upgrades.
Full Changelog: v0.1.0...v0.2.0