<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://epd.zeldamods.org/wiki/Aal::atom/history?feed=atom</id>
	<title>Aal::atom - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://epd.zeldamods.org/wiki/Aal::atom/history?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://epd.zeldamods.org/wiki/Aal::atom/history"/>
	<updated>2026-04-28T13:45:08Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://epd.zeldamods.org/w/index.php?title=Aal::atom&amp;diff=118&amp;oldid=prev</id>
		<title>Watertoon: Start a writeup on aal atom</title>
		<link rel="alternate" type="text/html" href="https://epd.zeldamods.org/w/index.php?title=Aal::atom&amp;diff=118&amp;oldid=prev"/>
		<updated>2024-05-04T01:33:41Z</updated>

		<summary type="html">&lt;p&gt;Start a writeup on aal atom&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Aal atom serves as a replacement for NintendoWare atk. As such, NintendoWare formats like Bfsar and Bfstm are replaced with EPD&amp;#039;s simple Bwav format. This library extends functionality of nn::audio.&lt;br /&gt;
&lt;br /&gt;
== Backend ==&lt;br /&gt;
&lt;br /&gt;
=== AudioRendererController ===&lt;br /&gt;
The main manager of all aal atom managers.&lt;br /&gt;
&lt;br /&gt;
==== AudioRendererThread ====&lt;br /&gt;
This thread is responsible for processing 3 of the CommandQueues for non-stream thread commands, processing is typically requested once a frame.&lt;br /&gt;
&lt;br /&gt;
=== AudioDeviceNameManager ===&lt;br /&gt;
Manages the audio device names and volumes for the TV, Stereo Jack, and Built In Speakers.&lt;br /&gt;
&lt;br /&gt;
=== BusManager ===&lt;br /&gt;
Manages audio buses. An IBus is implemented as either a SubMixBus or a FinalMixBus. There is a single FinalMixBus, which is responsible for outputting audio to the audio device. There is a handle table allocator for SubMixBus&amp;#039;s. IBus are implemented on top of a RoutingNode, which is responsible for handling a bus&amp;#039;s links to destination buses.&lt;br /&gt;
&lt;br /&gt;
=== BusSendManager ===&lt;br /&gt;
Manages a handle table of BusSends used for objects sending audio data to a RoutingNode.&lt;br /&gt;
&lt;br /&gt;
=== SourceManager ===&lt;br /&gt;
Manages audio sources. A Source is implemented on top of a RoutingNode, as the destination of it&amp;#039;s audio is a bus. Sources can have multiple Voices.&lt;br /&gt;
&lt;br /&gt;
=== CommandBufferManager ===&lt;br /&gt;
Manages 4 Command Queues with 16 usable Command List slots for scheduling ICommands.&lt;br /&gt;
&lt;br /&gt;
=== CommandManager ===&lt;br /&gt;
Allocator for ICommands. ICommands have a Type which corresponds to a name, some types are shared by multiple classes.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Command Names&lt;br /&gt;
!Name&lt;br /&gt;
!Type Value&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Invalid&lt;br /&gt;
|0&lt;br /&gt;
|Not used.&lt;br /&gt;
|-&lt;br /&gt;
|Reserve&lt;br /&gt;
|1&lt;br /&gt;
|Unknown.&lt;br /&gt;
|-&lt;br /&gt;
|Blank&lt;br /&gt;
|2&lt;br /&gt;
|The default dummy ICommand.&lt;br /&gt;
|-&lt;br /&gt;
|BlankWithCheck&lt;br /&gt;
|3&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|AcquireVoice&lt;br /&gt;
|4&lt;br /&gt;
|Triggers a Source to acquire the underlying nn::audio voice slots for every Voice&lt;br /&gt;
|-&lt;br /&gt;
|UpdateActiveSourceList&lt;br /&gt;
|5&lt;br /&gt;
|Rebuilds the SourceManager&amp;#039;s active Source array&lt;br /&gt;
|-&lt;br /&gt;
|UpdateDeactiveSourceList&lt;br /&gt;
|6&lt;br /&gt;
|Frees inactive Sources from the SourceManager&amp;#039;s active Source array&lt;br /&gt;
|-&lt;br /&gt;
|SetPlayState&lt;br /&gt;
|7&lt;br /&gt;
|Adjusts the PlayState for every Voice that is part of a Source&lt;br /&gt;
|-&lt;br /&gt;
|PrepareWave&lt;br /&gt;
|8&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SetVolume&lt;br /&gt;
|9&lt;br /&gt;
|Adjusts the volume for every Voice that is part of a Source&lt;br /&gt;
|-&lt;br /&gt;
|SetPitch&lt;br /&gt;
|10&lt;br /&gt;
|Adjusts the pitch for every Voice that is part of a Source&lt;br /&gt;
|-&lt;br /&gt;
|SetPriority&lt;br /&gt;
|11&lt;br /&gt;
|Adjusts the priority for every Voice that is part of a Source&lt;br /&gt;
|-&lt;br /&gt;
|SetChannelVolume&lt;br /&gt;
|12&lt;br /&gt;
|Adjusts the mix volumes for a Source?&lt;br /&gt;
|-&lt;br /&gt;
|SetSourceVolume&lt;br /&gt;
|13&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|SetBiquadFilter&lt;br /&gt;
|14&lt;br /&gt;
|Adjusts the BiquadFilter parameters for every voice that is part of a Source&lt;br /&gt;
|-&lt;br /&gt;
|UpdateSourceConnection&lt;br /&gt;
|15&lt;br /&gt;
|Updates the IBus destinations for a Source&lt;br /&gt;
|-&lt;br /&gt;
|Unknown&lt;br /&gt;
|16&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|Unknown&lt;br /&gt;
|17&lt;br /&gt;
|Unused.&lt;br /&gt;
|-&lt;br /&gt;
|FileReadRequest&lt;br /&gt;
|18&lt;br /&gt;
|Tells the stream thread to read in the next part of an audio stream.&lt;br /&gt;
|-&lt;br /&gt;
|FileRegistrationRequest&lt;br /&gt;
|19&lt;br /&gt;
|Registers an audio stream to the stream thread.&lt;br /&gt;
|-&lt;br /&gt;
|FileUnregistrationRequest&lt;br /&gt;
|20&lt;br /&gt;
|Unregisters an audio stream from the stream thread.&lt;br /&gt;
|-&lt;br /&gt;
|AcquireBus&lt;br /&gt;
|21&lt;br /&gt;
|Triggers an IBus to acquire it&amp;#039;s underlying nn::audio type&lt;br /&gt;
|-&lt;br /&gt;
|UpdateActiveBusList&lt;br /&gt;
|22&lt;br /&gt;
|Rebuilds the BusManager active IBus array and frees unused SubMixes&lt;br /&gt;
|-&lt;br /&gt;
|SetBusVolume&lt;br /&gt;
|23&lt;br /&gt;
|Adjusts the volume of an IBus&lt;br /&gt;
|-&lt;br /&gt;
|SetBusSendVolume&lt;br /&gt;
|24&lt;br /&gt;
|Adjusts the volume of a BusSendArray&lt;br /&gt;
|-&lt;br /&gt;
|UpdateBusConnection&lt;br /&gt;
|25&lt;br /&gt;
|Updates the IBus destinations for an IBus&lt;br /&gt;
|-&lt;br /&gt;
|AddEffect&lt;br /&gt;
|26&lt;br /&gt;
|Adds an IEffect to an IBus&lt;br /&gt;
|-&lt;br /&gt;
|RemoveEffect&lt;br /&gt;
|27&lt;br /&gt;
|Removes an IEffect from an IBus&lt;br /&gt;
|-&lt;br /&gt;
|UpdateEffect&lt;br /&gt;
|28&lt;br /&gt;
|Processes an IEffect&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== ClipManager ===&lt;br /&gt;
Manages a handle table of Clips. Clips appear to wrap bwav.&lt;br /&gt;
&lt;br /&gt;
=== FaderBufferManager ===&lt;br /&gt;
Manages a handle table of Faders.&lt;br /&gt;
&lt;br /&gt;
=== StreamBufferManager ===&lt;/div&gt;</summary>
		<author><name>Watertoon</name></author>
	</entry>
</feed>