You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 23, 2023. It is now read-only.
These are the main three systems that binaural audio editor interfaces with.
3
+
These are the main three systems that 3D Audio Producer interfaces with.
4
4
- Main Graphical User Interface, GUI
5
-
- OpenAL Soft Audio Engine
6
-
- Timeline Track Editor
5
+
- Sound Bank
6
+
- Immediate Mode Sound Player
7
+
- OpenALSoftAudioEngine
7
8
8
9
## Main Graphical User Interface, GUI
9
-
This is what puts together everything seen in binaural audio editor.
10
+
This is what puts together everything seen in 3D Audio Producer.
10
11
11
12
12
13
### Files to look at:
13
-
-`osgViewerWX.h`
14
-
-`osgViewerWX.cpp`
15
-
-`SoundProducerTrackManager.h`
16
-
-`SoundProducerTrackManager.cpp`
17
14
- Files with Dialog in the filename in include and src folder.
15
+
-`main_gui_editor.h`
16
+
-`main_gui_editor.cpp`
18
17
19
-
#### In`osgViewerWX.cpp` and `osgViewerWX.h`
18
+
## Sound Bank
19
+
Performs audio decoding and stores audio data into files
20
20
21
-
**OsgCanvas** is a class to show the OpenSceneGraph window and 3D objects.
21
+
## Immediate Mode Sound Player
22
+
Manages audio playback.
22
23
23
-
**GraphicsWindowWX** is a class that contains OsgCanvas and contains the rendering output in a window.
24
-
25
-
**MainFrame** is the window that contains the menu bar above and its items, contains the timeline editor, and opens dialogs/windows when a menu item is clicked on.
26
-
27
-
Since it is the main part that user interacts with, MainFrame also contains important classes such as TimelineFrame, reference to OpenALSoftAudioEngine, reference to Listener, SoundProducerTrackManager, vector of SoundProducerTrack, ListenerTrack.
28
-
29
-
**wxOsgApp** is the main of the wxWidgets appplication, much like the main of a basic C++ program. It contains MainFrame and initializes it.
30
-
31
-
#### In`SoundProducerTrackManager.cpp` and `SoundProducerTrackManager.h`
32
-
33
-
**SoundProducerTrackManager** is a class that handles multiple sound producer tracks, buffers the audio, and plays the audio of sound producer tracks in sync.
24
+
### Files to look at:
25
+
-`immediate_mode_sound_player.h`
26
+
-`immediate_mode_sound_player.cpp`
34
27
35
28
## OpenALSoftAudioEngine
36
29
This is a class to abstract 3D audio operations involving OpenAL Soft.
@@ -41,28 +34,3 @@ It is mostly just used to initialize the OpenAL system and query and test HRTF s
41
34
-`openalsoftaudioengine.h`
42
35
-`openalsoftaudioengine.cpp`
43
36
44
-
## Timeline Track Editor
45
-
This is a very big important module that is used by binaural audio editor.
46
-
47
-
It is imported from Timeline Track Editor github https://github.com/adct-the-experimenter/timeline-track-editor.
48
-
49
-
This module is contained in its own folder in src/timeline-track-editor.
50
-
51
-
The timeline track editor module contains many important classes such as Track, DoubleTrack, StereoAudioTrack, and TimelineFrame. This is the module to edit to improve the tracks and timeline and see how audio gets buffered.
52
-
53
-
**Without the Timeline Track Editor module, there would not be a listener track, soundproducer track, or even a timeline for playing audio!**
54
-
55
-
The reasons this is developed into its own separate project:
56
-
- It is very big.
57
-
- It is functional apart from binaural audio editor.
58
-
- It is much easier and cleaner to edit it as its own project rather than inside binaural audio editor.
0 commit comments