# omnitone **Repository Path**: mirrors_GoogleChrome/omnitone ## Basic Information - **Project Name**: omnitone - **Description**: Spatial Audio Rendering on the web. - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-08-08 - **Last Updated**: 2026-02-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Omnitone: Spatial Audio Rendering on the Web [![Travis](https://img.shields.io/travis/GoogleChrome/omnitone.svg)](https://travis-ci.org/GoogleChrome/omnitone) [![npm](https://img.shields.io/npm/v/omnitone.svg?colorB=4bc51d)](https://www.npmjs.com/package/omnitone) [![GitHub license](https://img.shields.io/badge/license-Apache%202-brightgreen.svg)](https://raw.githubusercontent.com/GoogleChrome/omnitone/master/LICENSE) Omnitone is a robust implementation of [ambisonic](https://en.wikipedia.org/wiki/Ambisonics) decoding and binaural rendering written in Web Audio API. Its rendering process is powered by the fast native features from Web Audio API (GainNode and Convolver), ensuring the optimum performance. The implementation of Omnitone is based on the [Google spatial media](https://github.com/google/spatial-media) specification and [SADIE's binaural filters](https://www.york.ac.uk/sadie-project/GoogleVRSADIE.html). It also powers [Resonance Audio SDK](https://github.com/resonance-audio/resonance-audio-web-sdk) for web. - [Usage](#usage) + [FOARenderer](#foarenderer) + __[HOARenderer](#hoarenderer) (New!)__ + [Rotation and Rendering Mode](#rotation-and-rendering-mode) - [API Documentation](https://rawgit.com/GoogleChrome/omnitone/master/doc/Omnitone.html) - [Development](#development) - [Audio Codec Compatibility](#audio-codec-compatibility) If you are looking for interactive panning based on Omnitone's ambisonic rendering, be sure to check out [Songbird](https://github.com/google/songbird) project! ### Feature Highlights Omnitone offers __ambisonic decoding__ and __binaural rendering__ of: - First-order-ambisonic stream - High-order-ambisonic stream (2nd and 3rd order) ### Omnitone in action: - __[Omnitone Demos](https://googlechrome.github.io/omnitone/#home)__ - __[Omnitone Examples](https://rawgit.com/GoogleChrome/omnitone/master/examples/index.html)__ - __[Resonance Audio Web SDK Demos](https://cdn.rawgit.com/resonance-audio/resonance-audio-web-sdk/master/examples/index.html)__ - __[JauntVR Music Gallery](https://www.jauntvr.com/lobby/MusicLobby)__ ## How it works The input audio stream can be either an `HTMLMediaElement` (`