Inspired by a real-life listening party with my parents, I created an AR record player for Snapchat Spectacles.
Project Details
Role: Creator and Developer
Development Platform: Snap Lens Studio
Published on: Snapchat Spectacles
Programming Language: Javascript
Features: Hand tracking and hand gesture recognition
Inspiration & Concept
In the fall of 2023, I helped my parents clean and organize their basement. What does that have to do with a record player? I promise, I’m getting there. After a few LOOONG days, we completed the task and surveyed all the reclaimed space proudly. My parents are musicians, so it should be no surprise that they have a massive collection of music.
MASSIVE.
So we decided to set up a listening station to put the music to good use. We sat around the turntable with drinks in hand, relaxing and vibing to the music. We even took turns pulling albums from the shelf and playing DJ. In short, it was a lovely evening spent with my parents.
Development Process
In 2024, I was invited to Snapchat’s Lensfest and hackathon for the unveiling of the fifth generation of Spectacles AR glasses. I was fortunate to be among the first batch of devs and creatives to receive a pair, so I couldn’t wait to get home and experiment. My first question was, “Could I recreate the record player experience in AR?”
The latest version of Spectacles prioritizes a hands-free experience with a greater emphasis on hand tracking and voice recognition. As someone who used both features in many of my interactive projects, this excited my nerdy little heart.
First off, the hand tracking has come a long way since the previous version of Spectacles. Hand tracking capabilities were possible with the last generation (here’s proof!), but it required more setup and fiddling to get it to work.
The latest version of Lens Studio projects comes with a built-in “Spectacles Interaction Kit” that makes it a LOT easier to add gesture recognition, UI, and interactable objects.
These tools gave me a wonderful starting point for my record player.
I customized their default slider to create an album selection menu.
I added the Lens Studio interaction components to the records to instantly enable them to be grabbed and moved around.
The only interaction that required additional coding was the movement and rotation of the record player arm. The built-in rotation settings didn’t work well in this instance. I used JavaScript to handle the additional functionality.
I also created scripts to handle the logic to make the interactions work together.
What’s next?
This initial version is a solo player experience. The next version will be multiplayer to properly mimic that listening party experience. Stay tuned!
