Почему мой Tone.js Transport не запускается несколько раз подряд? - PullRequest
1 голос
/ 30 июня 2019

Я использую Tone.js, чтобы воспроизвести какой-нибудь саундтрек, и стратирую на Transport при Angular времени загрузки компонента:

constructor() {
    this.startTransport();
}

private startTransport() {
  Tone.Transport.stop();
  Tone.Transport.start(TRANSPORT_START_DELAY);
}

Я вижу, что конструктор вызывается дважды. Поэтому я подумал, чтобы убедиться, что транспорт был остановлен, прежде чем начать его. Должен ли я понимать, что транспорт должен быть запущен только один раз в жизненном цикле приложения? В любом случае, остановка перед стартом не помогла мне.

Проблема в том, что иногда, когда я пытаюсь воспроизвести несколько саундтреков, один за другим, регистратор не появляется.

track.measures.forEach((measure: Measure) => {
  Tone.Transport.schedule((time: any) => {
    console.log('New track / measure starting at: ' + time);
  }, measureCounter + 'm');
  measureCounter++;
});
...