summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2017-04-12 20:19:44 +0200
committerDavid Robillard <d@drobilla.net>2017-04-12 20:22:41 +0200
commitc63c2359c943f6e7f061de22a7f513b0b925cec5 (patch)
tree238d51e6e6fa029f04df6710c3063f5a4b4c6ccf
parentb718c77fe338c18b61280aefcf8d42c01a6299fd (diff)
downloadingen-c63c2359c943f6e7f061de22a7f513b0b925cec5.tar.gz
ingen-c63c2359c943f6e7f061de22a7f513b0b925cec5.tar.bz2
ingen-c63c2359c943f6e7f061de22a7f513b0b925cec5.zip
Allow buffer size to be specified on the command line
Applies to PortAudio driver only
-rw-r--r--src/Configuration.cpp1
-rw-r--r--src/server/PortAudioDriver.cpp2
2 files changed, 2 insertions, 1 deletions
diff --git a/src/Configuration.cpp b/src/Configuration.cpp
index 603c1c9d..cd85bf3e 100644
--- a/src/Configuration.cpp
+++ b/src/Configuration.cpp
@@ -49,6 +49,7 @@ Configuration::Configuration(Forge& forge)
, _max_name_length(0)
{
add("atomicBundles", "atomic-bundles", 'a', "Execute bundles atomically", GLOBAL, forge.Bool, forge.make(false));
+ add("bufferSize", "buffer-size", 'b', "Buffer size in samples", GLOBAL, forge.Int, forge.make(1024));
add("clientPort", "client-port", 'C', "Client port", GLOBAL, forge.Int, Atom());
add("connect", "connect", 'c', "Connect to engine URI", SESSION, forge.String, forge.alloc("unix:///tmp/ingen.sock"));
add("engine", "engine", 'e', "Run (JACK) engine", SESSION, forge.Bool, forge.make(false));
diff --git a/src/server/PortAudioDriver.cpp b/src/server/PortAudioDriver.cpp
index 5ceb0aa8..1c0a1b0b 100644
--- a/src/server/PortAudioDriver.cpp
+++ b/src/server/PortAudioDriver.cpp
@@ -56,7 +56,7 @@ PortAudioDriver::PortAudioDriver(Engine& engine)
, _sem(0)
, _stream(nullptr)
, _seq_size(4096)
- , _block_length(1024)
+ , _block_length(engine.world()->conf().option("buffer-size").get<int32_t>())
, _sample_rate(48000)
, _n_inputs(0)
, _n_outputs(0)