Loading radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -42,4 +42,6 @@ interface IImsMediaSession { oneway void stopDtmf(); oneway void sendHeaderExtension(in List<android.hardware.radio.ims.media.RtpHeaderExtension> extensions); oneway void setMediaQualityThreshold(in android.hardware.radio.ims.media.MediaQualityThreshold threshold); oneway void requestRtpReceptionStats(in int intervalMs); oneway void adjustDelay(in int delayMs); } radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -42,4 +42,5 @@ interface IImsMediaSessionListener { oneway void triggerAnbrQuery(in android.hardware.radio.ims.media.RtpConfig config); oneway void onDtmfReceived(char dtmfDigit, int durationMs); oneway void onCallQualityChanged(in android.hardware.radio.ims.media.CallQuality callQuality); oneway void notifyRtpReceptionStats(in android.hardware.radio.ims.media.RtpReceptionStats stats); } radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpReceptionStats.aidl 0 → 100644 +42 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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 RtpReceptionStats { int rtpTimestamp; int rtpSequenceNumber; int timeDurationMs; int jitterBufferMs; int roundTripTimeMs; } radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl +22 −0 Original line number Diff line number Diff line Loading @@ -94,4 +94,26 @@ oneway interface IImsMediaSession { * This is available when android.hardware.telephony.ims is defined. */ void setMediaQualityThreshold(in MediaQualityThreshold threshold); /** * Queries the current RTP reception statistics of the RTP stream. It will trigger the IImsMediaSessionListener#notifyRtpReceptionStats(RtpReceptionStats). * * @param intervalMs The interval of the time in milliseconds of the RTP reception * notification. When it is zero, the report is disabled. * * This is available when android.hardware.telephony.ims is defined. */ void requestRtpReceptionStats(in int intervalMs); /** * Adjust the delay in the jitter buffer to synchronize the audio with the time of video * frames * * @param delayMs The delay to apply to the jitter buffer. If it is positive, the jitter * buffer increases the delay, if it is negative, the jitter buffer decreases the delay. * * This is available when android.hardware.telephony.ims is defined. */ void adjustDelay(in int delayMs); } radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl +25 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import android.hardware.radio.ims.media.MediaQualityStatus; import android.hardware.radio.ims.media.RtpConfig; import android.hardware.radio.ims.media.RtpError; import android.hardware.radio.ims.media.RtpHeaderExtension; import android.hardware.radio.ims.media.RtpReceptionStats; /** * Interface declaring listener functions for unsolicited IMS media notifications per session. Loading @@ -37,6 +38,8 @@ oneway interface IImsMediaSessionListener { * RtpError :INTERNAL_ERR * RtpError :NO_MEMORY * RtpError :NO_RESOURCES * * This is available when android.hardware.telephony.ims is defined. */ void onModifySessionResponse(in RtpConfig config, RtpError error); Loading @@ -49,6 +52,8 @@ oneway interface IImsMediaSessionListener { * packets from the most recently added config. * * @param config The remote config where the media is received * * This is available when android.hardware.telephony.ims is defined. */ void onFirstMediaPacketReceived(in RtpConfig config); Loading @@ -56,6 +61,8 @@ oneway interface IImsMediaSessionListener { * RTP header extension received from the other party * * @param extensions content of the received RTP header extension * * This is available when android.hardware.telephony.ims is defined. */ void onHeaderExtensionReceived(in List<RtpHeaderExtension> extensions); Loading @@ -64,6 +71,8 @@ oneway interface IImsMediaSessionListener { * {@link MediaQualityThreshold} set by {@link IImsMediaSession#setMediaQualityThreshold()}. * * @param quality The object of MediaQualityStatus with the rtp and the rtcp statistics. * * This is available when android.hardware.telephony.ims is defined. */ void notifyMediaQualityStatus(in MediaQualityStatus quality); Loading @@ -73,6 +82,8 @@ oneway interface IImsMediaSessionListener { * See 3GPP TS 26.114. * * @param config containing desired bitrate and direction * * This is available when android.hardware.telephony.ims is defined. */ void triggerAnbrQuery(in RtpConfig config); Loading @@ -81,6 +92,8 @@ oneway interface IImsMediaSessionListener { * * @param dtmfDigit single char having one of 12 values: 0-9, *, # * @param durationMs The duration to play the tone in milliseconds unit * * This is available when android.hardware.telephony.ims is defined. */ void onDtmfReceived(char dtmfDigit, int durationMs); Loading @@ -88,6 +101,18 @@ oneway interface IImsMediaSessionListener { * Notifies when a change to call quality has occurred * * @param CallQuality The call quality statistics of ongoing call since last report * * This is available when android.hardware.telephony.ims is defined. */ void onCallQualityChanged(in CallQuality callQuality); /** * Notifies the RTP reception statistics periodically after * IImsMediaSession#requestRtpReceptionStats(intervalMs) is invoked. * * @param stats The RTP reception statistics * * This is available when android.hardware.telephony.ims is defined. */ void notifyRtpReceptionStats(in RtpReceptionStats stats); } Loading
radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSession.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -42,4 +42,6 @@ interface IImsMediaSession { oneway void stopDtmf(); oneway void sendHeaderExtension(in List<android.hardware.radio.ims.media.RtpHeaderExtension> extensions); oneway void setMediaQualityThreshold(in android.hardware.radio.ims.media.MediaQualityThreshold threshold); oneway void requestRtpReceptionStats(in int intervalMs); oneway void adjustDelay(in int delayMs); }
radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -42,4 +42,5 @@ interface IImsMediaSessionListener { oneway void triggerAnbrQuery(in android.hardware.radio.ims.media.RtpConfig config); oneway void onDtmfReceived(char dtmfDigit, int durationMs); oneway void onCallQualityChanged(in android.hardware.radio.ims.media.CallQuality callQuality); oneway void notifyRtpReceptionStats(in android.hardware.radio.ims.media.RtpReceptionStats stats); }
radio/aidl/aidl_api/android.hardware.radio.ims.media/current/android/hardware/radio/ims/media/RtpReceptionStats.aidl 0 → 100644 +42 −0 Original line number Diff line number Diff line /* * Copyright (C) 2023 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 RtpReceptionStats { int rtpTimestamp; int rtpSequenceNumber; int timeDurationMs; int jitterBufferMs; int roundTripTimeMs; }
radio/aidl/android/hardware/radio/ims/media/IImsMediaSession.aidl +22 −0 Original line number Diff line number Diff line Loading @@ -94,4 +94,26 @@ oneway interface IImsMediaSession { * This is available when android.hardware.telephony.ims is defined. */ void setMediaQualityThreshold(in MediaQualityThreshold threshold); /** * Queries the current RTP reception statistics of the RTP stream. It will trigger the IImsMediaSessionListener#notifyRtpReceptionStats(RtpReceptionStats). * * @param intervalMs The interval of the time in milliseconds of the RTP reception * notification. When it is zero, the report is disabled. * * This is available when android.hardware.telephony.ims is defined. */ void requestRtpReceptionStats(in int intervalMs); /** * Adjust the delay in the jitter buffer to synchronize the audio with the time of video * frames * * @param delayMs The delay to apply to the jitter buffer. If it is positive, the jitter * buffer increases the delay, if it is negative, the jitter buffer decreases the delay. * * This is available when android.hardware.telephony.ims is defined. */ void adjustDelay(in int delayMs); }
radio/aidl/android/hardware/radio/ims/media/IImsMediaSessionListener.aidl +25 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ import android.hardware.radio.ims.media.MediaQualityStatus; import android.hardware.radio.ims.media.RtpConfig; import android.hardware.radio.ims.media.RtpError; import android.hardware.radio.ims.media.RtpHeaderExtension; import android.hardware.radio.ims.media.RtpReceptionStats; /** * Interface declaring listener functions for unsolicited IMS media notifications per session. Loading @@ -37,6 +38,8 @@ oneway interface IImsMediaSessionListener { * RtpError :INTERNAL_ERR * RtpError :NO_MEMORY * RtpError :NO_RESOURCES * * This is available when android.hardware.telephony.ims is defined. */ void onModifySessionResponse(in RtpConfig config, RtpError error); Loading @@ -49,6 +52,8 @@ oneway interface IImsMediaSessionListener { * packets from the most recently added config. * * @param config The remote config where the media is received * * This is available when android.hardware.telephony.ims is defined. */ void onFirstMediaPacketReceived(in RtpConfig config); Loading @@ -56,6 +61,8 @@ oneway interface IImsMediaSessionListener { * RTP header extension received from the other party * * @param extensions content of the received RTP header extension * * This is available when android.hardware.telephony.ims is defined. */ void onHeaderExtensionReceived(in List<RtpHeaderExtension> extensions); Loading @@ -64,6 +71,8 @@ oneway interface IImsMediaSessionListener { * {@link MediaQualityThreshold} set by {@link IImsMediaSession#setMediaQualityThreshold()}. * * @param quality The object of MediaQualityStatus with the rtp and the rtcp statistics. * * This is available when android.hardware.telephony.ims is defined. */ void notifyMediaQualityStatus(in MediaQualityStatus quality); Loading @@ -73,6 +82,8 @@ oneway interface IImsMediaSessionListener { * See 3GPP TS 26.114. * * @param config containing desired bitrate and direction * * This is available when android.hardware.telephony.ims is defined. */ void triggerAnbrQuery(in RtpConfig config); Loading @@ -81,6 +92,8 @@ oneway interface IImsMediaSessionListener { * * @param dtmfDigit single char having one of 12 values: 0-9, *, # * @param durationMs The duration to play the tone in milliseconds unit * * This is available when android.hardware.telephony.ims is defined. */ void onDtmfReceived(char dtmfDigit, int durationMs); Loading @@ -88,6 +101,18 @@ oneway interface IImsMediaSessionListener { * Notifies when a change to call quality has occurred * * @param CallQuality The call quality statistics of ongoing call since last report * * This is available when android.hardware.telephony.ims is defined. */ void onCallQualityChanged(in CallQuality callQuality); /** * Notifies the RTP reception statistics periodically after * IImsMediaSession#requestRtpReceptionStats(intervalMs) is invoked. * * @param stats The RTP reception statistics * * This is available when android.hardware.telephony.ims is defined. */ void notifyRtpReceptionStats(in RtpReceptionStats stats); }