am 74990619: am 642737c8: Merge "More video related API fixes" into mnc-dev

* commit '74990619931c388bbde44c3749939dfde06cc421':
  More video related API fixes
This commit is contained in:
Yorke Lee
2015-05-13 01:59:31 +00:00
committed by Android Git Automerger
13 changed files with 125 additions and 66 deletions

View File

@@ -30169,7 +30169,6 @@ package android.telecom {
public static abstract class Connection.VideoProvider {
ctor public Connection.VideoProvider();
method public void changeCallDataUsage(long);
method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
method public void changePeerDimensions(int, int);
method public void changeVideoQuality(int);
@@ -30181,11 +30180,12 @@ package android.telecom {
method public abstract void onSetCamera(java.lang.String);
method public abstract void onSetDeviceOrientation(int);
method public abstract void onSetDisplaySurface(android.view.Surface);
method public abstract void onSetPauseImage(java.lang.String);
method public abstract void onSetPauseImage(android.net.Uri);
method public abstract void onSetPreviewSurface(android.view.Surface);
method public abstract void onSetZoom(float);
method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
method public void setCallDataUsage(long);
field public static final int SESSION_EVENT_CAMERA_FAILURE = 5; // 0x5
field public static final int SESSION_EVENT_CAMERA_READY = 6; // 0x6
field public static final int SESSION_EVENT_RX_PAUSE = 1; // 0x1
@@ -30292,7 +30292,7 @@ package android.telecom {
method public abstract void setCamera(java.lang.String);
method public abstract void setDeviceOrientation(int);
method public abstract void setDisplaySurface(android.view.Surface);
method public abstract void setPauseImage(java.lang.String);
method public abstract void setPauseImage(android.net.Uri);
method public abstract void setPreviewSurface(android.view.Surface);
method public abstract void setZoom(float);
method public abstract void unregisterCallback(android.telecom.InCallService.VideoCall.Callback);
@@ -30517,6 +30517,11 @@ package android.telecom {
field public static final int QUALITY_HIGH = 1; // 0x1
field public static final int QUALITY_LOW = 3; // 0x3
field public static final int QUALITY_MEDIUM = 2; // 0x2
field public static final int STATE_AUDIO_ONLY = 0; // 0x0
field public static final int STATE_BIDIRECTIONAL = 3; // 0x3
field public static final int STATE_PAUSED = 4; // 0x4
field public static final int STATE_RX_ENABLED = 2; // 0x2
field public static final int STATE_TX_ENABLED = 1; // 0x1
}
public static final class VideoProfile.CameraCapabilities implements android.os.Parcelable {
@@ -30529,18 +30534,12 @@ package android.telecom {
}
public static class VideoProfile.VideoState {
ctor public VideoProfile.VideoState();
method public static boolean isAudioOnly(int);
method public static boolean isBidirectional(int);
method public static boolean isPaused(int);
method public static boolean isReceptionEnabled(int);
method public static boolean isTransmissionEnabled(int);
method public static java.lang.String videoStateToString(int);
field public static final int AUDIO_ONLY = 0; // 0x0
field public static final int BIDIRECTIONAL = 3; // 0x3
field public static final int PAUSED = 4; // 0x4
field public static final int RX_ENABLED = 2; // 0x2
field public static final int TX_ENABLED = 1; // 0x1
}
}

View File

@@ -32303,7 +32303,6 @@ package android.telecom {
public static abstract class Connection.VideoProvider {
ctor public Connection.VideoProvider();
method public void changeCallDataUsage(long);
method public void changeCameraCapabilities(android.telecom.VideoProfile.CameraCapabilities);
method public void changePeerDimensions(int, int);
method public void changeVideoQuality(int);
@@ -32315,11 +32314,12 @@ package android.telecom {
method public abstract void onSetCamera(java.lang.String);
method public abstract void onSetDeviceOrientation(int);
method public abstract void onSetDisplaySurface(android.view.Surface);
method public abstract void onSetPauseImage(java.lang.String);
method public abstract void onSetPauseImage(android.net.Uri);
method public abstract void onSetPreviewSurface(android.view.Surface);
method public abstract void onSetZoom(float);
method public void receiveSessionModifyRequest(android.telecom.VideoProfile);
method public void receiveSessionModifyResponse(int, android.telecom.VideoProfile, android.telecom.VideoProfile);
method public void setCallDataUsage(long);
field public static final int SESSION_EVENT_CAMERA_FAILURE = 5; // 0x5
field public static final int SESSION_EVENT_CAMERA_READY = 6; // 0x6
field public static final int SESSION_EVENT_RX_PAUSE = 1; // 0x1
@@ -32429,7 +32429,7 @@ package android.telecom {
method public abstract void setCamera(java.lang.String);
method public abstract void setDeviceOrientation(int);
method public abstract void setDisplaySurface(android.view.Surface);
method public abstract void setPauseImage(java.lang.String);
method public abstract void setPauseImage(android.net.Uri);
method public abstract void setPreviewSurface(android.view.Surface);
method public abstract void setZoom(float);
method public abstract void unregisterCallback(android.telecom.InCallService.VideoCall.Callback);
@@ -32693,6 +32693,11 @@ package android.telecom {
field public static final int QUALITY_HIGH = 1; // 0x1
field public static final int QUALITY_LOW = 3; // 0x3
field public static final int QUALITY_MEDIUM = 2; // 0x2
field public static final int STATE_AUDIO_ONLY = 0; // 0x0
field public static final int STATE_BIDIRECTIONAL = 3; // 0x3
field public static final int STATE_PAUSED = 4; // 0x4
field public static final int STATE_RX_ENABLED = 2; // 0x2
field public static final int STATE_TX_ENABLED = 1; // 0x1
}
public static final class VideoProfile.CameraCapabilities implements android.os.Parcelable {
@@ -32705,18 +32710,12 @@ package android.telecom {
}
public static class VideoProfile.VideoState {
ctor public VideoProfile.VideoState();
method public static boolean isAudioOnly(int);
method public static boolean isBidirectional(int);
method public static boolean isPaused(int);
method public static boolean isReceptionEnabled(int);
method public static boolean isTransmissionEnabled(int);
method public static java.lang.String videoStateToString(int);
field public static final int AUDIO_ONLY = 0; // 0x0
field public static final int BIDIRECTIONAL = 3; // 0x3
field public static final int PAUSED = 4; // 0x4
field public static final int RX_ENABLED = 2; // 0x2
field public static final int TX_ENABLED = 1; // 0x1
}
}

View File

@@ -202,7 +202,7 @@ public final class Call {
/**
* For video calls, indicates whether the outgoing video for the call can be paused using
* the {@link android.telecom.VideoProfile.VideoState#PAUSED} VideoState.
* the {@link android.telecom.VideoProfile#STATE_PAUSED} VideoState.
*/
public static final int CAPABILITY_CAN_PAUSE_VIDEO = 0x00100000;

View File

@@ -366,10 +366,10 @@ public abstract class Conference implements Conferenceable {
/**
* Set the video state for the conference.
* Valid values: {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#TX_ENABLED},
* {@link VideoProfile.VideoState#RX_ENABLED}.
* Valid values: {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_TX_ENABLED},
* {@link VideoProfile#STATE_RX_ENABLED}.
*
* @param videoState The new video state.
*/

View File

@@ -186,7 +186,7 @@ public abstract class Connection implements Conferenceable {
/**
* For video calls, indicates whether the outgoing video for the call can be paused using
* the {@link android.telecom.VideoProfile.VideoState#PAUSED} VideoState.
* the {@link android.telecom.VideoProfile#STATE_PAUSED} VideoState.
*/
public static final int CAPABILITY_CAN_PAUSE_VIDEO = 0x00100000;
@@ -484,7 +484,7 @@ public abstract class Connection implements Conferenceable {
onRequestConnectionDataUsage();
break;
case MSG_SET_PAUSE_IMAGE:
onSetPauseImage((String) msg.obj);
onSetPauseImage((Uri) msg.obj);
break;
default:
break;
@@ -547,7 +547,7 @@ public abstract class Connection implements Conferenceable {
mMessageHandler.obtainMessage(MSG_REQUEST_CONNECTION_DATA_USAGE).sendToTarget();
}
public void setPauseImage(String uri) {
public void setPauseImage(Uri uri) {
mMessageHandler.obtainMessage(MSG_SET_PAUSE_IMAGE, uri).sendToTarget();
}
}
@@ -642,7 +642,7 @@ public abstract class Connection implements Conferenceable {
*
* @param uri URI of image to display.
*/
public abstract void onSetPauseImage(String uri);
public abstract void onSetPauseImage(Uri uri);
/**
* Invokes callback method defined in listening {@link InCallService} implementations.
@@ -726,7 +726,7 @@ public abstract class Connection implements Conferenceable {
*
* @param dataUsage The updated data usage.
*/
public void changeCallDataUsage(long dataUsage) {
public void setCallDataUsage(long dataUsage) {
if (mVideoCallbacks != null) {
try {
for (IVideoCallback callback : mVideoCallbacks.values()) {
@@ -737,6 +737,17 @@ public abstract class Connection implements Conferenceable {
}
}
/**
* Invokes callback method defined in listening {@link InCallService} implementations.
*
* @param dataUsage The updated data usage.
* @deprecated - Use {@link #setCallDataUsage(long)} instead.
* @hide
*/
public void changeCallDataUsage(long dataUsage) {
setCallDataUsage(dataUsage);
}
/**
* Invokes callback method defined in listening {@link InCallService} implementations.
*
@@ -756,6 +767,12 @@ public abstract class Connection implements Conferenceable {
/**
* Invokes callback method defined in listening {@link InCallService} implementations.
*
* Allowed values:
* {@link VideoProfile#QUALITY_HIGH},
* {@link VideoProfile#QUALITY_MEDIUM},
* {@link VideoProfile#QUALITY_LOW},
* {@link VideoProfile#QUALITY_DEFAULT}.
*
* @param videoQuality The updated video quality.
*/
public void changeVideoQuality(int videoQuality) {
@@ -859,10 +876,10 @@ public abstract class Connection implements Conferenceable {
/**
* Returns the video state of the connection.
* Valid values: {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#TX_ENABLED},
* {@link VideoProfile.VideoState#RX_ENABLED}.
* Valid values: {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_TX_ENABLED},
* {@link VideoProfile#STATE_RX_ENABLED}.
*
* @return The video state of the connection.
* @hide
@@ -1027,10 +1044,10 @@ public abstract class Connection implements Conferenceable {
/**
* Set the video state for the connection.
* Valid values: {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#TX_ENABLED},
* {@link VideoProfile.VideoState#RX_ENABLED}.
* Valid values: {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_TX_ENABLED},
* {@link VideoProfile#STATE_RX_ENABLED}.
*
* @param videoState The new video state.
*/

View File

@@ -88,10 +88,10 @@ public final class ConnectionRequest implements Parcelable {
/**
* Describes the video states supported by the client requesting the connection.
* Valid values: {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#TX_ENABLED},
* {@link VideoProfile.VideoState#RX_ENABLED}.
* Valid values: {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_TX_ENABLED},
* {@link VideoProfile#STATE_RX_ENABLED}.
*
* @return The video state for the connection.
*/

View File

@@ -20,6 +20,7 @@ import android.annotation.SdkConstant;
import android.annotation.SystemApi;
import android.app.Service;
import android.content.Intent;
import android.net.Uri;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
@@ -466,7 +467,7 @@ public abstract class InCallService extends Service {
*
* @param uri URI of image to display.
*/
public abstract void setPauseImage(String uri);
public abstract void setPauseImage(Uri uri);
/**
* Callback class which invokes callbacks after video call actions occur.

View File

@@ -379,7 +379,7 @@ public final class RemoteConnection {
}
}
public void setPauseImage(String uri) {
public void setPauseImage(Uri uri) {
try {
mVideoProviderBinder.setPauseImage(uri);
} catch (RemoteException e) {

View File

@@ -142,10 +142,10 @@ public class TelecomManager {
* Optional extra for {@link android.content.Intent#ACTION_CALL} containing an integer that
* determines the desired video state for an outgoing call.
* Valid options:
* {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#RX_ENABLED},
* {@link VideoProfile.VideoState#TX_ENABLED}.
* {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_RX_ENABLED},
* {@link VideoProfile#STATE_TX_ENABLED}.
*/
public static final String EXTRA_START_CALL_WITH_VIDEO_STATE =
"android.telecom.extra.START_CALL_WITH_VIDEO_STATE";

View File

@@ -16,6 +16,7 @@
package android.telecom;
import android.net.Uri;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
@@ -302,7 +303,7 @@ public class VideoCallImpl extends VideoCall {
}
/** {@inheritDoc} */
public void setPauseImage(String uri) {
public void setPauseImage(Uri uri) {
try {
mVideoProvider.setPauseImage(uri);
} catch (RemoteException e) {

View File

@@ -48,6 +48,31 @@ public class VideoProfile implements Parcelable {
*/
public static final int QUALITY_DEFAULT = 4;
/**
* Call is currently in an audio-only mode with no video transmission or receipt.
*/
public static final int STATE_AUDIO_ONLY = 0x0;
/**
* Video transmission is enabled.
*/
public static final int STATE_TX_ENABLED = 0x1;
/**
* Video reception is enabled.
*/
public static final int STATE_RX_ENABLED = 0x2;
/**
* Video signal is bi-directional.
*/
public static final int STATE_BIDIRECTIONAL = STATE_TX_ENABLED | STATE_RX_ENABLED;
/**
* Video is paused.
*/
public static final int STATE_PAUSED = 0x4;
private final int mVideoState;
private final int mQuality;
@@ -74,11 +99,11 @@ public class VideoProfile implements Parcelable {
/**
* The video state of the call.
* Valid values: {@link VideoProfile.VideoState#AUDIO_ONLY},
* {@link VideoProfile.VideoState#BIDIRECTIONAL},
* {@link VideoProfile.VideoState#TX_ENABLED},
* {@link VideoProfile.VideoState#RX_ENABLED},
* {@link VideoProfile.VideoState#PAUSED}.
* Valid values: {@link VideoProfile#STATE_AUDIO_ONLY},
* {@link VideoProfile#STATE_BIDIRECTIONAL},
* {@link VideoProfile#STATE_TX_ENABLED},
* {@link VideoProfile#STATE_RX_ENABLED},
* {@link VideoProfile#STATE_PAUSED}.
*/
public int getVideoState() {
return mVideoState;
@@ -162,28 +187,41 @@ public class VideoProfile implements Parcelable {
public static class VideoState {
/**
* Call is currently in an audio-only mode with no video transmission or receipt.
* @deprecated Use {@link VideoProfile#STATE_AUDIO_ONLY} instead
* @hide
*/
public static final int AUDIO_ONLY = 0x0;
public static final int AUDIO_ONLY = VideoProfile.STATE_AUDIO_ONLY;
/**
* Video transmission is enabled.
* @deprecated Use {@link VideoProfile#STATE_TX_ENABLED} instead
* @hide
*/
public static final int TX_ENABLED = 0x1;
public static final int TX_ENABLED = VideoProfile.STATE_TX_ENABLED;
/**
* Video reception is enabled.
* @deprecated Use {@link VideoProfile#STATE_RX_ENABLED} instead
* @hide
*/
public static final int RX_ENABLED = 0x2;
public static final int RX_ENABLED = VideoProfile.STATE_RX_ENABLED;
/**
* Video signal is bi-directional.
* @deprecated Use {@link VideoProfile#STATE_BIDIRECTIONAL} instead
* @hide
*/
public static final int BIDIRECTIONAL = TX_ENABLED | RX_ENABLED;
public static final int BIDIRECTIONAL = VideoProfile.STATE_BIDIRECTIONAL;
/**
* Video is paused.
* @deprecated Use {@link VideoProfile#STATE_PAUSED} instead
* @hide
*/
public static final int PAUSED = 0x4;
public static final int PAUSED = VideoProfile.STATE_PAUSED;
/** @hide */
private VideoState() {}
/**
* Whether the video state is audio only.
@@ -191,7 +229,8 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video state is audio only.
*/
public static boolean isAudioOnly(int videoState) {
return !hasState(videoState, TX_ENABLED) && !hasState(videoState, RX_ENABLED);
return !hasState(videoState, VideoProfile.STATE_TX_ENABLED)
&& !hasState(videoState, VideoProfile.STATE_RX_ENABLED);
}
/**
@@ -201,8 +240,9 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video state TX or RX or Bidirectional
*/
public static boolean isVideo(int videoState) {
return hasState(videoState, TX_ENABLED) || hasState(videoState, RX_ENABLED)
|| hasState(videoState, BIDIRECTIONAL);
return hasState(videoState, VideoProfile.STATE_TX_ENABLED)
|| hasState(videoState, VideoProfile.STATE_RX_ENABLED)
|| hasState(videoState, VideoProfile.STATE_BIDIRECTIONAL);
}
/**
@@ -211,7 +251,7 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video transmission is enabled.
*/
public static boolean isTransmissionEnabled(int videoState) {
return hasState(videoState, TX_ENABLED);
return hasState(videoState, VideoProfile.STATE_TX_ENABLED);
}
/**
@@ -220,7 +260,7 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video transmission is enabled.
*/
public static boolean isReceptionEnabled(int videoState) {
return hasState(videoState, RX_ENABLED);
return hasState(videoState, VideoProfile.STATE_RX_ENABLED);
}
/**
@@ -229,7 +269,7 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video signal is bi-directional.
*/
public static boolean isBidirectional(int videoState) {
return hasState(videoState, BIDIRECTIONAL);
return hasState(videoState, VideoProfile.STATE_BIDIRECTIONAL);
}
/**
@@ -238,7 +278,7 @@ public class VideoProfile implements Parcelable {
* @return Returns true if the video is paused.
*/
public static boolean isPaused(int videoState) {
return hasState(videoState, PAUSED);
return hasState(videoState, VideoProfile.STATE_PAUSED);
}
/**

View File

@@ -16,6 +16,7 @@
package com.android.internal.telecom;
import android.net.Uri;
import android.view.Surface;
import android.telecom.VideoProfile;
@@ -47,5 +48,5 @@ oneway interface IVideoProvider {
void requestCallDataUsage();
void setPauseImage(String uri);
void setPauseImage(in Uri uri);
}

View File

@@ -16,6 +16,7 @@
package com.android.ims.internal;
import android.net.Uri;
import android.view.Surface;
import android.telecom.VideoProfile;
@@ -60,5 +61,5 @@ oneway interface IImsVideoCallProvider {
void requestCallDataUsage();
void setPauseImage(String uri);
void setPauseImage(in Uri uri);
}