Signed-off-by: falkTX <falktx@gmail.com>tags/v2.1-alpha2
| @@ -1,18 +1,46 @@ | |||
| os: | |||
| - linux | |||
| language: | |||
| - cpp | |||
| sudo: required | |||
| dist: trusty | |||
| languages: c++ | |||
| compiler: gcc | |||
| matrix: | |||
| include: | |||
| # linux with default, builds native and bridges | |||
| - os: linux | |||
| compiler: gcc | |||
| env: | |||
| - TARGET="linux" | |||
| # linux with macOS cross-compilation | |||
| - os: linux | |||
| compiler: gcc | |||
| env: | |||
| - TARGET="macos" | |||
| # linux with win32 cross-compilation | |||
| - os: linux | |||
| compiler: gcc | |||
| env: | |||
| - TARGET="win32" | |||
| # linux with win64 cross-compilation | |||
| - os: linux | |||
| compiler: gcc | |||
| env: | |||
| - TARGET="win64" | |||
| # linux with gcc 8, strict build | |||
| - os: linux | |||
| compiler: gcc | |||
| env: | |||
| - TARGET="linux-strict" | |||
| before_install: | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/before_install.sh | |||
| install: | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/install.sh | |||
| script: | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/script-linux.sh | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/script-macos.sh | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/script-win32.sh | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/script-win64.sh | |||
| - sh ${TRAVIS_BUILD_DIR}/.travis/script-${TARGET}.sh | |||
| @@ -2,9 +2,14 @@ | |||
| set -e | |||
| sudo add-apt-repository ppa:kxstudio-debian/kxstudio -y | |||
| sudo add-apt-repository ppa:kxstudio-debian/mingw -y | |||
| sudo add-apt-repository ppa:kxstudio-debian/toolchain -y | |||
| sudo add-apt-repository -y ppa:kxstudio-debian/kxstudio | |||
| sudo add-apt-repository -y ppa:kxstudio-debian/mingw | |||
| sudo add-apt-repository -y ppa:kxstudio-debian/toolchain | |||
| if [ "${TARGET}" = "linux-strict" ]; then | |||
| sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test | |||
| fi | |||
| sudo apt-get update -qq | |||
| sudo apt-get install kxstudio-repos | |||
| sudo apt-get update -qq | |||
| @@ -2,30 +2,83 @@ | |||
| set -e | |||
| sudo apt-get install -y \ | |||
| g++-multilib \ | |||
| pkg-config \ | |||
| pyqt5-dev-tools \ | |||
| python3-pyqt5.qtsvg \ | |||
| python3-rdflib \ | |||
| libgtk2.0-dev \ | |||
| libgtk-3-dev \ | |||
| libqt4-dev \ | |||
| qtbase5-dev \ | |||
| libasound2-dev \ | |||
| libpulse-dev \ | |||
| libmagic-dev \ | |||
| libgl1-mesa-dev \ | |||
| libx11-dev \ | |||
| libx11-6:i386 \ | |||
| liblo-static \ | |||
| fluidsynth-static \ | |||
| apple-x86-setup \ | |||
| mingw32-x-gcc \ | |||
| mingw32-x-pkgconfig \ | |||
| mingw64-x-gcc \ | |||
| mingw64-x-pkgconfig \ | |||
| wine-rt-dev | |||
| if [ "${TARGET}" = "linux" ]; then | |||
| sudo apt-get install -y \ | |||
| g++-multilib \ | |||
| pkg-config \ | |||
| pyqt5-dev-tools \ | |||
| python3-pyqt5.qtsvg \ | |||
| python3-rdflib \ | |||
| libgtk2.0-dev \ | |||
| libgtk-3-dev \ | |||
| libqt4-dev \ | |||
| qtbase5-dev \ | |||
| libasound2-dev \ | |||
| libpulse-dev \ | |||
| libmagic-dev \ | |||
| libgl1-mesa-dev \ | |||
| libx11-dev \ | |||
| libx11-6:i386 \ | |||
| liblo-static \ | |||
| fluidsynth-static \ | |||
| mingw32-x-gcc \ | |||
| mingw32-x-pkgconfig \ | |||
| mingw64-x-gcc \ | |||
| mingw64-x-pkgconfig \ | |||
| wine-rt-dev | |||
| # Fix for 32bit bridge link | |||
| sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so | |||
| elif [ "${TARGET}" = "linux-strict" ]; then | |||
| sudo apt-get install -y \ | |||
| g++-8 \ | |||
| pkg-config \ | |||
| pyqt5-dev-tools \ | |||
| python3-pyqt5.qtsvg \ | |||
| python3-rdflib \ | |||
| libgtk2.0-dev \ | |||
| libgtk-3-dev \ | |||
| libqt4-dev \ | |||
| qtbase5-dev \ | |||
| libasound2-dev \ | |||
| libpulse-dev \ | |||
| libmagic-dev \ | |||
| libgl1-mesa-dev \ | |||
| libx11-dev \ | |||
| libx11-6:i386 \ | |||
| liblo-static \ | |||
| fluidsynth-static | |||
| elif [ "${TARGET}" = "macos" ]; then | |||
| sudo apt-get install -y \ | |||
| pkg-config \ | |||
| apple-x86-setup | |||
| # mkdir /tmp/osx-macports-pkgs | |||
| # cd /tmp/osx-macports-pkgs | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-flac_1.2.1-1_all.deb | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libiconv_1.14-0_all.deb | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-liblo_0.26-1_all.deb | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libogg_1.3.0-1_all.deb | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libsndfile_1.0.25-0_all.deb | |||
| # wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libvorbis_1.3.3-0_all.deb | |||
| # cd ~ | |||
| # rm -r /tmp/osx-macports-pkgs | |||
| elif [ "${TARGET}" = "win32" ]; then | |||
| sudo apt-get install -y \ | |||
| mingw32-x-gcc \ | |||
| mingw32-x-pkgconfig | |||
| elif [ "${TARGET}" = "win64" ]; then | |||
| sudo apt-get install -y \ | |||
| mingw32-x-gcc \ | |||
| mingw32-x-pkgconfig \ | |||
| mingw64-x-gcc \ | |||
| mingw64-x-pkgconfig | |||
| fi | |||
| # mingw32-x-fluidsynth | |||
| # mingw32-x-fftw | |||
| @@ -37,16 +90,3 @@ sudo apt-get install -y \ | |||
| # mingw64-x-liblo | |||
| # mingw64-x-mxml | |||
| # mingw64-x-zlib | |||
| mkdir /tmp/osx-macports-pkgs | |||
| cd /tmp/osx-macports-pkgs | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-flac_1.2.1-1_all.deb | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libiconv_1.14-0_all.deb | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-liblo_0.26-1_all.deb | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libogg_1.3.0-1_all.deb | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libsndfile_1.0.25-0_all.deb | |||
| wget https://launchpad.net/~kxstudio-team/+archive/ubuntu/builds/+files/apple-macports-libvorbis_1.3.3-0_all.deb | |||
| cd ~ | |||
| rm -r /tmp/osx-macports-pkgs | |||
| sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so | |||
| @@ -0,0 +1,33 @@ | |||
| #!/bin/bash | |||
| set -e | |||
| # Preparation | |||
| export CC=gcc-8 | |||
| export CXX=g++-8 | |||
| export PKG_CONFIG_PATH=/opt/kxstudio/lib/pkgconfig:${PKG_CONFIG_PATH} | |||
| unset CFLAGS | |||
| unset CXXFLAGS | |||
| unset LDFLAGS | |||
| # Start clean | |||
| make distclean >/dev/null | |||
| # Print available features | |||
| make features | |||
| # Build things that we skip strict tests for | |||
| make -C source/modules/audio_decoder | |||
| make -C source/modules/dgl | |||
| make -C source/modules/hylia | |||
| make -C source/modules/rtaudio | |||
| make -C source/modules/rtmidi | |||
| make -C source/modules/sfzero | |||
| make -C source/modules/water | |||
| make -C source/theme all qt4 qt5 | |||
| # FIXME | |||
| make -C source/libjack | |||
| # Build native stuff | |||
| make TESTBUILD=true | |||
| @@ -3,7 +3,7 @@ | |||
| set -e | |||
| # Preparation | |||
| _FLAGS="-I/opt/kxstudio/include -Werror" | |||
| _FLAGS="-Werror" | |||
| export CFLAGS="${_FLAGS}" | |||
| export CXXFLAGS="${_FLAGS}" | |||
| export LDFLAGS="-L/opt/kxstudio/lib" | |||
| @@ -571,11 +571,13 @@ LINK := ln -sf | |||
| # --------------------------------------------------------------------------------------------------------------------- | |||
| ifneq ($(DEBUG),true) | |||
| ifneq ($(TESTBUILD),true) | |||
| ifneq (,$(wildcard $(CWD)/native-plugins/external/Makefile.mk)) | |||
| EXTERNAL_PLUGINS = true | |||
| BASE_FLAGS += -DHAVE_EXTERNAL_PLUGINS | |||
| include $(CWD)/native-plugins/external/Makefile.mk | |||
| endif | |||
| endif | |||
| endif | |||
| # --------------------------------------------------------------------------------------------------------------------- | |||
| @@ -209,7 +209,12 @@ void CarlaEngine::oscSend_control_set_parameter_ranges1(const uint pluginId, con | |||
| char targetPath[std::strlen(pData->oscData->path)+24]; | |||
| std::strcpy(targetPath, pData->oscData->path); | |||
| std::strcat(targetPath, "/set_parameter_ranges1"); | |||
| try_lo_send(pData->oscData->target, targetPath, "iifff", static_cast<int32_t>(pluginId), static_cast<int32_t>(index), def, min, max); | |||
| try_lo_send(pData->oscData->target, targetPath, "iifff", | |||
| static_cast<int32_t>(pluginId), | |||
| static_cast<int32_t>(index), | |||
| static_cast<double>(def), | |||
| static_cast<double>(min), | |||
| static_cast<double>(max)); | |||
| } | |||
| void CarlaEngine::oscSend_control_set_parameter_ranges2(const uint pluginId, const uint32_t index, const float step, const float stepSmall, const float stepLarge) const noexcept | |||
| @@ -226,7 +231,12 @@ void CarlaEngine::oscSend_control_set_parameter_ranges2(const uint pluginId, con | |||
| char targetPath[std::strlen(pData->oscData->path)+24]; | |||
| std::strcpy(targetPath, pData->oscData->path); | |||
| std::strcat(targetPath, "/set_parameter_ranges2"); | |||
| try_lo_send(pData->oscData->target, targetPath, "iifff", static_cast<int32_t>(pluginId), static_cast<int32_t>(index), step, stepSmall, stepLarge); | |||
| try_lo_send(pData->oscData->target, targetPath, "iifff", | |||
| static_cast<int32_t>(pluginId), | |||
| static_cast<int32_t>(index), | |||
| static_cast<double>(step), | |||
| static_cast<double>(stepSmall), | |||
| static_cast<double>(stepLarge)); | |||
| } | |||
| void CarlaEngine::oscSend_control_set_parameter_midi_cc(const uint pluginId, const uint32_t index, const int16_t cc) const noexcept | |||
| @@ -269,12 +279,16 @@ void CarlaEngine::oscSend_control_set_parameter_value(const uint pluginId, const | |||
| CARLA_SAFE_ASSERT_RETURN(pluginId <= pData->curPluginCount,); | |||
| CARLA_SAFE_ASSERT_RETURN(index < 50,); | |||
| CARLA_SAFE_ASSERT_RETURN(index != PARAMETER_NULL,); | |||
| carla_debug("CarlaEngine::oscSend_control_set_parameter_value(%i, %i:%s, %f)", pluginId, index, (index < 0) ? InternalParameterIndex2Str(static_cast<InternalParameterIndex>(index)) : "(none)", value); | |||
| carla_debug("CarlaEngine::oscSend_control_set_parameter_value(%i, %i:%s, %f)", pluginId, index, | |||
| (index < 0) ? InternalParameterIndex2Str(static_cast<InternalParameterIndex>(index)) : "(none)", value); | |||
| char targetPath[std::strlen(pData->oscData->path)+21]; | |||
| std::strcpy(targetPath, pData->oscData->path); | |||
| std::strcat(targetPath, "/set_parameter_value"); | |||
| try_lo_send(pData->oscData->target, targetPath, "iif", static_cast<int32_t>(pluginId), index, value); | |||
| try_lo_send(pData->oscData->target, targetPath, "iif", | |||
| static_cast<int32_t>(pluginId), | |||
| index, | |||
| static_cast<double>(value)); | |||
| } | |||
| void CarlaEngine::oscSend_control_set_default_value(const uint pluginId, const uint32_t index, const float value) const noexcept | |||
| @@ -289,7 +303,10 @@ void CarlaEngine::oscSend_control_set_default_value(const uint pluginId, const u | |||
| char targetPath[std::strlen(pData->oscData->path)+19]; | |||
| std::strcpy(targetPath, pData->oscData->path); | |||
| std::strcat(targetPath, "/set_default_value"); | |||
| try_lo_send(pData->oscData->target, targetPath, "iif", static_cast<int32_t>(pluginId), static_cast<int32_t>(index), value); | |||
| try_lo_send(pData->oscData->target, targetPath, "iif", | |||
| static_cast<int32_t>(pluginId), | |||
| static_cast<int32_t>(index), | |||
| static_cast<double>(value)); | |||
| } | |||
| void CarlaEngine::oscSend_control_set_current_program(const uint pluginId, const int32_t index) const noexcept | |||
| @@ -1015,7 +1015,7 @@ public: | |||
| } | |||
| else | |||
| { | |||
| rindex -= fRdfDescriptor->PortCount; | |||
| rindex -= static_cast<int32_t>(fRdfDescriptor->PortCount); | |||
| if (rindex < static_cast<int32_t>(fRdfDescriptor->ParameterCount)) | |||
| { | |||
| @@ -1198,7 +1198,7 @@ public: | |||
| if (pData->param.data[parameterId].rindex >= static_cast<int32_t>(fRdfDescriptor->PortCount)) | |||
| { | |||
| const uint32_t rparamId = pData->param.data[parameterId].rindex - fRdfDescriptor->PortCount; | |||
| const uint32_t rparamId = static_cast<uint32_t>(pData->param.data[parameterId].rindex) - fRdfDescriptor->PortCount; | |||
| CARLA_SAFE_ASSERT_UINT2_RETURN(rparamId < fRdfDescriptor->ParameterCount, | |||
| rparamId, fRdfDescriptor->PortCount,); | |||
| @@ -1218,10 +1218,10 @@ public: | |||
| lv2_atom_forge_bool(&fAtomForge, fixedValue > 0.5f); | |||
| break; | |||
| case LV2_PARAMETER_INT: | |||
| lv2_atom_forge_int(&fAtomForge, fixedValue + 0.5f); | |||
| lv2_atom_forge_int(&fAtomForge, static_cast<int32_t>(fixedValue + 0.5f)); | |||
| break; | |||
| case LV2_PARAMETER_LONG: | |||
| lv2_atom_forge_long(&fAtomForge, fixedValue + 0.5f); | |||
| lv2_atom_forge_long(&fAtomForge, static_cast<int64_t>(fixedValue + 0.5f)); | |||
| break; | |||
| case LV2_PARAMETER_FLOAT: | |||
| lv2_atom_forge_float(&fAtomForge, fixedValue); | |||
| @@ -1391,7 +1391,7 @@ public: | |||
| lv2_atom_forge_urid(&fAtomForge, getCustomURID(fFilePathURI)); | |||
| lv2_atom_forge_key(&fAtomForge, kUridPatchValue); | |||
| lv2_atom_forge_path(&fAtomForge, path, std::strlen(path)); | |||
| lv2_atom_forge_path(&fAtomForge, path, static_cast<uint32_t>(std::strlen(path))); | |||
| lv2_atom_forge_pop(&fAtomForge, &forgeFrame); | |||
| @@ -256,17 +256,21 @@ private: | |||
| #endif | |||
| }; | |||
| // ------------------------------------------------------------------------- | |||
| #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) | |||
| # pragma GCC diagnostic push | |||
| # pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" | |||
| #endif | |||
| #if (QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)) | |||
| # include "CarlaBridgeToolkitQt5.moc" | |||
| #else | |||
| # if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) | |||
| # pragma GCC diagnostic push | |||
| # pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" | |||
| # endif | |||
| # include "CarlaBridgeToolkitQt4.moc" | |||
| # if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) | |||
| # pragma GCC diagnostic pop | |||
| # endif | |||
| #endif | |||
| #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)) | |||
| # pragma GCC diagnostic pop | |||
| #endif | |||
| // ------------------------------------------------------------------------- | |||
| @@ -282,12 +286,13 @@ CARLA_BRIDGE_UI_END_NAMESPACE | |||
| // ------------------------------------------------------------------------- | |||
| #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0) | |||
| # include "resources.qt5.cpp" | |||
| #else | |||
| // missing declaration | |||
| int qInitResources(); | |||
| int qCleanupResources(); | |||
| #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0) | |||
| # include "resources.qt5.cpp" | |||
| #else | |||
| # include "resources.qt4.cpp" | |||
| #endif | |||
| @@ -56,8 +56,11 @@ endif | |||
| ifeq ($(TESTBUILD),true) | |||
| BUILD_GTK2_FLAGS += -isystem /usr/include/glib-2.0 | |||
| BUILD_GTK2_FLAGS += -isystem /usr/include/gtk-2.0 | |||
| BUILD_GTK3_FLAGS += -isystem /usr/include/glib-2.0 | |||
| BUILD_GTK3_FLAGS += -isystem /usr/include/gtk-3.0 | |||
| BUILD_QT4_FLAGS += -isystem /usr/include/qt4 | |||
| BUILD_QT5_FLAGS += -isystem /usr/include/qt5 | |||
| BUILD_QT5_FLAGS += -isystem /usr/include/x86_64-linux-gnu/qt5 | |||
| endif | |||
| @@ -221,12 +221,12 @@ static void do_ladspa_check(lib_t& libHandle, const char* const filename, const | |||
| } | |||
| uint hints = 0x0; | |||
| int audioIns = 0; | |||
| int audioOuts = 0; | |||
| int audioTotal = 0; | |||
| int parametersIns = 0; | |||
| int parametersOuts = 0; | |||
| int parametersTotal = 0; | |||
| uint audioIns = 0; | |||
| uint audioOuts = 0; | |||
| uint audioTotal = 0; | |||
| uint parametersIns = 0; | |||
| uint parametersOuts = 0; | |||
| uint parametersTotal = 0; | |||
| if (LADSPA_IS_HARD_RT_CAPABLE(descriptor->Properties)) | |||
| hints |= PLUGIN_IS_RTSAFE; | |||
| @@ -479,13 +479,13 @@ static void do_dssi_check(lib_t& libHandle, const char* const filename, const bo | |||
| } | |||
| uint hints = 0x0; | |||
| int audioIns = 0; | |||
| int audioOuts = 0; | |||
| int audioTotal = 0; | |||
| int midiIns = 0; | |||
| int parametersIns = 0; | |||
| int parametersOuts = 0; | |||
| int parametersTotal = 0; | |||
| uint audioIns = 0; | |||
| uint audioOuts = 0; | |||
| uint audioTotal = 0; | |||
| uint midiIns = 0; | |||
| uint parametersIns = 0; | |||
| uint parametersOuts = 0; | |||
| uint parametersTotal = 0; | |||
| if (LADSPA_IS_HARD_RT_CAPABLE(ldescriptor->Properties)) | |||
| hints |= PLUGIN_IS_RTSAFE; | |||
| @@ -1116,11 +1116,11 @@ static void do_vst_check(lib_t& libHandle, const char* const filename, const boo | |||
| // get everything else | |||
| uint hints = 0x0; | |||
| int audioIns = effect->numInputs; | |||
| int audioOuts = effect->numOutputs; | |||
| int midiIns = 0; | |||
| int midiOuts = 0; | |||
| int parameters = effect->numParams; | |||
| uint audioIns = static_cast<uint>(std::max(0, effect->numInputs)); | |||
| uint audioOuts = static_cast<uint>(std::max(0, effect->numOutputs)); | |||
| uint midiIns = 0; | |||
| uint midiOuts = 0; | |||
| uint parameters = static_cast<uint>(std::max(0, effect->numParams)); | |||
| if (effect->flags & effFlagsHasEditor) | |||
| hints |= PLUGIN_HAS_CUSTOM_UI; | |||
| @@ -1154,8 +1154,8 @@ static void do_vst_check(lib_t& libHandle, const char* const filename, const boo | |||
| midiIns = 1; | |||
| } | |||
| float* bufferAudioIn[std::max(1, audioIns)]; | |||
| float* bufferAudioOut[std::max(1, audioOuts)]; | |||
| float* bufferAudioIn[std::max(1U, audioIns)]; | |||
| float* bufferAudioOut[std::max(1U, audioOuts)]; | |||
| if (audioIns == 0) | |||
| { | |||
| @@ -1163,7 +1163,7 @@ static void do_vst_check(lib_t& libHandle, const char* const filename, const boo | |||
| } | |||
| else | |||
| { | |||
| for (int j=0; j < audioIns; ++j) | |||
| for (uint j=0; j < audioIns; ++j) | |||
| { | |||
| bufferAudioIn[j] = new float[kBufferSize]; | |||
| carla_zeroFloats(bufferAudioIn[j], kBufferSize); | |||
| @@ -1176,7 +1176,7 @@ static void do_vst_check(lib_t& libHandle, const char* const filename, const boo | |||
| } | |||
| else | |||
| { | |||
| for (int j=0; j < audioOuts; ++j) | |||
| for (uint j=0; j < audioOuts; ++j) | |||
| { | |||
| bufferAudioOut[j] = new float[kBufferSize]; | |||
| carla_zeroFloats(bufferAudioOut[j], kBufferSize); | |||
| @@ -1236,9 +1236,9 @@ static void do_vst_check(lib_t& libHandle, const char* const filename, const boo | |||
| if (gVstNeedsIdle) | |||
| effect->dispatcher(effect, DECLARE_VST_DEPRECATED(effIdle), 0, 0, nullptr, 0.0f); | |||
| for (int j=0; j < audioIns; ++j) | |||
| for (uint j=0; j < audioIns; ++j) | |||
| delete[] bufferAudioIn[j]; | |||
| for (int j=0; j < audioOuts; ++j) | |||
| for (uint j=0; j < audioOuts; ++j) | |||
| delete[] bufferAudioOut[j]; | |||
| } | |||
| @@ -48,6 +48,7 @@ OBJS = \ | |||
| TARGET = $(BINDIR)/jack/libjack.so.0 | |||
| else | |||
| OBJS = | |||
| TARGET = | |||
| endif | |||
| # ---------------------------------------------------------------------------------------------------------------------- | |||
| @@ -1,6 +1,6 @@ | |||
| /* | |||
| * Carla OSC utils | |||
| * Copyright (C) 2012-2014 Filipe Coelho <falktx@falktx.com> | |||
| * Copyright (C) 2012-2019 Filipe Coelho <falktx@falktx.com> | |||
| * | |||
| * This program is free software; you can redistribute it and/or | |||
| * modify it under the terms of the GNU General Public License as | |||
| @@ -128,7 +128,7 @@ void osc_send_control(const CarlaOscData& oscData, const int32_t index, const fl | |||
| char targetPath[std::strlen(oscData.path)+9]; | |||
| std::strcpy(targetPath, oscData.path); | |||
| std::strcat(targetPath, "/control"); | |||
| try_lo_send(oscData.target, targetPath, "if", index, value); | |||
| try_lo_send(oscData.target, targetPath, "if", index, static_cast<double>(value)); | |||
| } | |||
| static inline | |||
| @@ -209,7 +209,7 @@ void osc_send_sample_rate(const CarlaOscData& oscData, const float sampleRate) n | |||
| char targetPath[std::strlen(oscData.path)+13]; | |||
| std::strcpy(targetPath, oscData.path); | |||
| std::strcat(targetPath, "/sample-rate"); | |||
| try_lo_send(oscData.target, targetPath, "f", sampleRate); | |||
| try_lo_send(oscData.target, targetPath, "f", static_cast<double>(sampleRate)); | |||
| } | |||
| static inline | |||