Merge "Recording activity notification: return list of configuration" into nyc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c991879f29
@@ -19585,7 +19585,7 @@ package android.media {
|
|||||||
method public void adjustVolume(int, int);
|
method public void adjustVolume(int, int);
|
||||||
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
||||||
method public int generateAudioSessionId();
|
method public int generateAudioSessionId();
|
||||||
method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations();
|
method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations();
|
||||||
method public android.media.AudioDeviceInfo[] getDevices(int);
|
method public android.media.AudioDeviceInfo[] getDevices(int);
|
||||||
method public int getMode();
|
method public int getMode();
|
||||||
method public java.lang.String getParameters(java.lang.String);
|
method public java.lang.String getParameters(java.lang.String);
|
||||||
@@ -19731,7 +19731,7 @@ package android.media {
|
|||||||
|
|
||||||
public static abstract class AudioManager.AudioRecordingCallback {
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
ctor public AudioManager.AudioRecordingCallback();
|
ctor public AudioManager.AudioRecordingCallback();
|
||||||
method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
||||||
|
|||||||
@@ -196,6 +196,10 @@ package android.media {
|
|||||||
ctor public AudioFormat();
|
ctor public AudioFormat();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
|
method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
package android.media.tv {
|
package android.media.tv {
|
||||||
|
|||||||
@@ -21092,7 +21092,7 @@ package android.media {
|
|||||||
method public void adjustVolume(int, int);
|
method public void adjustVolume(int, int);
|
||||||
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
||||||
method public int generateAudioSessionId();
|
method public int generateAudioSessionId();
|
||||||
method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations();
|
method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations();
|
||||||
method public android.media.AudioDeviceInfo[] getDevices(int);
|
method public android.media.AudioDeviceInfo[] getDevices(int);
|
||||||
method public int getMode();
|
method public int getMode();
|
||||||
method public java.lang.String getParameters(java.lang.String);
|
method public java.lang.String getParameters(java.lang.String);
|
||||||
@@ -21246,7 +21246,7 @@ package android.media {
|
|||||||
|
|
||||||
public static abstract class AudioManager.AudioRecordingCallback {
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
ctor public AudioManager.AudioRecordingCallback();
|
ctor public AudioManager.AudioRecordingCallback();
|
||||||
method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
||||||
|
|||||||
@@ -194,6 +194,10 @@ package android.media {
|
|||||||
ctor public AudioFormat();
|
ctor public AudioFormat();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
|
method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
package android.media.tv {
|
package android.media.tv {
|
||||||
|
|||||||
@@ -19654,7 +19654,7 @@ package android.media {
|
|||||||
method public void adjustVolume(int, int);
|
method public void adjustVolume(int, int);
|
||||||
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
method public void dispatchMediaKeyEvent(android.view.KeyEvent);
|
||||||
method public int generateAudioSessionId();
|
method public int generateAudioSessionId();
|
||||||
method public android.media.AudioRecordingConfiguration[] getActiveRecordingConfigurations();
|
method public java.util.List<android.media.AudioRecordingConfiguration> getActiveRecordingConfigurations();
|
||||||
method public android.media.AudioDeviceInfo[] getDevices(int);
|
method public android.media.AudioDeviceInfo[] getDevices(int);
|
||||||
method public int getMode();
|
method public int getMode();
|
||||||
method public java.lang.String getParameters(java.lang.String);
|
method public java.lang.String getParameters(java.lang.String);
|
||||||
@@ -19800,7 +19800,7 @@ package android.media {
|
|||||||
|
|
||||||
public static abstract class AudioManager.AudioRecordingCallback {
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
ctor public AudioManager.AudioRecordingCallback();
|
ctor public AudioManager.AudioRecordingCallback();
|
||||||
method public void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
method public void onRecordingConfigChanged(java.util.List<android.media.AudioRecordingConfiguration>);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
public static abstract interface AudioManager.OnAudioFocusChangeListener {
|
||||||
|
|||||||
@@ -196,6 +196,10 @@ package android.media {
|
|||||||
ctor public AudioFormat();
|
ctor public AudioFormat();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static abstract class AudioManager.AudioRecordingCallback {
|
||||||
|
method public deprecated void onRecordingConfigChanged(android.media.AudioRecordingConfiguration[]);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
package android.media.tv {
|
package android.media.tv {
|
||||||
|
|||||||
@@ -2746,12 +2746,19 @@ public class AudioManager {
|
|||||||
* configuration.
|
* configuration.
|
||||||
*/
|
*/
|
||||||
public static abstract class AudioRecordingCallback {
|
public static abstract class AudioRecordingCallback {
|
||||||
|
/**
|
||||||
|
* This method is deprecated, override {@link #onRecordingConfigChanged(List)} instead.
|
||||||
|
* @param configs
|
||||||
|
* @removed
|
||||||
|
*/
|
||||||
|
@Deprecated
|
||||||
|
public void onRecordingConfigChanged(AudioRecordingConfiguration[] configs) {}
|
||||||
/**
|
/**
|
||||||
* Called whenever the device recording configuration has changed.
|
* Called whenever the device recording configuration has changed.
|
||||||
* @param configs array containing the results of
|
* @param configs list containing the results of
|
||||||
* {@link AudioManager#getActiveRecordingConfigurations()}.
|
* {@link AudioManager#getActiveRecordingConfigurations()}.
|
||||||
*/
|
*/
|
||||||
public void onRecordingConfigChanged(AudioRecordingConfiguration[] configs) {}
|
public void onRecordingConfigChanged(List<AudioRecordingConfiguration> configs) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class AudioRecordingCallbackInfo {
|
private static class AudioRecordingCallbackInfo {
|
||||||
@@ -2765,10 +2772,10 @@ public class AudioManager {
|
|||||||
|
|
||||||
private final static class RecordConfigChangeCallbackData {
|
private final static class RecordConfigChangeCallbackData {
|
||||||
final AudioRecordingCallback mCb;
|
final AudioRecordingCallback mCb;
|
||||||
final AudioRecordingConfiguration[] mConfigs;
|
final List<AudioRecordingConfiguration> mConfigs;
|
||||||
|
|
||||||
RecordConfigChangeCallbackData(AudioRecordingCallback cb,
|
RecordConfigChangeCallbackData(AudioRecordingCallback cb,
|
||||||
AudioRecordingConfiguration[] configs) {
|
List<AudioRecordingConfiguration> configs) {
|
||||||
mCb = cb;
|
mCb = cb;
|
||||||
mConfigs = configs;
|
mConfigs = configs;
|
||||||
}
|
}
|
||||||
@@ -2848,10 +2855,10 @@ public class AudioManager {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the current active audio recording configurations of the device.
|
* Returns the current active audio recording configurations of the device.
|
||||||
* @return a non-null array of recording configurations. An array of length 0 indicates there is
|
* @return a non-null list of recording configurations. An empty list indicates there is
|
||||||
* no recording active when queried.
|
* no recording active when queried.
|
||||||
*/
|
*/
|
||||||
public @NonNull AudioRecordingConfiguration[] getActiveRecordingConfigurations() {
|
public @NonNull List<AudioRecordingConfiguration> getActiveRecordingConfigurations() {
|
||||||
final IAudioService service = getService();
|
final IAudioService service = getService();
|
||||||
try {
|
try {
|
||||||
return service.getActiveRecordingConfigurations();
|
return service.getActiveRecordingConfigurations();
|
||||||
@@ -2909,7 +2916,7 @@ public class AudioManager {
|
|||||||
|
|
||||||
private final IRecordingConfigDispatcher mRecCb = new IRecordingConfigDispatcher.Stub() {
|
private final IRecordingConfigDispatcher mRecCb = new IRecordingConfigDispatcher.Stub() {
|
||||||
|
|
||||||
public void dispatchRecordingConfigChange(AudioRecordingConfiguration[] configs) {
|
public void dispatchRecordingConfigChange(List<AudioRecordingConfiguration> configs) {
|
||||||
synchronized(mRecordCallbackLock) {
|
synchronized(mRecordCallbackLock) {
|
||||||
if (mRecordCallbackList != null) {
|
if (mRecordCallbackList != null) {
|
||||||
for (int i=0 ; i < mRecordCallbackList.size() ; i++) {
|
for (int i=0 ; i < mRecordCallbackList.size() ; i++) {
|
||||||
|
|||||||
@@ -164,5 +164,5 @@ interface IAudioService {
|
|||||||
|
|
||||||
oneway void unregisterRecordingCallback(in IRecordingConfigDispatcher rcdb);
|
oneway void unregisterRecordingCallback(in IRecordingConfigDispatcher rcdb);
|
||||||
|
|
||||||
AudioRecordingConfiguration[] getActiveRecordingConfigurations();
|
List<AudioRecordingConfiguration> getActiveRecordingConfigurations();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,6 @@ import android.media.AudioRecordingConfiguration;
|
|||||||
*/
|
*/
|
||||||
oneway interface IRecordingConfigDispatcher {
|
oneway interface IRecordingConfigDispatcher {
|
||||||
|
|
||||||
void dispatchRecordingConfigChange(in AudioRecordingConfiguration[] configs);
|
void dispatchRecordingConfigChange(in List<AudioRecordingConfiguration> configs);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6342,7 +6342,7 @@ public class AudioService extends IAudioService.Stub {
|
|||||||
mRecordMonitor.unregisterRecordingCallback(rcdb);
|
mRecordMonitor.unregisterRecordingCallback(rcdb);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AudioRecordingConfiguration[] getActiveRecordingConfigurations() {
|
public List<AudioRecordingConfiguration> getActiveRecordingConfigurations() {
|
||||||
return mRecordMonitor.getActiveRecordingConfigurations();
|
return mRecordMonitor.getActiveRecordingConfigurations();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ import android.util.Log;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class to receive and dispatch updates from AudioSystem about recording configurations.
|
* Class to receive and dispatch updates from AudioSystem about recording configurations.
|
||||||
@@ -54,7 +55,7 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin
|
|||||||
if (MediaRecorder.isSystemOnlyAudioSource(source)) {
|
if (MediaRecorder.isSystemOnlyAudioSource(source)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final AudioRecordingConfiguration[] configs =
|
final List<AudioRecordingConfiguration> configs =
|
||||||
updateSnapshot(event, session, source, recordingInfo);
|
updateSnapshot(event, session, source, recordingInfo);
|
||||||
if (configs != null){
|
if (configs != null){
|
||||||
synchronized(mClients) {
|
synchronized(mClients) {
|
||||||
@@ -104,9 +105,9 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AudioRecordingConfiguration[] getActiveRecordingConfigurations() {
|
List<AudioRecordingConfiguration> getActiveRecordingConfigurations() {
|
||||||
synchronized(mRecordConfigs) {
|
synchronized(mRecordConfigs) {
|
||||||
return mRecordConfigs.values().toArray(new AudioRecordingConfiguration[0]);
|
return new ArrayList<AudioRecordingConfiguration>(mRecordConfigs.values());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,13 +119,13 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin
|
|||||||
* @param recordingFormat see
|
* @param recordingFormat see
|
||||||
* {@link AudioSystem.AudioRecordingCallback#onRecordingConfigurationChanged(int, int, int, int[])}
|
* {@link AudioSystem.AudioRecordingCallback#onRecordingConfigurationChanged(int, int, int, int[])}
|
||||||
* for the definition of the contents of the array
|
* for the definition of the contents of the array
|
||||||
* @return null if the list of active recording sessions has not been modified, an array
|
* @return null if the list of active recording sessions has not been modified, a list
|
||||||
* with the current active configurations otherwise.
|
* with the current active configurations otherwise.
|
||||||
*/
|
*/
|
||||||
private AudioRecordingConfiguration[] updateSnapshot(int event, int session, int source,
|
private List<AudioRecordingConfiguration> updateSnapshot(int event, int session, int source,
|
||||||
int[] recordingInfo) {
|
int[] recordingInfo) {
|
||||||
final boolean configChanged;
|
final boolean configChanged;
|
||||||
final AudioRecordingConfiguration[] configs;
|
final ArrayList<AudioRecordingConfiguration> configs;
|
||||||
synchronized(mRecordConfigs) {
|
synchronized(mRecordConfigs) {
|
||||||
switch (event) {
|
switch (event) {
|
||||||
case AudioManager.RECORD_CONFIG_EVENT_STOP:
|
case AudioManager.RECORD_CONFIG_EVENT_STOP:
|
||||||
@@ -171,7 +172,7 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin
|
|||||||
configChanged = false;
|
configChanged = false;
|
||||||
}
|
}
|
||||||
if (configChanged) {
|
if (configChanged) {
|
||||||
configs = mRecordConfigs.values().toArray(new AudioRecordingConfiguration[0]);
|
configs = new ArrayList<AudioRecordingConfiguration>(mRecordConfigs.values());
|
||||||
} else {
|
} else {
|
||||||
configs = null;
|
configs = null;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user