A downloadable sketch

Created with Processing 3.3.7, this little sketch mimics the look and feel of an old school cassette deck.

Design:

My cassette deck was inspired by the portable/personal tape players I used in elementary school for listening quizzes. (Example: https://www.bhphotovideo.com/c/product/796979-REG/Califone_CAS1500_CAS1500_Cassette_Player_Recorder.html) I tried to make a more modern-looking version with the same general UI layout for this project. It's more simplified since it doesn't have the recording and eject features and the volume knob is moved from the side to make it functional as part of the player.

Functionality:
The play, stop, fast forward, and rewind buttons operate as like a real tape player, and the reset button stops the track and sets it back to the beginning. When clicked, the button appears darker as 'pressed down' and remains pressed until the next button is pressed, like a real tape player. 
The volume knob can be turned up and down by clicking and dragging the bar or scrolling with the mouse while hovering over it. This replicates the volume knob on the side of a tape player, but moved to the top.

Audio Feedback:
I chose a mechanical-sounding button noise (source: https://freesound.org/people/bubaproducer/sounds/107134/) to be consistant with the visual design inspiration.
I chose not to connect it to the volume control gain because it's not part of the music track and is 'live' feedback.

Source Code available on github.


Download

Download
GerkeMaura_ce4.zip 1 MB