Browse Source

Add IsFixedBufferSize method in all drivers.

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2636 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/1.90
sletz 17 years ago
parent
commit
e5bcc3068a
10 changed files with 46 additions and 0 deletions
  1. +4
    -0
      ChangeLog
  2. +5
    -0
      common/JackDriver.cpp
  3. +2
    -0
      common/JackDriver.h
  4. +6
    -0
      common/JackDummyDriver.h
  5. +6
    -0
      common/JackNetDriver.h
  6. +5
    -0
      common/JackServer.cpp
  7. +5
    -0
      common/JackThreadedDriver.cpp
  8. +1
    -0
      common/JackThreadedDriver.h
  9. +6
    -0
      linux/alsa/JackAlsaDriver.h
  10. +6
    -0
      macosx/JackCoreAudioDriver.h

+ 4
- 0
ChangeLog View File

@@ -21,6 +21,10 @@ Romain Moret
Jackdmp changes log Jackdmp changes log
--------------------------- ---------------------------


2008-07-03 Stephane Letz <letz@grame.fr>

* Add IsFixedBufferSize method in all drivers.

2008-07-02 Stephane Letz <letz@grame.fr> 2008-07-02 Stephane Letz <letz@grame.fr>


* New netioadapter in server client. * New netioadapter in server client.


+ 5
- 0
common/JackDriver.cpp View File

@@ -275,6 +275,11 @@ int JackDriver::Stop()
return 0; return 0;
} }


bool JackDriver::IsFixedBufferSize()
{
return true;
}

int JackDriver::SetBufferSize(jack_nframes_t buffer_size) int JackDriver::SetBufferSize(jack_nframes_t buffer_size)
{ {
return 0; return 0;


+ 2
- 0
common/JackDriver.h View File

@@ -71,6 +71,7 @@ class EXPORT JackDriverInterface
virtual int Start() = 0; virtual int Start() = 0;
virtual int Stop() = 0; virtual int Stop() = 0;
virtual bool IsFixedBufferSize() = 0;
virtual int SetBufferSize(jack_nframes_t buffer_size) = 0; virtual int SetBufferSize(jack_nframes_t buffer_size) = 0;
virtual int SetSampleRate(jack_nframes_t sample_rate) = 0; virtual int SetSampleRate(jack_nframes_t sample_rate) = 0;
@@ -163,6 +164,7 @@ class EXPORT JackDriver : public JackDriverClientInterface
virtual int Start(); virtual int Start();
virtual int Stop(); virtual int Stop();
virtual bool IsFixedBufferSize();
virtual int SetBufferSize(jack_nframes_t buffer_size); virtual int SetBufferSize(jack_nframes_t buffer_size);
virtual int SetSampleRate(jack_nframes_t sample_rate); virtual int SetSampleRate(jack_nframes_t sample_rate);


+ 6
- 0
common/JackDummyDriver.h View File

@@ -58,6 +58,12 @@ class JackDummyDriver : public JackAudioDriver


int Process(); int Process();
// BufferSize can be changed
bool IsFixedBufferSize()
{
return false;
}

int SetBufferSize(jack_nframes_t buffer_size); int SetBufferSize(jack_nframes_t buffer_size);


}; };


+ 6
- 0
common/JackNetDriver.h View File

@@ -84,6 +84,12 @@ namespace Jack
int Read(); int Read();
int Write(); int Write();
// BufferSize can be changed
bool IsFixedBufferSize()
{
return true;
}

int SetBufferSize(jack_nframes_t buffer_size) int SetBufferSize(jack_nframes_t buffer_size)
{ {
return -1; return -1;


+ 5
- 0
common/JackServer.cpp View File

@@ -193,6 +193,11 @@ int JackServer::SetBufferSize(jack_nframes_t buffer_size)
jack_log("SetBufferSize: requirement for new buffer size equals current value"); jack_log("SetBufferSize: requirement for new buffer size equals current value");
return 0; return 0;
} }
if (fAudioDriver->IsFixedBufferSize()) {
jack_log("SetBufferSize: driver only supports a fixed buffer size");
return 0;
}


if (fAudioDriver->Stop() != 0) { if (fAudioDriver->Stop() != 0) {
jack_error("Cannot stop audio driver"); jack_error("Cannot stop audio driver");


+ 5
- 0
common/JackThreadedDriver.cpp View File

@@ -101,6 +101,11 @@ int JackThreadedDriver::Write()
return fDriver->Write(); return fDriver->Write();
} }


bool JackThreadedDriver::IsFixedBufferSize()
{
return fDriver->IsFixedBufferSize();
}

int JackThreadedDriver::SetBufferSize(jack_nframes_t buffer_size) int JackThreadedDriver::SetBufferSize(jack_nframes_t buffer_size)
{ {
return fDriver->SetBufferSize(buffer_size); return fDriver->SetBufferSize(buffer_size);


+ 1
- 0
common/JackThreadedDriver.h View File

@@ -70,6 +70,7 @@ class EXPORT JackThreadedDriver : public JackDriverClientInterface, public JackR
virtual int Start(); virtual int Start();
virtual int Stop(); virtual int Stop();


virtual bool IsFixedBufferSize();
virtual int SetBufferSize(jack_nframes_t buffer_size); virtual int SetBufferSize(jack_nframes_t buffer_size);
virtual int SetSampleRate(jack_nframes_t sample_rate); virtual int SetSampleRate(jack_nframes_t sample_rate);


+ 6
- 0
linux/alsa/JackAlsaDriver.h View File

@@ -150,6 +150,12 @@ class JackAlsaDriver : public JackAudioDriver
int Read(); int Read();
int Write(); int Write();


// BufferSize can be changed
bool IsFixedBufferSize()
{
return false;
}

int SetBufferSize(jack_nframes_t nframes); int SetBufferSize(jack_nframes_t nframes);


// jack api emulation for the midi driver // jack api emulation for the midi driver


+ 6
- 0
macosx/JackCoreAudioDriver.h View File

@@ -172,6 +172,12 @@ class JackCoreAudioDriver : public JackAudioDriver
int Read(); int Read();
int Write(); int Write();


// BufferSize can be changed
bool IsFixedBufferSize()
{
return false;
}

int SetBufferSize(jack_nframes_t buffer_size); int SetBufferSize(jack_nframes_t buffer_size);
}; };




Loading…
Cancel
Save