diff options
| -rw-r--r-- | .lock-waf_linux2_build | 2 | ||||
| -rw-r--r-- | build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/test.cpp.1.o | bin | 1384 -> 1384 bytes | |||
| -rwxr-xr-x | build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/testprog | bin | 7199 -> 7200 bytes | |||
| -rw-r--r-- | build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/test.cpp.1.o | bin | 1392 -> 1392 bytes | |||
| -rwxr-xr-x | build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/testprog | bin | 7228 -> 7232 bytes | |||
| -rw-r--r-- | build/.lock-waf_linux2_build | 2 | ||||
| -rw-r--r-- | build/.wafpickle-linux2-34015472-98 | bin | 96568 -> 96571 bytes | |||
| -rwxr-xr-x | build/LV2-render | bin | 73108 -> 73240 bytes | |||
| -rw-r--r-- | build/config.log | 2 | ||||
| -rw-r--r-- | build/src/LV2-render.c.1.o | bin | 30328 -> 30536 bytes | |||
| -rw-r--r-- | src/LV2-render.c | 38 |
11 files changed, 24 insertions, 20 deletions
diff --git a/.lock-waf_linux2_build b/.lock-waf_linux2_build index 3ff64ca..3d980ab 100644 --- a/.lock-waf_linux2_build +++ b/.lock-waf_linux2_build @@ -1,5 +1,5 @@ argv = ['./waf', 'configure'] -environ = {'WINDOWID': '20971816', 'INFINALITY_FT_FRINGE_FILTER_STRENGTH': '50', 'INFINALITY_FT_USE_VARIOUS_TWEAKS': 'true', 'LOGNAME': 'pepper', 'USER': 'pepper', 'PATH': '/home/pepper/.gem/ruby/2.1.0/bin:/home/pepper/.gem/ruby/2.1.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/firstscripts:/root/.gem/ruby/2.1.0/bin:/opt/android-sdk/build-tools/19.0.2/:/opt/android-sdk/platform-tools:/opt/android-sdk/tools:/opt/devkitpro/devkitPPC/bin:/opt/marytts/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/', 'XDG_VTNR': '1', 'HOME': '/home/pepper', 'paul': '6172753373', 'HG': '/usr/bin/hg', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'XAUTHORITY': '/home/pepper/.Xauthority', 'SHLVL': '3', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-q8Glzzx1D0,guid=98eb615718ccf533f9efb3c154c746ab', 'WINDOWPATH': '1', 'EDITOR': 'vim', 'JAVA_HOME': '/usr/lib/jvm/java-7-openjdk', 'ANDROID_SWT': '/usr/share/java', 'dad': '6174598251', 'XDG_RUNTIME_DIR': '/run/user/1002', 'VTE_VERSION': '3603', 'INFINALITY_FT_FILTER_PARAMS': '06 22 36 22 06', 'ANDROID_HOME': '/opt/android-sdk', 'XDG_SESSION_ID': 'c1', 'DEVKITPRO': '/opt/devkitpro', '_': './waf', 'MOZ_PLUGIN_PATH': '/usr/lib/mozilla/plugins', 'GREP_OPTIONS': '--color=auto', 'DISPLAY': ':0', 'GTK_MODULES': 'canberra-gtk-module', 'INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH': '20', 'OLDPWD': '/home/pepper', 'ANT_HOME': '/usr/share/apache-ant', 'DEVKITPPC': '/opt/devkitpro/devkitPPC', 'PWD': '/home/pepper/LV2-render', 'calla': '3109381479', 'COLORTERM': 'gnome-terminal', 'MAIL': '/var/spool/mail/pepper', 'XDG_SEAT': 'seat0'} +environ = {'MYVIMRC': '/home/pepper/.vimrc', 'WINDOWID': '20971526', 'INFINALITY_FT_FRINGE_FILTER_STRENGTH': '50', 'INFINALITY_FT_USE_VARIOUS_TWEAKS': 'true', 'LOGNAME': 'pepper', 'USER': 'pepper', 'PATH': '/home/pepper/.gem/ruby/2.1.0/bin:/home/pepper/.gem/ruby/2.1.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/firstscripts:/root/.gem/ruby/2.1.0/bin:/opt/android-sdk/build-tools/19.0.2/:/opt/android-sdk/platform-tools:/opt/android-sdk/tools:/opt/devkitpro/devkitPPC/bin:/opt/marytts/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/', 'XDG_VTNR': '1', 'HOME': '/home/pepper', 'paul': '6172753373', 'HG': '/usr/bin/hg', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'XAUTHORITY': '/home/pepper/.Xauthority', 'SHLVL': '4', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-H6vXrKgpA9,guid=7f0aa2463d332ed5aff35eaf54c813a1', 'WINDOWPATH': '1', 'EDITOR': 'vim', 'JAVA_HOME': '/usr/lib/jvm/java-7-openjdk', 'ANDROID_SWT': '/usr/share/java', 'COLORTERM': 'gnome-terminal', 'dad': '6174598251', 'XDG_RUNTIME_DIR': '/run/user/1002', 'VTE_VERSION': '3603', 'INFINALITY_FT_FILTER_PARAMS': '06 22 36 22 06', 'ANDROID_HOME': '/opt/android-sdk', 'XDG_SESSION_ID': 'c1', 'DEVKITPRO': '/opt/devkitpro', '_': './waf', 'MOZ_PLUGIN_PATH': '/usr/lib/mozilla/plugins', 'VIMRUNTIME': '/usr/share/vim/vim74', 'GREP_OPTIONS': '--color=auto', 'DISPLAY': ':0', 'GTK_MODULES': 'canberra-gtk-module', 'INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH': '20', 'ANT_HOME': '/usr/share/apache-ant', 'VIM': '/usr/share/vim', 'PWD': '/home/pepper/LV2-render', 'calla': '3109381479', 'DEVKITPPC': '/opt/devkitpro/devkitPPC', 'MAIL': '/var/spool/mail/pepper', 'XDG_SEAT': 'seat0'} files = ['/home/pepper/LV2-render/wscript'] hash = '~\x8a\x88\x18\xd5\xff\\\xc7\x1e+Y\xf0\xa2hK\xb4' options = {'docdir': None, 'ultra_strict': False, 'force': False, 'verbose': 0, 'pardebug': False, 'destdir': '', 'no_jack_session': False, 'zones': '', 'prefix': '/usr/local/', 'download': False, 'grind': False, 'targets': '', 'configdir': None, 'mandir': None, 'nocache': False, 'progress_bar': 0, 'top': '', 'libdir': None, 'strict': False, 'datadir': None, 'lv2_user': False, 'out': '', 'check_cxx_compiler': 'g++ icpc', 'bindir': None, 'files': '', 'lv2_system': False, 'jobs': 4, 'docs': False, 'distcheck_args': None, 'no_qt': False, 'lv2dir': None, 'keep': 0, 'includedir': None, 'debug': False, 'check_c_compiler': 'gcc icc'} diff --git a/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/test.cpp.1.o b/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/test.cpp.1.o Binary files differindex 6510d5e..9e38eeb 100644 --- a/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/test.cpp.1.o +++ b/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/test.cpp.1.o diff --git a/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/testprog b/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/testprog Binary files differindex fcba65b..664cee6 100755 --- a/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/testprog +++ b/build/.conf_check_623450d91353b10e839bd52fd98cd354/testbuild/testprog diff --git a/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/test.cpp.1.o b/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/test.cpp.1.o Binary files differindex 5ad9471..456937b 100644 --- a/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/test.cpp.1.o +++ b/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/test.cpp.1.o diff --git a/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/testprog b/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/testprog Binary files differindex 35a8953..d94a12d 100755 --- a/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/testprog +++ b/build/.conf_check_af37a22df4c19cf0432d3404a6b219d1/testbuild/testprog diff --git a/build/.lock-waf_linux2_build b/build/.lock-waf_linux2_build index 3ff64ca..3d980ab 100644 --- a/build/.lock-waf_linux2_build +++ b/build/.lock-waf_linux2_build @@ -1,5 +1,5 @@ argv = ['./waf', 'configure'] -environ = {'WINDOWID': '20971816', 'INFINALITY_FT_FRINGE_FILTER_STRENGTH': '50', 'INFINALITY_FT_USE_VARIOUS_TWEAKS': 'true', 'LOGNAME': 'pepper', 'USER': 'pepper', 'PATH': '/home/pepper/.gem/ruby/2.1.0/bin:/home/pepper/.gem/ruby/2.1.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/firstscripts:/root/.gem/ruby/2.1.0/bin:/opt/android-sdk/build-tools/19.0.2/:/opt/android-sdk/platform-tools:/opt/android-sdk/tools:/opt/devkitpro/devkitPPC/bin:/opt/marytts/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/', 'XDG_VTNR': '1', 'HOME': '/home/pepper', 'paul': '6172753373', 'HG': '/usr/bin/hg', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'XAUTHORITY': '/home/pepper/.Xauthority', 'SHLVL': '3', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-q8Glzzx1D0,guid=98eb615718ccf533f9efb3c154c746ab', 'WINDOWPATH': '1', 'EDITOR': 'vim', 'JAVA_HOME': '/usr/lib/jvm/java-7-openjdk', 'ANDROID_SWT': '/usr/share/java', 'dad': '6174598251', 'XDG_RUNTIME_DIR': '/run/user/1002', 'VTE_VERSION': '3603', 'INFINALITY_FT_FILTER_PARAMS': '06 22 36 22 06', 'ANDROID_HOME': '/opt/android-sdk', 'XDG_SESSION_ID': 'c1', 'DEVKITPRO': '/opt/devkitpro', '_': './waf', 'MOZ_PLUGIN_PATH': '/usr/lib/mozilla/plugins', 'GREP_OPTIONS': '--color=auto', 'DISPLAY': ':0', 'GTK_MODULES': 'canberra-gtk-module', 'INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH': '20', 'OLDPWD': '/home/pepper', 'ANT_HOME': '/usr/share/apache-ant', 'DEVKITPPC': '/opt/devkitpro/devkitPPC', 'PWD': '/home/pepper/LV2-render', 'calla': '3109381479', 'COLORTERM': 'gnome-terminal', 'MAIL': '/var/spool/mail/pepper', 'XDG_SEAT': 'seat0'} +environ = {'MYVIMRC': '/home/pepper/.vimrc', 'WINDOWID': '20971526', 'INFINALITY_FT_FRINGE_FILTER_STRENGTH': '50', 'INFINALITY_FT_USE_VARIOUS_TWEAKS': 'true', 'LOGNAME': 'pepper', 'USER': 'pepper', 'PATH': '/home/pepper/.gem/ruby/2.1.0/bin:/home/pepper/.gem/ruby/2.1.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/firstscripts:/root/.gem/ruby/2.1.0/bin:/opt/android-sdk/build-tools/19.0.2/:/opt/android-sdk/platform-tools:/opt/android-sdk/tools:/opt/devkitpro/devkitPPC/bin:/opt/marytts/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/:/opt/android-sdk/tools/:/opt/android-sdk/platform-tools/', 'XDG_VTNR': '1', 'HOME': '/home/pepper', 'paul': '6172753373', 'HG': '/usr/bin/hg', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm-256color', 'SHELL': '/bin/bash', 'XAUTHORITY': '/home/pepper/.Xauthority', 'SHLVL': '4', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-H6vXrKgpA9,guid=7f0aa2463d332ed5aff35eaf54c813a1', 'WINDOWPATH': '1', 'EDITOR': 'vim', 'JAVA_HOME': '/usr/lib/jvm/java-7-openjdk', 'ANDROID_SWT': '/usr/share/java', 'COLORTERM': 'gnome-terminal', 'dad': '6174598251', 'XDG_RUNTIME_DIR': '/run/user/1002', 'VTE_VERSION': '3603', 'INFINALITY_FT_FILTER_PARAMS': '06 22 36 22 06', 'ANDROID_HOME': '/opt/android-sdk', 'XDG_SESSION_ID': 'c1', 'DEVKITPRO': '/opt/devkitpro', '_': './waf', 'MOZ_PLUGIN_PATH': '/usr/lib/mozilla/plugins', 'VIMRUNTIME': '/usr/share/vim/vim74', 'GREP_OPTIONS': '--color=auto', 'DISPLAY': ':0', 'GTK_MODULES': 'canberra-gtk-module', 'INFINALITY_FT_CHROMEOS_STYLE_SHARPENING_STRENGTH': '20', 'ANT_HOME': '/usr/share/apache-ant', 'VIM': '/usr/share/vim', 'PWD': '/home/pepper/LV2-render', 'calla': '3109381479', 'DEVKITPPC': '/opt/devkitpro/devkitPPC', 'MAIL': '/var/spool/mail/pepper', 'XDG_SEAT': 'seat0'} files = ['/home/pepper/LV2-render/wscript'] hash = '~\x8a\x88\x18\xd5\xff\\\xc7\x1e+Y\xf0\xa2hK\xb4' options = {'docdir': None, 'ultra_strict': False, 'force': False, 'verbose': 0, 'pardebug': False, 'destdir': '', 'no_jack_session': False, 'zones': '', 'prefix': '/usr/local/', 'download': False, 'grind': False, 'targets': '', 'configdir': None, 'mandir': None, 'nocache': False, 'progress_bar': 0, 'top': '', 'libdir': None, 'strict': False, 'datadir': None, 'lv2_user': False, 'out': '', 'check_cxx_compiler': 'g++ icpc', 'bindir': None, 'files': '', 'lv2_system': False, 'jobs': 4, 'docs': False, 'distcheck_args': None, 'no_qt': False, 'lv2dir': None, 'keep': 0, 'includedir': None, 'debug': False, 'check_c_compiler': 'gcc icc'} diff --git a/build/.wafpickle-linux2-34015472-98 b/build/.wafpickle-linux2-34015472-98 Binary files differindex 48f8353..2e62dcd 100644 --- a/build/.wafpickle-linux2-34015472-98 +++ b/build/.wafpickle-linux2-34015472-98 diff --git a/build/LV2-render b/build/LV2-render Binary files differindex 7febce3..98fd254 100755 --- a/build/LV2-render +++ b/build/LV2-render diff --git a/build/config.log b/build/config.log index 715c01e..ca2bb47 100644 --- a/build/config.log +++ b/build/config.log @@ -1,4 +1,4 @@ -# project LV2-render (1.4.6) configured on Tue Jan 27 01:36:36 2015 by +# project LV2-render (1.4.6) configured on Tue Jan 27 18:12:10 2015 by # waf 1.7.16 (abi 98, python 20708f0 on linux2) # using ./waf configure # diff --git a/build/src/LV2-render.c.1.o b/build/src/LV2-render.c.1.o Binary files differindex 3981920..9f093da 100644 --- a/build/src/LV2-render.c.1.o +++ b/build/src/LV2-render.c.1.o diff --git a/src/LV2-render.c b/src/LV2-render.c index b13f50d..8065bcb 100644 --- a/src/LV2-render.c +++ b/src/LV2-render.c @@ -130,8 +130,9 @@ SNDFILE *open_wav_file(char *output_file, float sample_rate, int nchannels, size int process_midi_cb(fluid_midi_event_t *event, size_t msecs, process_midi_ctx_t *ctx) { Jalv *jalv = ctx->jalv; - float **pluginOutputBuffers = (float **)calloc(jalv->num_ports, sizeof(float *)); - float *pluginOutputBuffer_first = NULL; + float **pluginAudioIOBuffers = (float **)calloc(jalv->num_ports, sizeof(float *)); + float *pluginAudioPtrs[100]; + size_t pluginAudioOutputCount = 0; size_t nframes; /* convert msecs */ @@ -141,14 +142,16 @@ int process_midi_cb(fluid_midi_event_t *event, size_t msecs, process_midi_ctx_t for (uint32_t p = 0; p < jalv->num_ports; ++p) { struct Port* port = &jalv->ports[p]; if (port->type == TYPE_AUDIO) { - pluginOutputBuffers[p] = (float *)calloc(nframes, sizeof(float)); - if(!pluginOutputBuffer_first){ pluginOutputBuffer_first = pluginOutputBuffers[p]; }; - + pluginAudioIOBuffers[p] = (float *)calloc(nframes, sizeof(float)); lilv_instance_connect_port( jalv->instance, p, //connect port p to this location - pluginOutputBuffers[p] + pluginAudioIOBuffers[p] ); - printf("buffer %x ptr: %8x\n", p, pluginOutputBuffers[p]); + if (port->flow == FLOW_OUTPUT){ + pluginAudioPtrs[pluginAudioOutputCount] = pluginAudioIOBuffers[p]; + pluginAudioOutputCount++; + printf("buffer %x ptr: %8x\n", p, pluginAudioIOBuffers[p]); + } } else if (port->type == TYPE_EVENT && port->flow == FLOW_INPUT) { lv2_evbuf_reset(port->evbuf, true); @@ -165,8 +168,6 @@ int process_midi_cb(fluid_midi_event_t *event, size_t msecs, process_midi_ctx_t sizeof(midi_event_buffer), midi_event_buffer); } else if (port->type == TYPE_EVENT) { /* Clear event output for plugin to write to */ -// printf("CLEARING EVENT\n"); - lv2_evbuf_reset(port->evbuf, false); } } @@ -175,13 +176,20 @@ int process_midi_cb(fluid_midi_event_t *event, size_t msecs, process_midi_ctx_t //TODO // /* Interleaving for libsndfile. */ int nchannels = 2; + if (nchannels > pluginAudioOutputCount){ + fprintf(stderr, "ERROR: Requesting more audio outputs than available from plugin.\n"); + exit(1); + } float sf_output[nchannels * nframes]; //nframes is n times longer now for (int i = 0; i < nframes; i++) { /* First, write all the obvious channels */ /* If outs > nchannels, we *could* do mixing - but don't. */ //actually you need another for loop in here for 10 channel wavs - sf_output[i * nchannels + 0] = pluginOutputBuffers[3][i]; - sf_output[i * nchannels + 1] = pluginOutputBuffers[4][i]; +// sf_output[i * nchannels + 0] = pluginAudioIOBuffers[3][i]; +// sf_output[i * nchannels + 1] = pluginAudioIOBuffers[4][i]; + for (size_t n = 0; n < pluginAudioOutputCount; n++){ + sf_output[i * nchannels + n] = pluginAudioPtrs[n][i]; + } /* Then, if user wants *more* output channels than there are * audio output ports (ie outs < nchannels), copy the last audio * out to all the remaining channels. If outs >= nchannels, this @@ -190,14 +198,10 @@ int process_midi_cb(fluid_midi_event_t *event, size_t msecs, process_midi_ctx_t write_audio_to_file(ctx->outfile, sf_output, nframes); for(int i=0; i<jalv->num_ports; i++){ - if(pluginOutputBuffers[i]){ - free(pluginOutputBuffers[i]); + if(pluginAudioIOBuffers[i]){ + free(pluginAudioIOBuffers[i]); } } -//something like this<F - - - return 0; } |
