Use 24000Hz sample rate for Samsung only

This commit is contained in:
Gabriel Calero 2018-07-12 18:12:53 -03:00
parent c11f4be5c1
commit e039ef1729
2 changed files with 11 additions and 3 deletions

View file

@ -1,5 +1,8 @@
set(TARGET_NAME audio-client)
setup_hifi_library(Network Multimedia)
if (ANDROID)
set(PLATFORM_QT_COMPONENTS AndroidExtras)
endif ()
setup_hifi_library(Network Multimedia ${PLATFORM_QT_COMPONENTS})
link_hifi_libraries(audio plugins)
include_hifi_library_headers(shared)
include_hifi_library_headers(networking)

View file

@ -52,6 +52,10 @@
#include "AudioLogging.h"
#include "AudioHelpers.h"
#if defined(Q_OS_ANDROID)
#include <QtAndroidExtras/QAndroidJniObject>
#endif
const int AudioClient::MIN_BUFFER_FRAMES = 1;
const int AudioClient::MAX_BUFFER_FRAMES = 20;
@ -483,8 +487,9 @@ bool nativeFormatForAudioDevice(const QAudioDeviceInfo& audioDevice,
audioFormat.setByteOrder(QAudioFormat::LittleEndian);
#if defined(Q_OS_ANDROID)
if (audioDevice == QAudioDeviceInfo::defaultInputDevice()) {
audioFormat.setSampleRate(44100);
QAndroidJniObject brand = QAndroidJniObject::getStaticObjectField<jstring>("android/os/Build", "BRAND");
if (audioDevice == QAudioDeviceInfo::defaultInputDevice() && brand.toString().contains("samsung", Qt::CaseInsensitive)) {
audioFormat.setSampleRate(24000);
}
#endif