Wave Library Generator Tool
About This Guide
This application note describes the usage of Wave Library Generator Tool alongside AudioWeaver Designer and demonstrates its uses. Wave Library Generator is a lightweight GUI used to set the parameters in AudioWeaver Designer for FFS-based Wave Players without the dependency of a MATLAB license. The FFS-based Wave Players basically emulate AWE flash file system images for reading out the wave samples.
Workings
Open the WaveLibraryGenerator exe, Add the audio files by ‘Add File(s)’ button as per the order you require. Select the Target Directory by browsing to the target folder. Type in ‘Target File Name’ as shown in the figure below. Press Generate.
![](../../__attachments/3039756535/att_4_for_3039756535.png?inst-v=afeb83b1-861e-46b8-b4de-1c642321bb7f)
Figure 1: Wave Library Generator Window
The output generated from the tool consists of a Binary file (.bin) with the selected wav/Ogg files along with an encoded U32 list of the file names in the order added in the Tool window as .csv. This .csv file is used to load into the TableSource module for Index mapping. The generated txt file contains a list of the included audio files and is solely for documentation purposes.
![](../../__attachments/3039756535/att_1_for_3039756535.png?inst-v=afeb83b1-861e-46b8-b4de-1c642321bb7f)
Figure 2: WaveLibraryGenerator Output
Output of the WaveLibraryGenerator, the Binary file can be used in examples where FileMemBuffer module is needed. Load the obtained .bin filepath into the FileMemBuffer module at the fileName in the arguments. This module provides the address of the Buffer pointer as an output which is taken as the starting address in the FFSWrapper module in case of native mode. The FFS Instance is provided to the Wave Player by the FFS Wrapper module. Indicate the wav files to be played in each Wave Player module by populating them into the respective ‘fileName’ as shown below.
![](../../__attachments/3039756535/att_2_for_3039756535.png?inst-v=afeb83b1-861e-46b8-b4de-1c642321bb7f)
Figure 3: Wave Player Properties
The .csv file generated is used in examples where a TableSource module is used to control the Wave Players. The CSV file contains the encoded names of the wav files and works by setting the fileName of the Wave Players via an Arrayset module as shown below. Use the following steps for a Table Source use case.
Go to TableSource > Arguments > numCols and enter the number of audio files in the wave library.
Go to TableSource > Array: coeff > Load from file.
Load the wave library .csv file.
Open TableSource and set the maximum to [number_of_audio_files – 1]
![](../../__attachments/3039756535/att_5_for_3039756535.png?inst-v=afeb83b1-861e-46b8-b4de-1c642321bb7f)
Figure 4: Encoded Table Source Array
plucky_16k.wav bell_short.wav appointed.wav WaveLibraryGenerator.exe