Browse Source

Merge pull request #61 from KimJeongYeon/master

1) support auto-build via Travis.  2) sync with SM-G900M_LA_KK_Opensource.zip from OSRC.
tags/v1.9.10
Stéphane Letz 11 years ago
parent
commit
4b0ec971d9
3 changed files with 39 additions and 0 deletions
  1. +9
    -0
      .travis.yml
  2. +18
    -0
      android/Android.mk
  3. +12
    -0
      android/JackAndroidThread.cpp

+ 9
- 0
.travis.yml View File

@@ -0,0 +1,9 @@
language:
- cpp
compiler:
- gcc
install:
- sudo apt-get install libsamplerate-dev libsndfile-dev libasound2-dev
script:
- ./waf configure --alsa
- ./waf build

+ 18
- 0
android/Android.mk View File

@@ -5,6 +5,7 @@
LOCAL_PATH := $(call my-dir)
JACK_ROOT := $(call my-dir)/..
SUPPORT_ALSA_IN_JACK := true
SUPPORT_ANDROID_REALTIME_SCHED := false
ALSA_INCLUDES := vendor/samsung/common/external/alsa-lib/include
JACK_STL_LDFLAGS := -Lprebuilts/ndk/current/sources/cxx-stl/gnu-libstdc++/libs/$(TARGET_CPU_ABI) -lgnustl_static
JACK_STL_INCLUDES := $(JACK_ROOT)/android/cxx-stl/gnu-libstdc++/libs/$(TARGET_CPU_ABI)/include \
@@ -238,6 +239,11 @@ audioadapter_libsource := \
../common/JackAudioAdapterFactory.cpp \
../linux/alsa/JackAlsaAdapter.cpp

ifeq ($(SUPPORT_ANDROID_REALTIME_SCHED), true)
sched_c_include := bionic/libc/bionic \
frameworks/av/services/audioflinger
endif

# ========================================================
# libjackserver.so
# ========================================================
@@ -251,6 +257,12 @@ LOCAL_C_INCLUDES := $(common_c_includes)
LOCAL_SHARED_LIBRARIES := libc libdl libcutils libutils libjackshm
LOCAL_MODULE_TAGS := eng optional
LOCAL_MODULE := libjackserver
ifeq ($(SUPPORT_ANDROID_REALTIME_SCHED), true)
LOCAL_CFLAGS += -DJACK_ANDROID_REALTIME_SCHED
LOCAL_C_INCLUDES += $(sched_c_include)
LOCAL_SHARED_LIBRARIES += libbinder
LOCAL_STATIC_LIBRARIES := libscheduling_policy
endif

include $(BUILD_SHARED_LIBRARY)

@@ -283,6 +295,12 @@ LOCAL_C_INCLUDES := $(common_c_includes)
LOCAL_SHARED_LIBRARIES := libc libdl libcutils libutils libjackshm
LOCAL_MODULE_TAGS := eng optional
LOCAL_MODULE := libjack
ifeq ($(SUPPORT_ANDROID_REALTIME_SCHED), true)
LOCAL_CFLAGS += -DJACK_ANDROID_REALTIME_SCHED
LOCAL_C_INCLUDES += $(sched_c_include)
LOCAL_SHARED_LIBRARIES += libbinder
LOCAL_STATIC_LIBRARIES := libscheduling_policy
endif

include $(BUILD_SHARED_LIBRARY)



+ 12
- 0
android/JackAndroidThread.cpp View File

@@ -27,6 +27,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include <unistd.h> // for _POSIX_PRIORITY_SCHEDULING check
#include <signal.h>

#ifdef JACK_ANDROID_REALTIME_SCHED
#include "SchedulingPolicyService.h"
#endif

//#define JACK_SCHED_POLICY SCHED_RR
#define JACK_SCHED_POLICY SCHED_FIFO

@@ -241,12 +245,20 @@ int JackAndroidThread::AcquireRealTimeImp(jack_native_thread_t thread, int prior

jack_log("JackAndroidThread::AcquireRealTimeImp priority = %d", priority);

#ifndef JACK_ANDROID_REALTIME_SCHED
if ((res = pthread_setschedparam(thread, JACK_SCHED_POLICY, &rtparam)) != 0) {
jack_error("Cannot use real-time scheduling (RR/%d)"
"(%d: %s)", rtparam.sched_priority, res,
strerror(res));
return -1;
}
#else
if ((res = android::requestPriority(getpid(), gettid(), priority)) != 0) {
jack_log("Failed to get SCHED_FIFO priority pid %d tid %d; error %d",
getpid(), gettid(), res);
return -1;
}
#endif
return 0;
}



Loading…
Cancel
Save