PolyMeilex / PolyMeilex/Neothesia

[BUG] RPN tunings to not get reset between the playback

Open
#244 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Rust
Stars
1.5k
Forks
115
Avg merge
7h 48m
Merged PRs (30d)
8

Description

Hi,
I've found a bug in Neothesia's builtin synth.

The bug

Using the built-in synthesizer, interrupting the playback mid-way does not seem to properly reset the registered Parameter Numbers.
For example using RPN coarse tuning results in the next MIDI file being detuned.

Reproduction steps

I'm using the Flatpak version.

test-.zip

  1. Make sure that "Buildin Synth" is enabled. The soundfont shouldn't matter.
  2. Play test-rpn-00-02-coarse-tuning.mid and press escape on the 7th note.
  3. Play test-c-major-scale.mid and hear the detune.
  4. Restart Neothesia and play test-c-major-scale.mid again. The tuning is correct this time.

If this is oxisynth's fault and not Neothesia forgetting an RPN reset, then I'll post the bug there too.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the problem with test-rpn-00-02-coarse-tuning.mid and test-c-major-scale.mid while the built-in synthesizer is enabled, interrupting playback on the seventh note. Trace the built-in synthesizer's playback interruption and RPN state handling; done means the second MIDI file plays in correct tuning without restarting Neothesia.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.