Media HAL cleanup based on vendor feedback
Bug: 203240638
Test: Build
Change-Id: I6bdf47929385a5ed65f1a2ca34500c67888f8b07
diff --git a/radio/aidl/Android.bp b/radio/aidl/Android.bp
index 3eb6bf2..d68f3d4 100644
--- a/radio/aidl/Android.bp
+++ b/radio/aidl/Android.bp
@@ -182,7 +182,8 @@
vendor_available: true,
srcs: ["android/hardware/radio/ims/media/*.aidl"],
stability: "vintf",
- imports: ["android.hardware.radio.data"],
+ imports: ["android.hardware.radio",
+ "android.hardware.radio.data"],
backend: {
cpp: {
enabled: false,
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/CodecParams.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/CodecParams.aidl
index bd7ddae..3c48843 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/CodecParams.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/CodecParams.aidl
@@ -34,9 +34,9 @@
package android.hardware.radio.ims.media;
@VintfStability
parcelable CodecParams {
- android.hardware.radio.ims.media.SpeechCodec codec;
- int rxPayloadTypeNumber;
- int txPayloadTypeNumber;
+ android.hardware.radio.ims.media.CodecType codecType;
+ byte rxPayloadTypeNumber;
+ byte txPayloadTypeNumber;
byte samplingRateKHz;
byte txCodecModeRequest;
boolean dtxEnabled;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/EvsParams.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/EvsParams.aidl
index 46817df..8d5124b 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/EvsParams.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/EvsParams.aidl
@@ -34,6 +34,7 @@
package android.hardware.radio.ims.media;
@VintfStability
parcelable EvsParams {
+ android.hardware.radio.ims.media.EvsBandwidth bandwidth;
android.hardware.radio.ims.media.EvsMode evsMode;
byte channelAwareMode;
boolean useHeaderFullOnlyOnTx;
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaListener.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaListener.aidl
index b15534c..efd59c3 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaListener.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaListener.aidl
@@ -34,8 +34,6 @@
package android.hardware.radio.ims.media;
@VintfStability
interface IImsMediaListener {
- oneway void onBringupResponse(android.hardware.radio.ims.media.RtpError status, in android.hardware.radio.ims.media.SpeechCodec[] supportedCodecs);
- oneway void onMediaStackStateChanged(android.hardware.radio.ims.media.MediaStackState state);
oneway void onOpenSessionSuccess(int sessionId, android.hardware.radio.ims.media.IImsMediaSession session);
oneway void onOpenSessionFailure(int sessionId, android.hardware.radio.ims.media.RtpError error);
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl
index 48ffaa3..03d0fcc 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl
@@ -41,6 +41,6 @@
oneway void confirmConfig(in android.hardware.radio.ims.media.RtpConfig config);
oneway void startDtmf(char dtmfDigit, int volume, int duration);
oneway void stopDtmf();
- oneway void sendHeaderExtension(in android.hardware.radio.ims.media.RtpHeaderExtension[] data);
+ oneway void sendHeaderExtension(in List<android.hardware.radio.ims.media.RtpHeaderExtension> extensions);
oneway void setMediaQualityThreshold(in android.hardware.radio.ims.media.MediaQualityThreshold threshold);
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
index 761b143..ce55121 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
@@ -34,12 +34,12 @@
package android.hardware.radio.ims.media;
@VintfStability
interface IImsMediaSessionListener {
- oneway void onSessionChanged(in android.hardware.radio.ims.media.RtpSession session);
+ oneway void onSessionChanged(android.hardware.radio.ims.media.RtpSessionState state);
oneway void onModifySessionResponse(in android.hardware.radio.ims.media.RtpConfig config, android.hardware.radio.ims.media.RtpError error);
oneway void onAddConfigResponse(in android.hardware.radio.ims.media.RtpConfig config, android.hardware.radio.ims.media.RtpError error);
oneway void onConfirmConfigResponse(in android.hardware.radio.ims.media.RtpConfig config, android.hardware.radio.ims.media.RtpError error);
oneway void onFirstMediaPacketReceived(in android.hardware.radio.ims.media.RtpConfig config);
- oneway void onHeaderExtensionReceived(in android.hardware.radio.ims.media.RtpHeaderExtension[] data);
+ oneway void onHeaderExtensionReceived(in List<android.hardware.radio.ims.media.RtpHeaderExtension> extensions);
oneway void notifyMediaInactivity(android.hardware.radio.ims.media.MediaProtocolType packetType, int duration);
oneway void notifyPacketLoss(int packetLossPercentage);
oneway void notifyJitter(int jitter);
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/LocalEndPoint.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/LocalEndPoint.aidl
index cb352d6..6ec5156 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/LocalEndPoint.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/LocalEndPoint.aidl
@@ -34,6 +34,7 @@
package android.hardware.radio.ims.media;
@VintfStability
parcelable LocalEndPoint {
- android.hardware.radio.ims.media.RtpAddress localAddress;
+ ParcelFileDescriptor rtpFd;
+ ParcelFileDescriptor rtcpFd;
int modemId;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/MediaStackState.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/MediaStackState.aidl
deleted file mode 100644
index a7bb323..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/MediaStackState.aidl
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio.ims.media;
-@Backing(type="int") @VintfStability
-enum MediaStackState {
- NOT_READY = 1,
- READY = 2,
- ERROR_FATAL = 3,
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtcpConfig.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtcpConfig.aidl
index b1f10f2..6a76d85 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtcpConfig.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtcpConfig.aidl
@@ -36,7 +36,6 @@
parcelable RtcpConfig {
String canonicalName;
int transmitPort;
- int receivePort;
int transmitIntervalSec;
int rtcpXrBlocks;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpConfig.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpConfig.aidl
index d3af0f8..4b80378 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpConfig.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpConfig.aidl
@@ -34,11 +34,9 @@
package android.hardware.radio.ims.media;
@VintfStability
parcelable RtpConfig {
- int configId;
android.hardware.radio.ims.media.MediaDirection direction;
+ android.hardware.radio.AccessNetwork accessNetwork;
android.hardware.radio.ims.media.RtpAddress remoteAddress;
android.hardware.radio.ims.media.RtpSessionParams sessionParams;
android.hardware.radio.ims.media.RtcpConfig rtcpConfig;
- android.hardware.radio.data.QosBandwidth downlink;
- android.hardware.radio.data.QosBandwidth uplink;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpError.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpError.aidl
index f5bc190..41b0aeb 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpError.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpError.aidl
@@ -40,5 +40,5 @@
NO_MEMORY = 3,
NO_RESOURCES = 4,
PORT_UNAVAILABLE = 5,
- REQUEST_NOT_SUPPORTED = 6,
+ NOT_SUPPORTED = 6,
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSession.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSession.aidl
deleted file mode 100644
index 93c8b16..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSession.aidl
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio.ims.media;
-@VintfStability
-parcelable RtpSession {
- int sessionId;
- android.hardware.radio.ims.media.LocalEndPoint localEndPoint;
- android.hardware.radio.ims.media.RtpSessionState sessionState = android.hardware.radio.ims.media.RtpSessionState.CLOSED;
- android.hardware.radio.ims.media.RtpConfig[] remoteConfigs;
-}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSessionParams.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSessionParams.aidl
index 8e1af23..97c5511 100644
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSessionParams.aidl
+++ b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpSessionParams.aidl
@@ -35,9 +35,9 @@
@VintfStability
parcelable RtpSessionParams {
byte pTimeMillis;
- byte maxPtimeMillis;
+ int maxPtimeMillis;
int maxMtuBytes;
- int dscp;
+ byte dscp;
android.hardware.radio.ims.media.DtmfParams dtmfParams;
android.hardware.radio.ims.media.CodecParams codecParams;
}
diff --git a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/SpeechCodec.aidl b/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/SpeechCodec.aidl
deleted file mode 100644
index 76a1070..0000000
--- a/radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/SpeechCodec.aidl
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-///////////////////////////////////////////////////////////////////////////////
-// THIS FILE IS IMMUTABLE. DO NOT EDIT IN ANY CASE. //
-///////////////////////////////////////////////////////////////////////////////
-
-// This file is a snapshot of an AIDL file. Do not edit it manually. There are
-// two cases:
-// 1). this is a frozen version file - do not edit this in any case.
-// 2). this is a 'current' file. If you make a backwards compatible change to
-// the interface (from the latest frozen version), the build system will
-// prompt you to update this file with `m <name>-update-api`.
-//
-// You must not make a backward incompatible change to any AIDL file built
-// with the aidl_interface module type with versions property set. The module
-// type is used to build AIDL files in a way that they can be used across
-// independently updatable components of the system. If a device is shipped
-// with such a backward incompatible change, it has a high risk of breaking
-// later when a module using the interface is updated, e.g., Mainline modules.
-
-package android.hardware.radio.ims.media;
-@VintfStability
-parcelable SpeechCodec {
- android.hardware.radio.ims.media.CodecType codecType;
- android.hardware.radio.ims.media.EvsBandwidth bandwidth;
-}
diff --git a/radio/aidl/android/hardware/radio/ims/media/CodecParams.aidl b/radio/aidl/android/hardware/radio/ims/media/CodecParams.aidl
index 6d38874..56f7936 100644
--- a/radio/aidl/android/hardware/radio/ims/media/CodecParams.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/CodecParams.aidl
@@ -17,24 +17,24 @@
package android.hardware.radio.ims.media;
import android.hardware.radio.ims.media.CodecSpecificParams;
-import android.hardware.radio.ims.media.SpeechCodec;
+import android.hardware.radio.ims.media.CodecType;
@VintfStability
parcelable CodecParams {
- /** Negotiated codec and bandwidth */
- SpeechCodec codec;
+ /** Negotiated codec type */
+ CodecType codecType;
/**
* Static or dynamic payload type number negotiated through the SDP for
* the incoming RTP packets. This value shall be matched with the PT value
* of the incoming RTP header. Values 0 to 127, see RFC 3551 section 6
*/
- int rxPayloadTypeNumber;
+ byte rxPayloadTypeNumber;
/**
* Static or dynamic payload type number negotiated through the SDP for
* the outgoing RTP packets. This value shall be set to the PT value
* of the outgoing RTP header. Values 0 to 127, see RFC 3551 section 6
*/
- int txPayloadTypeNumber;
+ byte txPayloadTypeNumber;
/** Sampling rate in kHz*/
byte samplingRateKHz;
/**
diff --git a/radio/aidl/android/hardware/radio/ims/media/EvsParams.aidl b/radio/aidl/android/hardware/radio/ims/media/EvsParams.aidl
index 4bccf8a..ecbb958 100644
--- a/radio/aidl/android/hardware/radio/ims/media/EvsParams.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/EvsParams.aidl
@@ -17,9 +17,13 @@
package android.hardware.radio.ims.media;
import android.hardware.radio.ims.media.EvsMode;
+import android.hardware.radio.ims.media.EvsBandwidth;
@VintfStability
parcelable EvsParams {
+ /** EVS codec bandwidth */
+ EvsBandwidth bandwidth;
+
/** mode-set: EVS codec mode to represent the bit rate */
EvsMode evsMode;
/**
diff --git a/radio/aidl/android/hardware/radio/ims/media/IImsMediaListener.aidl b/radio/aidl/android/hardware/radio/ims/media/IImsMediaListener.aidl
index 8f2585f..4078ea2 100644
--- a/radio/aidl/android/hardware/radio/ims/media/IImsMediaListener.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/IImsMediaListener.aidl
@@ -17,29 +17,13 @@
package android.hardware.radio.ims.media;
import android.hardware.radio.ims.media.IImsMediaSession;
-import android.hardware.radio.ims.media.MediaStackState;
import android.hardware.radio.ims.media.RtpError;
-import android.hardware.radio.ims.media.SpeechCodec;
/**
* Interface declaring listener functions for unsolicited IMS media notifications.
*/
@VintfStability
oneway interface IImsMediaListener {
- /**
- * Notifies the media stack bring up status and capabilities.
- *
- * @param status bring up status
- * @param supportedCodecs array of supported speech codecs by the implementation
- */
- void onBringupResponse(RtpError status, in SpeechCodec[] supportedCodecs);
-
- /**
- * Notifies the state of the media stack whenever there is a change.
- *
- * @param state current state of the media stack
- */
- void onMediaStackStateChanged(MediaStackState state);
/**
* Fired when a IImsMedia#openSession() API is successful.
diff --git a/radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl b/radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl
index 98d7bda..3e29356 100644
--- a/radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl
@@ -93,9 +93,9 @@
/**
* Send RTP header extension to the other party in the next RTP packet.
*
- * @param data data to be transmitted via RTP header extension
+ * @param extensions data to be transmitted via RTP header extension
*/
- void sendHeaderExtension(in RtpHeaderExtension[] data);
+ void sendHeaderExtension(in List<RtpHeaderExtension> extensions);
/**
* Sets the media quality threshold parameters of the session to get
diff --git a/radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl b/radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
index b542079..01a042f 100644
--- a/radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl
@@ -20,7 +20,7 @@
import android.hardware.radio.ims.media.RtpHeaderExtension;
import android.hardware.radio.ims.media.RtpConfig;
import android.hardware.radio.ims.media.RtpError;
-import android.hardware.radio.ims.media.RtpSession;
+import android.hardware.radio.ims.media.RtpSessionState;
/**
* Interface declaring listener functions for unsolicited IMS media notifications per session.
@@ -28,11 +28,11 @@
@VintfStability
oneway interface IImsMediaSessionListener {
/**
- * Notifies whenever a change occurs to the RTP session.
+ * Notifies whenever the session state changed.
*
- * @param session Updated RTP session
+ * @param state RTP session state
*/
- void onSessionChanged(in RtpSession session);
+ void onSessionChanged(RtpSessionState state);
/**
* Notifies the result of IImsMediaSession#modifySession() API.
@@ -85,9 +85,9 @@
/**
* RTP header extension received from the other party
*
- * @param data content of the received RTP header extension
+ * @param extensions content of the received RTP header extension
*/
- void onHeaderExtensionReceived(in RtpHeaderExtension[] data);
+ void onHeaderExtensionReceived(in List<RtpHeaderExtension> extensions);
/**
* Notifies media inactivity observed as per thresholds set by
diff --git a/radio/aidl/android/hardware/radio/ims/media/LocalEndPoint.aidl b/radio/aidl/android/hardware/radio/ims/media/LocalEndPoint.aidl
index cd8894b..2bd48c6 100644
--- a/radio/aidl/android/hardware/radio/ims/media/LocalEndPoint.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/LocalEndPoint.aidl
@@ -16,12 +16,14 @@
package android.hardware.radio.ims.media;
-import android.hardware.radio.ims.media.RtpAddress;
+import android.os.ParcelFileDescriptor;
@VintfStability
parcelable LocalEndPoint {
- /** IP address/port on the IMS network where the socket needs to be open */
- RtpAddress localAddress;
+ /** Socket file descriptor for RTP traffic */
+ ParcelFileDescriptor rtpFd;
+ /** Socket file descriptor for RTCP traffic */
+ ParcelFileDescriptor rtcpFd;
/** The logical modem ID, returned by IRadioConfig.getPhoneCapability() */
int modemId;
}
diff --git a/radio/aidl/android/hardware/radio/ims/media/MediaStackState.aidl b/radio/aidl/android/hardware/radio/ims/media/MediaStackState.aidl
deleted file mode 100644
index 25b239e..0000000
--- a/radio/aidl/android/hardware/radio/ims/media/MediaStackState.aidl
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio.ims.media;
-
-@VintfStability
-@Backing(type="int")
-enum MediaStackState {
- /** The media stack is not initialized */
- NOT_READY = 1,
- /** The media stack is initialized and ready */
- READY = 2,
- /** The media stack is in unrecoverable error condition */
- ERROR_FATAL = 3,
-}
diff --git a/radio/aidl/android/hardware/radio/ims/media/RtcpConfig.aidl b/radio/aidl/android/hardware/radio/ims/media/RtcpConfig.aidl
index 61f98d0..98bbfc6 100644
--- a/radio/aidl/android/hardware/radio/ims/media/RtcpConfig.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/RtcpConfig.aidl
@@ -22,8 +22,6 @@
String canonicalName;
/** Port for sending outgoing RTCP packets */
int transmitPort;
- /** Port where incoming RTCP packets are received */
- int receivePort;
/** Transmit interval in seconds. Value 0 indicates that RTCP reports should not be reported */
int transmitIntervalSec;
/** Bitmask of RTCP-XR blocks to enable as in RtcpXrReportBlockType */
diff --git a/radio/aidl/android/hardware/radio/ims/media/RtpConfig.aidl b/radio/aidl/android/hardware/radio/ims/media/RtpConfig.aidl
index 9f366f7..52ca712 100644
--- a/radio/aidl/android/hardware/radio/ims/media/RtpConfig.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/RtpConfig.aidl
@@ -16,7 +16,7 @@
package android.hardware.radio.ims.media;
-import android.hardware.radio.data.QosBandwidth;
+import android.hardware.radio.AccessNetwork;
import android.hardware.radio.ims.media.MediaDirection;
import android.hardware.radio.ims.media.RtcpConfig;
import android.hardware.radio.ims.media.RtpAddress;
@@ -24,18 +24,14 @@
@VintfStability
parcelable RtpConfig {
- /** Unique identifier of the RTP config within a session */
- int configId;
/** Media flow direction */
MediaDirection direction;
- /** IP address and port number of the other party */
+ /** Radio Access Network */
+ AccessNetwork accessNetwork;
+ /** IP address and port number of the other party for RTP media */
RtpAddress remoteAddress;
/** Negotiated session parameters */
RtpSessionParams sessionParams;
/** RTCP configuration */
RtcpConfig rtcpConfig;
- /** Downlink bandwidth allocated by network in the dedicated bearer */
- QosBandwidth downlink;
- /** Uplink bandwidth allocated by network in the dedicated bearer */
- QosBandwidth uplink;
}
diff --git a/radio/aidl/android/hardware/radio/ims/media/RtpError.aidl b/radio/aidl/android/hardware/radio/ims/media/RtpError.aidl
index 84f26ae..11a3468 100644
--- a/radio/aidl/android/hardware/radio/ims/media/RtpError.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/RtpError.aidl
@@ -32,5 +32,5 @@
/** The requested port number is not available */
PORT_UNAVAILABLE = 5,
/** The request is not supported by the implementation */
- REQUEST_NOT_SUPPORTED = 6,
+ NOT_SUPPORTED = 6,
}
diff --git a/radio/aidl/android/hardware/radio/ims/media/RtpSession.aidl b/radio/aidl/android/hardware/radio/ims/media/RtpSession.aidl
deleted file mode 100644
index 70443b4..0000000
--- a/radio/aidl/android/hardware/radio/ims/media/RtpSession.aidl
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio.ims.media;
-
-import android.hardware.radio.ims.media.LocalEndPoint;
-import android.hardware.radio.ims.media.RtpConfig;
-import android.hardware.radio.ims.media.RtpSessionState;
-
-@VintfStability
-parcelable RtpSession {
- /** Unique identifier of the session */
- int sessionId;
- /** Local RTP address and logical modem identity */
- LocalEndPoint localEndPoint;
- /** RTP session state */
- RtpSessionState sessionState = RtpSessionState.CLOSED;
- /** List of remote configurations associated with this session */
- RtpConfig[] remoteConfigs;
-}
diff --git a/radio/aidl/android/hardware/radio/ims/media/RtpSessionParams.aidl b/radio/aidl/android/hardware/radio/ims/media/RtpSessionParams.aidl
index 98aff1f..86a1d33 100644
--- a/radio/aidl/android/hardware/radio/ims/media/RtpSessionParams.aidl
+++ b/radio/aidl/android/hardware/radio/ims/media/RtpSessionParams.aidl
@@ -30,11 +30,11 @@
* maxptime: Maximum amount of media that can be encapsulated in each packet
* represented in milliseconds, see RFC 4566
*/
- byte maxPtimeMillis;
+ int maxPtimeMillis;
/** Maximum Rtp transfer unit in bytes */
int maxMtuBytes;
/** dscp: Differentiated Services Field Code Point value, see RFC 2474 */
- int dscp;
+ byte dscp;
/** DTMF payload and clock rate */
DtmfParams dtmfParams;
/** Negotiated codec parameters */
diff --git a/radio/aidl/android/hardware/radio/ims/media/SpeechCodec.aidl b/radio/aidl/android/hardware/radio/ims/media/SpeechCodec.aidl
deleted file mode 100644
index 5d5680f..0000000
--- a/radio/aidl/android/hardware/radio/ims/media/SpeechCodec.aidl
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.hardware.radio.ims.media;
-
-import android.hardware.radio.ims.media.CodecType;
-import android.hardware.radio.ims.media.EvsBandwidth;
-
-@VintfStability
-parcelable SpeechCodec {
- /** Codec type */
- CodecType codecType;
- /** Codec bandwidth in case of EVS codec type */
- EvsBandwidth bandwidth;
-}