Skip to content

"Practice" mode — play a tune's part on a real drum and get scored on your timing #150

@pliski

Description

@pliski

Hi, and thanks for RoR Player — my local RoR group gets a lot of use out of it.

I'd like to propose a new feature, and I want to be upfront about the order of events: I built it first to scratch my own itch, so I'm opening this issue after the fact to check whether it's something you'd actually want upstream. No obligation at all.

The idea. A Practice tab where you play one instrument's part on a real drum into your microphone, and RoR Player listens and scores your timing against the tune — a count-in, the part looped (solo, or the band minus your part), a live timing meter, per-stroke feedback on the notation, and an optional audio-latency calibration step.

Why. I'm a beginner drummer and wanted to practise a part while actually seeing whether my timing was on the beat. It's been useful enough that I now host it for my local RoR group.

Try it live. My group runs it on a forked instance: https://ror-player.quaidubas30.ch — you're welcome to play with it there (needs a microphone + headphones), no setup required.

I've also opened draft PRs (app + docs) so the implementation is visible if you're curious, but I'm not assuming they're mergeable as-is. What I'd really value is your read on whether something like this fits the project's direction — and if so, anything about the scope or approach you'd want done differently. I'm happy to adapt it, break it into smaller pieces, or close it if it's not a fit.

Related prior art (which I only found afterwards): I see you've already sketched a couple of new-mode ideas — #52 (Autoplay mode), which even lists "a person wants to practice at home" as a use case, and #53 (Maestration mode). This Practice mode feels complementary rather than overlapping: #52/#53 have the player act as band/maestra so a human can play along, whereas this is the inverse — the human plays their part on a real drum and the app listens and scores their timing. If you'd rather see it folded into the Autoplay direction, or scoped differently, I'm glad to adjust.

Thanks for considering it!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions