Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Feature: Respect AudioContext.outputLatency

Offen
#1,455 0 Kommentare 1 Reaktion 1 zugewiesene Person Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@Danielku15 arbeitet bereits daran.

Seit 14.5.2024.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Beschreibung

See https://github.com/CoderLine/alphaTab/discussions/1454

AlphaTab currently does not respect the AudioContext.outputLatency describing the timely difference between us passing the audio samples to the context and the actual time it will be heard by the user.

This leads to a shift of the cursor and seen audio.

AlphaTab should correctly expose the time and tick position according to the heard audio on the synthesizer area. Internally it might still need to keep its "synth" timeline. Things to consider:

  • It seems the audio latency is not static but can change any time.
  • There is a time axis within the midi sequencer, and one on the synth level.
    • The sequencer position decides which midi events to play next for audio generation.
    • The one on synth level is handling the actual audio position according to the samples played by the output. Here we likely need adjustment
  • The synth level audio is also used to determine whether the playback finished (and potentially seek back to the start of the desired playback range - if looping is active).
  • When looping and jumping/seeking back to an older position, we need to be careful on just applying the latency wrongly. We might be stopping/seeking too early resulting in a strange cursor jump/positioning.
  • Testing might be tricky as I'm not aware of a way to modify the latency.
Vorherrschende Sprache
TypeScript
Sterne
1.9k
Forks
297
Ø Merge
9 Std. 2 Min.
Gemergte PRs (30 T.)
44

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus CoderLine/alphaTab

Alle Issues in CoderLine/alphaTab

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.