A VisualizerBox architecture
Music visualizers often look really cool, especially at first. But after a time they may seem too repetitive, even boring. Therefore, in our design, we'll build the ability to queue up a number of different visualizations, and then, after a period of time, transition from one to the next.
To begin our implementation, we'll define an architecture structure that will be expandable and let us develop new visualizations as we go along.
However, even before that, we must ensure that the app has permission to use the Android audio features we need. Add the following directives to AndroidManifest.xml
:
<!-- Visualizer permissions --> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
Remember that the RenderBox
library, first developed in Chapter 5, RenderBox Engine, allows MainActivity
to delegate much of the graphics and...