Loading core/jni/android_media_AudioSystem.cpp +4 −3 Original line number Diff line number Diff line Loading @@ -608,9 +608,10 @@ android_media_AudioSystem_getOutputLatency(JNIEnv *env, jobject clazz, jint stre } static jint android_media_AudioSystem_setLowRamDevice(JNIEnv *env, jobject clazz, jboolean isLowRamDevice) android_media_AudioSystem_setLowRamDevice( JNIEnv *env, jobject clazz, jboolean isLowRamDevice, jlong totalMemory) { return (jint) AudioSystem::setLowRamDevice((bool) isLowRamDevice); return (jint) AudioSystem::setLowRamDevice((bool) isLowRamDevice, (int64_t) totalMemory); } static jint Loading Loading @@ -1819,7 +1820,7 @@ static const JNINativeMethod gMethods[] = { {"getPrimaryOutputSamplingRate", "()I", (void *)android_media_AudioSystem_getPrimaryOutputSamplingRate}, {"getPrimaryOutputFrameCount", "()I", (void *)android_media_AudioSystem_getPrimaryOutputFrameCount}, {"getOutputLatency", "(I)I", (void *)android_media_AudioSystem_getOutputLatency}, {"setLowRamDevice", "(Z)I", (void *)android_media_AudioSystem_setLowRamDevice}, {"setLowRamDevice", "(ZJ)I", (void *)android_media_AudioSystem_setLowRamDevice}, {"checkAudioFlinger", "()I", (void *)android_media_AudioSystem_checkAudioFlinger}, {"listAudioPorts", "(Ljava/util/ArrayList;[I)I", (void *)android_media_AudioSystem_listAudioPorts}, Loading media/java/android/media/AudioSystem.java +1 −1 Original line number Diff line number Diff line Loading @@ -793,7 +793,7 @@ public class AudioSystem public static native int getPrimaryOutputFrameCount(); public static native int getOutputLatency(int stream); public static native int setLowRamDevice(boolean isLowRamDevice); public static native int setLowRamDevice(boolean isLowRamDevice, long totalMemory); public static native int checkAudioFlinger(); public static native int listAudioPorts(ArrayList<AudioPort> ports, int[] generation); Loading services/core/java/com/android/server/audio/AudioService.java +13 −1 Original line number Diff line number Diff line Loading @@ -6635,7 +6635,19 @@ public class AudioService extends IAudioService.Stub // Inform AudioFlinger of our device's low RAM attribute private static void readAndSetLowRamDevice() { int status = AudioSystem.setLowRamDevice(ActivityManager.isLowRamDeviceStatic()); boolean isLowRamDevice = ActivityManager.isLowRamDeviceStatic(); long totalMemory = 1024 * 1024 * 1024; // 1GB is the default if ActivityManager fails. try { final ActivityManager.MemoryInfo info = new ActivityManager.MemoryInfo(); ActivityManager.getService().getMemoryInfo(info); totalMemory = info.totalMem; } catch (RemoteException e) { Log.w(TAG, "Cannot obtain MemoryInfo from ActivityManager, assume low memory device"); isLowRamDevice = true; } final int status = AudioSystem.setLowRamDevice(isLowRamDevice, totalMemory); if (status != 0) { Log.w(TAG, "AudioFlinger informed of device's low RAM attribute; status " + status); } Loading Loading
core/jni/android_media_AudioSystem.cpp +4 −3 Original line number Diff line number Diff line Loading @@ -608,9 +608,10 @@ android_media_AudioSystem_getOutputLatency(JNIEnv *env, jobject clazz, jint stre } static jint android_media_AudioSystem_setLowRamDevice(JNIEnv *env, jobject clazz, jboolean isLowRamDevice) android_media_AudioSystem_setLowRamDevice( JNIEnv *env, jobject clazz, jboolean isLowRamDevice, jlong totalMemory) { return (jint) AudioSystem::setLowRamDevice((bool) isLowRamDevice); return (jint) AudioSystem::setLowRamDevice((bool) isLowRamDevice, (int64_t) totalMemory); } static jint Loading Loading @@ -1819,7 +1820,7 @@ static const JNINativeMethod gMethods[] = { {"getPrimaryOutputSamplingRate", "()I", (void *)android_media_AudioSystem_getPrimaryOutputSamplingRate}, {"getPrimaryOutputFrameCount", "()I", (void *)android_media_AudioSystem_getPrimaryOutputFrameCount}, {"getOutputLatency", "(I)I", (void *)android_media_AudioSystem_getOutputLatency}, {"setLowRamDevice", "(Z)I", (void *)android_media_AudioSystem_setLowRamDevice}, {"setLowRamDevice", "(ZJ)I", (void *)android_media_AudioSystem_setLowRamDevice}, {"checkAudioFlinger", "()I", (void *)android_media_AudioSystem_checkAudioFlinger}, {"listAudioPorts", "(Ljava/util/ArrayList;[I)I", (void *)android_media_AudioSystem_listAudioPorts}, Loading
media/java/android/media/AudioSystem.java +1 −1 Original line number Diff line number Diff line Loading @@ -793,7 +793,7 @@ public class AudioSystem public static native int getPrimaryOutputFrameCount(); public static native int getOutputLatency(int stream); public static native int setLowRamDevice(boolean isLowRamDevice); public static native int setLowRamDevice(boolean isLowRamDevice, long totalMemory); public static native int checkAudioFlinger(); public static native int listAudioPorts(ArrayList<AudioPort> ports, int[] generation); Loading
services/core/java/com/android/server/audio/AudioService.java +13 −1 Original line number Diff line number Diff line Loading @@ -6635,7 +6635,19 @@ public class AudioService extends IAudioService.Stub // Inform AudioFlinger of our device's low RAM attribute private static void readAndSetLowRamDevice() { int status = AudioSystem.setLowRamDevice(ActivityManager.isLowRamDeviceStatic()); boolean isLowRamDevice = ActivityManager.isLowRamDeviceStatic(); long totalMemory = 1024 * 1024 * 1024; // 1GB is the default if ActivityManager fails. try { final ActivityManager.MemoryInfo info = new ActivityManager.MemoryInfo(); ActivityManager.getService().getMemoryInfo(info); totalMemory = info.totalMem; } catch (RemoteException e) { Log.w(TAG, "Cannot obtain MemoryInfo from ActivityManager, assume low memory device"); isLowRamDevice = true; } final int status = AudioSystem.setLowRamDevice(isLowRamDevice, totalMemory); if (status != 0) { Log.w(TAG, "AudioFlinger informed of device's low RAM attribute; status " + status); } Loading