Browse Source

Add default 'SetBufferSize' implementation for 'JackMidiDriver'.

tags/1.9.8
Devin Anderson 14 years ago
parent
commit
c9342fc058
2 changed files with 23 additions and 0 deletions
  1. +21
    -0
      common/JackMidiDriver.cpp
  2. +2
    -0
      common/JackMidiDriver.h

+ 21
- 0
common/JackMidiDriver.cpp View File

@@ -143,6 +143,27 @@ int JackMidiDriver::Write()
return 0; return 0;
} }


int JackMidiDriver::SetBufferSize(jack_nframes_t buffer_size)
{
jack_latency_range_t latency_range;
latency_range.max = buffer_size;
latency_range.min = buffer_size;
for (int i = 0; i < fCaptureChannels; i++) {
fGraphManager->GetPort(fCapturePortList[i])->
SetLatencyRange(JackCaptureLatency, &latency_range);
}
if (! fEngineControl->fSyncMode) {
buffer_size *= 2;
latency_range.max = buffer_size;
latency_range.min = buffer_size;
}
for (int i = 0; i < fPlaybackChannels; i++) {
fGraphManager->GetPort(fPlaybackPortList[i])->
SetLatencyRange(JackPlaybackLatency, &latency_range);
}
return 0;
}

int JackMidiDriver::ProcessNull() int JackMidiDriver::ProcessNull()
{ {
return 0; return 0;


+ 2
- 0
common/JackMidiDriver.h View File

@@ -69,6 +69,8 @@ class SERVER_EXPORT JackMidiDriver : public JackDriver
jack_nframes_t capture_latency, jack_nframes_t capture_latency,
jack_nframes_t playback_latency); jack_nframes_t playback_latency);


virtual int SetBufferSize(jack_nframes_t buffer_size);

virtual int ProcessRead(); virtual int ProcessRead();
virtual int ProcessWrite(); virtual int ProcessWrite();




Loading…
Cancel
Save