diff --git a/src/native/windows/msofficecomm/NoStdCPlusPlus.cxx b/src/native/windows/msofficecomm/NoStdCPlusPlus.cxx deleted file mode 100644 index 0662baf93..000000000 --- a/src/native/windows/msofficecomm/NoStdCPlusPlus.cxx +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Jitsi, the OpenSource Java VoIP and Instant Messaging client. - * - * Distributable under LGPL license. - * See terms of license at gnu.org. - */ -#include - -void * operator new (size_t size) { return ::malloc(size); } -void operator delete (void *ptr) { ::free(ptr); } -void *__cxa_pure_virtual = NULL; diff --git a/src/native/windows/msofficecomm/build-x64.sh b/src/native/windows/msofficecomm/build-x64.sh deleted file mode 100755 index b6292a3ef..000000000 --- a/src/native/windows/msofficecomm/build-x64.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh - -CC=x86_64-w64-mingw32-gcc -JAVA_HOME=$HOME/Downloads/jdk-7u4-windows-i586 -OCSDK_HOME=$HOME/Downloads/OCSDK -WINVER=0x0501 - -BASE_DIR=`dirname $0` -if [ "x${BASE_DIR}" = "x" ]; then - BASE_DIR=. -else - BASE_DIR=`cd ${BASE_DIR}/../../../../ && pwd` -fi -SRC_DIR=${BASE_DIR}/src/native/windows/msofficecomm -STRIP=`echo ${CC} | sed 's/gcc/strip/'` -TARGET=${BASE_DIR}/lib/native/windows-64/jmsofficecomm.dll - -for CXX_FILE in ${SRC_DIR}/*.cxx; do - ${CC} \ - -c \ - -D_JNI_IMPLEMENTATION_ -D_UNICODE -DUNICODE -D_WIN32_WINNT=${WINVER} -DWINVER=${WINVER} \ - -fno-exceptions -fno-rtti \ - -I${JAVA_HOME}/include -I${JAVA_HOME}/include/win32 -I${OCSDK_HOME} \ - -O2 \ - -Wall \ - -x 'c++' \ - ${CXX_FILE} \ - -o ${SRC_DIR}/`basename ${CXX_FILE} .cxx`.o -done -${CC} \ - -shared \ - -Wl,--kill-at \ - ${SRC_DIR}/*.o \ - ${SRC_DIR}/*.res \ - -o ${TARGET} \ - -lole32 -loleaut32 -luuid -${STRIP} -x ${TARGET} diff --git a/src/native/windows/msofficecomm/build-x86.sh b/src/native/windows/msofficecomm/build-x86.sh deleted file mode 100755 index 584c711a3..000000000 --- a/src/native/windows/msofficecomm/build-x86.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh - -CC=i686-w64-mingw32-gcc -JAVA_HOME=$HOME/Downloads/jdk-7u4-windows-i586 -OCSDK_HOME=$HOME/Downloads/OCSDK -WINVER=0x0501 - -BASE_DIR=`dirname $0` -if [ "x${BASE_DIR}" = "x" ]; then - BASE_DIR=. -else - BASE_DIR=`cd ${BASE_DIR}/../../../../ && pwd` -fi -SRC_DIR=${BASE_DIR}/src/native/windows/msofficecomm -STRIP=`echo ${CC} | sed 's/gcc/strip/'` -TARGET=${BASE_DIR}/lib/native/windows/jmsofficecomm.dll - -for CXX_FILE in ${SRC_DIR}/*.cxx; do - ${CC} \ - -c \ - -D_JNI_IMPLEMENTATION_ -D_UNICODE -DUNICODE -D_WIN32_WINNT=${WINVER} -DWINVER=${WINVER} \ - -fno-exceptions -fno-rtti \ - -I${JAVA_HOME}/include -I${JAVA_HOME}/include/win32 -I${OCSDK_HOME} \ - -O2 \ - -Wall \ - -x 'c++' \ - ${CXX_FILE} \ - -o ${SRC_DIR}/`basename ${CXX_FILE} .cxx`.o -done -${CC} \ - -shared \ - -Wl,--kill-at \ - ${SRC_DIR}/*.o \ - ${SRC_DIR}/*.res \ - -o ${TARGET} \ - -lole32 -loleaut32 -luuid -${STRIP} -x ${TARGET} diff --git a/src/native/windows/msofficecomm/msgrua.tlb b/src/native/windows/msofficecomm/msgrua.tlb deleted file mode 100644 index 86e3ef94f..000000000 Binary files a/src/native/windows/msofficecomm/msgrua.tlb and /dev/null differ diff --git a/src/net/java/sip/communicator/impl/neomedia/device/DeviceConfiguration.java b/src/net/java/sip/communicator/impl/neomedia/device/DeviceConfiguration.java index 07576ddcb..c78854f2f 100644 --- a/src/net/java/sip/communicator/impl/neomedia/device/DeviceConfiguration.java +++ b/src/net/java/sip/communicator/impl/neomedia/device/DeviceConfiguration.java @@ -76,13 +76,13 @@ public class DeviceConfiguration * The default value to be used for the {@link #PROP_AUDIO_DENOISE} property * when it does not have a value. */ - private static final boolean DEFAULT_AUDIO_DENOISE = true; + public static final boolean DEFAULT_AUDIO_DENOISE = true; /** * The default value to be used for the {@link #PROP_AUDIO_ECHOCANCEL} * property when it does not have a value. */ - private static final boolean DEFAULT_AUDIO_ECHOCANCEL = true; + public static final boolean DEFAULT_AUDIO_ECHOCANCEL = true; /** * The default value to be used for the @@ -92,7 +92,7 @@ public class DeviceConfiguration * reverberation time is in the order of 300 ms, so a filter length of 100 * ms is a good choice (800 samples at 8000 Hz sampling rate). */ - private static final long DEFAULT_AUDIO_ECHOCANCEL_FILTER_LENGTH_IN_MILLIS + public static final long DEFAULT_AUDIO_ECHOCANCEL_FILTER_LENGTH_IN_MILLIS = 100; /** diff --git a/src/net/java/sip/communicator/impl/neomedia/jmfext/media/protocol/portaudio/PortAudioStream.java b/src/net/java/sip/communicator/impl/neomedia/jmfext/media/protocol/portaudio/PortAudioStream.java index 861cae5f6..ea6195ecc 100644 --- a/src/net/java/sip/communicator/impl/neomedia/jmfext/media/protocol/portaudio/PortAudioStream.java +++ b/src/net/java/sip/communicator/impl/neomedia/jmfext/media/protocol/portaudio/PortAudioStream.java @@ -353,18 +353,33 @@ synchronized void setDeviceIndex(int deviceIndex) Format.NOT_SPECIFIED /* frameRate */, Format.byteArray); - DeviceConfiguration deviceConfig - = NeomediaActivator - .getMediaServiceImpl() - .getDeviceConfiguration(); + MediaServiceImpl mediaServiceImpl + = NeomediaActivator.getMediaServiceImpl(); + boolean denoise = DeviceConfiguration.DEFAULT_AUDIO_DENOISE; + boolean echoCancel = DeviceConfiguration.DEFAULT_AUDIO_ECHOCANCEL; + long echoCancelFilterLengthInMillis + = DeviceConfiguration + .DEFAULT_AUDIO_ECHOCANCEL_FILTER_LENGTH_IN_MILLIS; + + if (mediaServiceImpl != null) + { + DeviceConfiguration devCfg + = mediaServiceImpl.getDeviceConfiguration(); - PortAudio.setDenoise( - stream, - audioQualityImprovement && deviceConfig.isDenoise()); + if (devCfg != null) + { + denoise = devCfg.isDenoise(); + echoCancel = devCfg.isEchoCancel(); + echoCancelFilterLengthInMillis + = devCfg.getEchoCancelFilterLengthInMillis(); + } + } + + PortAudio.setDenoise(stream, audioQualityImprovement && denoise); PortAudio.setEchoFilterLengthInMillis( stream, - (audioQualityImprovement && deviceConfig.isEchoCancel()) - ? deviceConfig.getEchoCancelFilterLengthInMillis() + (audioQualityImprovement && echoCancel) + ? echoCancelFilterLengthInMillis : 0); } }