Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93410d8d authored by Rakesh Raghava's avatar Rakesh Raghava Committed by Android (Google) Code Review
Browse files

Merge "[ImsMedia] Add notifyMediaQualityStatus api as per updated imsmedia design"

parents 9ba613de 93bb36fe
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -37,9 +37,7 @@ interface IImsMediaSessionListener {
  oneway void onModifySessionResponse(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 List<android.hardware.radio.ims.media.RtpHeaderExtension> extensions);
  oneway void notifyMediaInactivity(android.hardware.radio.ims.media.MediaProtocolType packetType);
  oneway void notifyPacketLoss(int packetLossPercentage);
  oneway void notifyJitter(int jitter);
  oneway void notifyMediaQualityStatus(in android.hardware.radio.ims.media.MediaQualityStatus quality);
  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);
+7 −5
Original line number Diff line number Diff line
/*
 * Copyright (C) 2021 The Android Open Source Project
 * 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.
@@ -32,8 +32,10 @@
// later when a module using the interface is updated, e.g., Mainline modules.

package android.hardware.radio.ims.media;
@Backing(type="int") @VintfStability
enum MediaProtocolType {
  RTP = 0,
  RTCP = 1,
@VintfStability
parcelable MediaQualityStatus {
  int rtpInactivityTimeMillis;
  int rtcpInactivityTimeMillis;
  int rtpPacketLossRate;
  int rtpJitterMillis;
}
+5 −4
Original line number Diff line number Diff line
@@ -34,10 +34,11 @@
package android.hardware.radio.ims.media;
@VintfStability
parcelable MediaQualityThreshold {
  int rtpInactivityTimerMillis;
  int[] rtpInactivityTimerMillis;
  int rtcpInactivityTimerMillis;
  int rtpPacketLossDurationMillis;
  int rtpPacketLossRate;
  int jitterDurationMillis;
  int rtpJitterMillis;
  int rtpHysteresisTimeInMillis;
  int[] rtpPacketLossRate;
  int[] rtpJitterMillis;
  boolean notifyCurrentStatus;
}
+0 −1
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
package android.hardware.radio.ims.media;

import android.hardware.radio.ims.media.IImsMediaSessionListener;
import android.hardware.radio.ims.media.MediaProtocolType;
import android.hardware.radio.ims.media.MediaQualityThreshold;
import android.hardware.radio.ims.media.RtpConfig;
import android.hardware.radio.ims.media.RtpError;
+5 −21
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@
package android.hardware.radio.ims.media;

import android.hardware.radio.ims.media.CallQuality;
import android.hardware.radio.ims.media.MediaProtocolType;
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;
@@ -59,28 +59,12 @@ oneway interface IImsMediaSessionListener {
    void onHeaderExtensionReceived(in List<RtpHeaderExtension> extensions);

    /**
     * Notifies media inactivity observed as per thresholds set by
     * setMediaQualityThreshold() API
     * Notifies when the measured media quality crosses at least one of
     * {@link MediaQualityThreshold} set by {@link IImsMediaSession#setMediaQualityThreshold()}.
     *
     * @param packetType either RTP or RTCP
     * @param quality The object of MediaQualityStatus with the rtp and the rtcp statistics.
     */
    void notifyMediaInactivity(MediaProtocolType packetType);

    /**
     * Notifies RTP packet loss observed as per thresholds set by
     * setMediaQualityThreshold() API
     *
     * @param packetLossPercentage percentage of packet loss calculated over the duration
     */
    void notifyPacketLoss(int packetLossPercentage);

    /**
     * Notifies RTP jitter observed as per thresholds set by
     * IImsMediaSession#setMediaQualityThreshold() API
     *
     * @param jitter jitter of the RTP packets in milliseconds calculated over the duration
     */
    void notifyJitter(int jitter);
    void notifyMediaQualityStatus(in MediaQualityStatus quality);

    /**
     * The modem RTP stack fires this API to query whether the desired bitrate mentioned
Loading