Synchronous ambient audio visualisation across old phones!
By Eric D'Addio
Table of Contents
- About the Project
About The Project
A passive music visualiser for music you have playing within device’s microphone range. Made for putting old android phones to use as an item of passive digital furniture. Uses the microphone to listen to music played on a users preferred device and renders a fullscreen music visualisation for decorative purpose.
The majority of the work for this application was performed as part of my Computer Science degree at the University of Brighton
Lots of people, myself included, have a plethora of old phones they no longer use as their main device but keep hold of, often these old phones see little or no use, instead they sit idle gathering dust.
Visualisers for music are on the way out, Spotify removed this feature pre-2012 with no intention of bringing it back (Community.spotify.com, 2012). Using a visualiser application like iTunes will likely consume valuable screen estate harming productivity.
The application puts old phones to use by transforming them into on-desk visualisers for music which is being played aloud within the environment by utilising the device’s microphone. Allowing users a visualiser for their music without sacrificing screen estate on their main devices or having to play music from the phone rendering the visualisation. It also puts an old phone to a fun use, rather than being sat on the shelf. If the user has several old android phones they can daisy-chain them together to make a longer visualisation.
- Android Studio
- Java (Android flavoured)
How it Works
There's no interaction between the phones, they're ignorant of each other. The illusion of communication is performed with a simple time delay. Audio levels are stored in a continually updating array:
A single phone:
If music is suddenly stopped: At 1 seconds [ 0, 4, 7, 11, 8, 4, 0] becomes [▁▂▃▅▄▂▁] At 2 seconds [ 0, 0, 4, 7, 11, 8, 4] becomes [▁▁▂▃▅▄▂] At 3 seconds [ 0, 0, 0, 4, 7, 11, 8] becomes [▁▁▁▂▃▅▄] Visualisation & Array moving left to right
A pair of phones:
At 1 seconds [ 0, 4, 7, 11, 8, 4, 0, 0, 0, 0, 11, 8, 4, 0] becomes (Phone @ Position 0) [▁▂▃▅▄▂▁] (Phone @ Position 1) [▁▁▅▄▂▁] At 2 seconds [ 0, 0, 4, 7, 11, 8, 4, 0, 0, 0, 0, 11, 8, 4] becomes (Phone @ Position 0) [▁▁▂▃▅▄▂] (Phone @ Position 1) [▁▁▁▅▄▂] At 3 seconds [ 0, 0, 0, 4, 7, 11, 8, 4, 0, 0, 0, 0, 11, 8] becomes (Phone @ Position 0) [▁▁▁▂▃▅▄] (Phone @ Position 1 )[▂▁▁▁▅▄]
- Clone the repo
- Open in Android Studio
- Export as App
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature)
- Commit your Changes (
git commit -m 'Add some AmazingFeature)
- Push to the Branch (
git push origin feature/AmazingFeature)
- Open a Pull Request
Distributed under the MIT License. See
LICENSE for more information.
Eric D'Addio - @oldnewstandard
Project Link: https://github.com/bogstandard/AndroidPassiveMusicViz