All Projects → adct-the-experimenter → binaural-audio-editor

adct-the-experimenter / binaural-audio-editor

Licence: BSD-3-Clause License
This is an audio application that produces 3D binaural audio from 2D mono audio samples and positional information given by the graphical user interface. Listen to 3D audio through stereo headphones. Video Demo:https://www.youtube.com/watch?v=peF9cZSwVGw

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to binaural-audio-editor

spaudiopy
Spatial Audio Python Package
Stars: ✭ 91 (+145.95%)
Mutual labels:  hrtf, spatial-audio, binaural
Cavern
Object-based audio engine and codec pack with Dolby Atmos rendering, room correction, HRTF, one-click Unity audio takeover, and much more.
Stars: ✭ 132 (+256.76%)
Mutual labels:  spatial-audio, surround-sound
MetaAudio
GoldSrc engine plugin for 3D sound
Stars: ✭ 68 (+83.78%)
Mutual labels:  hrtf, 3d-audio
m1-web-spatialaudioplayer
Consolidated Mach1 spatial audio player focused on collecting all headtracking input methods and defining best practices
Stars: ✭ 26 (-29.73%)
Mutual labels:  spatial, spatial-audio
ASH-IR-Dataset
An impulse response dataset for binaural synthesis of spatial audio systems on headphones
Stars: ✭ 100 (+170.27%)
Mutual labels:  binaural, surround-sound
bookvis
Sources of the book "Displaying time series, spatial and space-time data with R" (2nd Edition)
Stars: ✭ 52 (+40.54%)
Mutual labels:  spatial
delaunator-rs
Fast 2D Delaunay triangulation in Rust. A port of Delaunator.
Stars: ✭ 115 (+210.81%)
Mutual labels:  spatial
belg
Boltzmann entropy of a landscape gradient
Stars: ✭ 14 (-62.16%)
Mutual labels:  spatial
rFIA
rFIA
Stars: ✭ 34 (-8.11%)
Mutual labels:  spatial
tile38
Real-time Geospatial and Geofencing
Stars: ✭ 8,117 (+21837.84%)
Mutual labels:  spatial
AudioCue
A more powerful, intuitive, and concurrency safe Clip, for Java audio needs.
Stars: ✭ 14 (-62.16%)
Mutual labels:  soundscape
geojson
GeoJSON classes for R
Stars: ✭ 32 (-13.51%)
Mutual labels:  spatial
CAST
Developer Version of the R package CAST: Caret Applications for Spatio-Temporal models
Stars: ✭ 65 (+75.68%)
Mutual labels:  spatial
wxWidgetsTemplate
A template project for wxWidgets C++, with pre-set files and IDE projects, and allows for easy updates to wxWidgets
Stars: ✭ 13 (-64.86%)
Mutual labels:  wxwidgets
R-Geospatial-Fundamentals
This is the repository for D-Lab's Geospatial Fundamentals in R with sf workshop.
Stars: ✭ 42 (+13.51%)
Mutual labels:  spatial
aura
A fast and lightweight 3D audio engine for Kha.
Stars: ✭ 31 (-16.22%)
Mutual labels:  3d-audio
GTSRB Keras STN
German Traffic Sign Recognition Benchmark, Keras implementation with Spatial Transformer Networks
Stars: ✭ 48 (+29.73%)
Mutual labels:  spatial
geometa
R tools to write, read & validate geographic metadata (OGC/ISO 19110, 19115, 19119, 19136 and 19139)
Stars: ✭ 37 (+0%)
Mutual labels:  spatial
GeoJSON4EntityFramework
Create GeoJSON from Entity Framework Spatial Data or WKT
Stars: ✭ 18 (-51.35%)
Mutual labels:  spatial
ows4R
R Interface for OGC Web-Services (OWS)
Stars: ✭ 29 (-21.62%)
Mutual labels:  spatial

binaural-audio-editor

This is an audio application that produces binaural audio from 2D mono audio samples and positional information given through the graphical user interface. Listen to 3D audio through stereo headphones.

Moving on to a new project that will replace this one. 3d Audio Producer.

https://github.com/adct-the-experimenter/3d-audio-producer

Keeping this here active on Github for anyone who wants to fork this.

Resize the window if unable to move timeline.

Open Source Helpers

Required Libraries

How to Install

  1. Install required libraries.

  2. Clone this repository

  3. cd binaural-audio-editor

  4. mkdir build

  5. cd build

  6. cmake .. -DwxWidgets_CONFIG_EXECUTABLE=path-to-wxconfig-executable

    FreeBSD: path-to-wxconfig-executable = /usr/local/bin/wxgtk3u-3.1-config

    Linux: path-to-wxconfig-executable = /usr/bin/wx-config-gtk3

  7. make

  8. ./binaural-audio-editor

Controls

  • Left Click and mouse movement to move orientation of the camera i.e. the direction the camera is facing.

  • Right Click and mouse movement to move the camera forward or backward.

  • Left Click + Right Click and mouse movement to move the camera up, down, left, or right.

Instructions

Control Listener

Light green cube is you the listener.

Use WASD keys to move listener(you) forward, back, left, right. Q key moves listener down. E key moves listener up.

To use the Listener Track(Group of first 7 tracks with graph) to change position of the listener(you), uncheck Free Roam in EditListener menu. Add points to the graph by left clicking on the graph. Remove points from the graph by right clicking.

First graph controls the x position, second graph is for y position, third graph is for z position.

Fourth graph controls w parameter of quaternion rotation, fifth graph controls rotation around x axis, sixth graph controls rotation around y axis, seventh graph controls rotation around z axis.

To use IMU BNO055 sensor to control listener orientation. See file External-Orientation-Setup.md

Control SoundProducers

Light blue cubes are the sound producers.

Create a sound producer and name it in Sound Producers -> Create Sound Producers menu.

For the Sound Producer track, the top 2 tracks is for graphing audio and the bottom 3 tracks are for changing position of the sound producer.

Click on dropdown box menu of sound producer track to choose a soundproducer to edit that was created.

Click on browse button near audio track to load sound into the track. Load only 8-bit or 16-bit audio only.

To move a sound producer with keyboard keys, set the free roam option as true when creating it or editing it. This option allows the sound producer to keep its position set by keys during playback. The select the sound producer in the drop-down menu in the tool bar and use I,J,K,L,U,O keys to move it.

Coordinate System of Binaural Audio Editor and OpenAL Soft

Like OpenAL, the application uses a right handed coordinate system to move listener and sound producers, where in a frontal default view X (thumb) points right, Y points up (index finger), and Z points towards the viewer/camera (middle finger).

  • Up is positive y. Down is negative y.

  • Back is positive z. Forward is negative z.

  • Right is positive x. Left is negative x.

Important Note About Multi-channel Audio Input:

Stereo(2 channel) audio does not get 3d spatialization and is instead used to play as background music.

Have audio that you want to be played in 3D be mono(1 channel) audio and load it into the audio track.

Stereo audio can be changed to mono audio using Audacity or other programs.

sndfile-mix-to-mono is an application that successfully turns multi-channel audio mix into mono-channel audio mix.

Experimental Feature for 5.1,6.1,7.1 channel Surround Sound Output

Run the alsoft-config program that came with the installation of OpenAL Soft to set the output to 5.1, 6.1, or 7.1 channels. OpenAL Soft should automatically convert 3d audio information into audio output for surround sound.

For more information, read https://github.com/kcat/openal-soft/blob/master/docs/3D7.1.txt

To use with Digital Audio Workstation

See the import-audio-DAW-BAE plugin page about building and installing the plugin.

https://github.com/adct-the-experimenter/import-audio-DAW-BAE

This plugin will export audio from a digital audio workstation to the sound tracks of binaural audio editor so that one can use their DAW to edit audio and spatialize it in Binaural Audio Editor.

Shortcut Keys

Press b with focus on graphical screen with 3d cubes to attach the last sound producer created to the last sound producer track and browse audio for it.

Feedback

Please email questions or comments to this email address bringerofawesomefood @ gmail . com without spaces.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].