Skip to content

Create an audio-based Phoneme Discrimination ("Fine Tuning") Game #24

@acrosman

Description

@acrosman

This game focuses on the brain’s ability to distinguish between similar-sounding speech sounds (phonemes) at high speeds.

Gameplay:

The player hears a rapid-fire sequence of syllables like "ba," "da," "ga," or "pa."

The Task:

The player must identify if the sounds were the same or different.

How it scales:

The game introduces background noise (static or "babble") and speeds up the transition between consonants and vowels. This forces the brain to sharpen its auditory "filters."

Game Mechanics for Implementation

(Ideas from Gemini)

To implement this in your Electron app, you would follow a "Bottom-Up" training path.

Minimal Pairs: Use syllables that differ by only one "feature" (e.g., voicing or place of articulation).

Examples: /ba/ vs /pa/, /da/ vs /ga/, /bi/ vs /di/.

The "Stretching" Technique: In early versions of research software (like Fast ForWord), they used time-compressed speech. They would electronically "stretch" the consonant part of the sound to make it easier to hear, then gradually shorten it as the user improved.

The Task:

  1. The user hears a target sound (e.g., "ba").
  2. Two sounds are played in rapid succession (e.g., "ba... da").
  3. The user must identify which one matched the target.

Difficulty Scaling:

Phase 1: Clean audio, slow speed.
Phase 2: Natural speed.
Phase 3: Introduce "Speech-in-Noise"—add a layer of "coffee shop" background chatter or white noise.

Implementation Resources for JavaScript

Since you're using JavaScript/Electron, you can find high-quality phoneme samples in open-source linguistic databases:

  • The UCLA Phonetics Lab Archive: A massive collection of recorded phonemes from hundreds of languages.
  • Web Audio API "PannerNode": You can use this to play sounds in the left or right ear to add a "Spatial Auditory" layer to the game, which is another common research variable.
  • LAME.js or Wave.js: Since you'll be handling many small audio snippets, these libraries can help with real-time manipulation if you decide to try "stretching" the consonants programmatically.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions