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;
}

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()
{
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 playback_latency);

virtual int SetBufferSize(jack_nframes_t buffer_size);

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



Loading…
Cancel
Save