1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-10-25 15:53:52 +02:00

Remove MIDI-only playback (without portaudio) logic

Instead, always start a portaudio stream (if there is either a note track or a wave track).  This ensures that playback is always in sync (eg when recording), and gets rid of a lot of duplicate logic throughout.

Scrubbing (currently) still doesn't work with only note tracks, but it should be easier to fix that now than trying to reimplement all of the scrubbing time logic.

Conflicts:
	src/AudioIO.cpp
This commit is contained in:
Pokechu22
2017-07-02 00:54:55 -07:00
committed by Paul Licameli
parent 23e517fce5
commit 4d3d32ca4d
2 changed files with 24 additions and 131 deletions

View File

@@ -532,14 +532,11 @@ private:
volatile long mNumFrames;
/// How many frames of zeros were output due to pauses?
volatile long mNumPauseFrames;
/// pause in ms if no audio playback
volatile long mPauseTime;
/// total of backward jumps
volatile double mMidiLoopOffset;
volatile long mAudioFramesPerBuffer;
/// Used by Midi process to record that pause has begun.
/// Pause time is accumulated in mPauseTime. This variable is shared
/// so that it can be cleared when playback begins.
/// Used by Midi process to record that pause has begun,
/// so that AllNotesOff() is only delivered once
volatile bool mMidiPaused;
Alg_seq_ptr mSeq;