Live Microphone Pitch Access for AudioAnalyzer

Hi Roblox Devs,

I’d like to request a feature to enable reading live microphone pitch from players through the AudioAnalyzer system. Currently, AudioAnalyzer can analyze Sound assets, but live microphone input (via AudioDeviceInput) cannot reliably return spectrum, RMS, or pitch data.

This limits the creation of singing or karaoke-style games, like Wii Sing It, where knowing a player’s real-time pitch is essential. Access to live pitch would allow developers to:

  • Create singing games that score players based on pitch accuracy.
  • Implement real-time vocal visualizers.
  • Build new music-based experiences that respond dynamically to player input.

Current limitations:

  • AudioAnalyzer:GetSpectrum() returns empty when used with AudioDeviceInput.
  • RMS/PeakLevel values are zero for live mic input.
  • This makes it impossible to detect pitch or loudness in real-time for gameplay.

Proposed feature:

  • Allow AudioAnalyzer to read live microphone pitch/frequency data client-side.
  • Optional: provide a simplified “dominant frequency” or FFT output for developers.
  • Ensure privacy by keeping the data client-side and not exposing raw audio.

This would open up many new creative possibilities for music and social experiences on Roblox, while keeping privacy intact.

If you’re a developer and would like to see this feature, consider liking the post to expose it to more developers on Roblox.

2 Likes

Last time I checked these properties are updated for AudioDeviceInputs.

Also this just seems like a re-written post for this (already requested) feature:

Thanks for the response.

Just to clarify a few things:

1. RMS/PeakLevel on AudioDeviceInput
These do update, but they don’t provide any usable pitch or frequency information. They only give loudness. That’s why singing-style games still aren’t possible — there’s no way to extract the dominant frequency or even a rough FFT from live mic input.

2. This isn’t the same feature as the post you linked
The linked request is specifically about enabling GetSpectrum() for AudioDeviceInput.
My request is broader and more practical: native pitch/dominant-frequency access, not just raw FFT data.

Even if Roblox enabled GetSpectrum() tomorrow, developers would still need to build reliable pitch-detection algorithms on top of it, which is heavy and inconsistent at Roblox’s update rates. A built-in pitch estimate is the only realistic way to support karaoke/singing mechanics.

3. Live pitch matters more than full spectrum
Games like Wii Sing It or SingStar don’t need the full FFT — they need fast, stable fundamental frequency detection. That’s exactly what’s missing right now.

4. Privacy concerns
I agree privacy is important, which is why my suggestion keeps everything client-side and never exposes raw audio. Returning only pitch or a simplified dominant frequency maintains privacy while enabling a whole category of voice-interactive experiences.

So while I appreciate the link, the feature I’m asking for is not a repost — it’s a request for Roblox to expose usable musical pitch data from live mic input, something that still doesn’t exist today.

1 Like