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

Commit 8de37d08 authored by Chi Zhang's avatar Chi Zhang Committed by Automerger Merge Worker
Browse files

Merge "Fix codec metrics for CS MT calls" am: 1b24a1e3 am: 6d17d5b0 am:...

Merge "Fix codec metrics for CS MT calls" am: 1b24a1e3 am: 6d17d5b0 am: a13bf0d2 am: 969afaa0

Original change: https://android-review.googlesource.com/c/platform/frameworks/opt/telephony/+/1810776

Change-Id: I609608397514d3220f5fbeb6074c97690e43113b
parents b441b18b 969afaa0
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -415,6 +415,12 @@ public class VoiceCallSessionStats {
            // internal fields for tracking
            proto.setupBeginMillis = getTimeMillis();

            // audio codec might have already been set
            int codec = audioQualityToCodec(bearer, conn.getAudioCodec());
            if (codec != AudioCodec.AUDIO_CODEC_UNKNOWN) {
                proto.codecBitmask = (1L << codec);
            }

            proto.concurrentCallCountAtStart = mCallProtos.size();
            mCallProtos.put(id, proto);

+6 −5
Original line number Diff line number Diff line
@@ -1311,9 +1311,9 @@ public class VoiceCallSessionStatsTest extends TelephonyTest {
        expectedCall.ratSwitchCount = 1L;
        expectedCall.setupFailed = true;
        expectedCall.ratAtConnected = TelephonyManager.NETWORK_TYPE_UNKNOWN;
        expectedCall.codecBitmask = 1L << AudioCodec.AUDIO_CODEC_AMR;
        expectedCall.codecBitmask = 0L;
        expectedCall.mainCodecQuality =
                VOICE_CALL_SESSION__MAIN_CODEC_QUALITY__CODEC_QUALITY_NARROWBAND;
                VOICE_CALL_SESSION__MAIN_CODEC_QUALITY__CODEC_QUALITY_UNKNOWN;
        VoiceCallRatUsage expectedRatUsageLte =
                makeRatUsageProto(
                        CARRIER_ID_SLOT_0, TelephonyManager.NETWORK_TYPE_LTE, 2000L, 3000L, 1L);
@@ -1331,8 +1331,6 @@ public class VoiceCallSessionStatsTest extends TelephonyTest {
        mVoiceCallSessionStats0.setTimeMillis(3000L);
        setServiceState(mServiceState, TelephonyManager.NETWORK_TYPE_UMTS);
        mVoiceCallSessionStats0.onServiceStateChanged(mServiceState);
        mVoiceCallSessionStats0.setTimeMillis(3100L);
        mVoiceCallSessionStats0.onAudioCodecChanged(mGsmConnection0, DriverCall.AUDIO_QUALITY_AMR);
        mVoiceCallSessionStats0.setTimeMillis(15000L);
        doReturn(DisconnectCause.LOST_SIGNAL).when(mGsmConnection0).getDisconnectCause();
        mVoiceCallSessionStats0.onRilCallListChanged(List.of(mGsmConnection0));
@@ -1435,7 +1433,8 @@ public class VoiceCallSessionStatsTest extends TelephonyTest {
        expectedCall.setupFailed = true;
        expectedCall.ratAtConnected = TelephonyManager.NETWORK_TYPE_UNKNOWN;
        expectedCall.bandAtEnd = 0;
        expectedCall.codecBitmask = 1L << AudioCodec.AUDIO_CODEC_AMR;
        expectedCall.codecBitmask =
                (1L << AudioCodec.AUDIO_CODEC_AMR) | (1L << AudioCodec.AUDIO_CODEC_AMR_WB);
        expectedCall.mainCodecQuality =
                VOICE_CALL_SESSION__MAIN_CODEC_QUALITY__CODEC_QUALITY_NARROWBAND;
        VoiceCallRatUsage expectedRatUsage =
@@ -1448,10 +1447,12 @@ public class VoiceCallSessionStatsTest extends TelephonyTest {
        mVoiceCallSessionStats0.setTimeMillis(2500L);
        doReturn(Call.State.INCOMING).when(mCsCall0).getState();
        doReturn(Call.State.INCOMING).when(mGsmConnection0).getState();
        doReturn(DriverCall.AUDIO_QUALITY_AMR_WB).when(mGsmConnection0).getAudioCodec();
        doReturn(DisconnectCause.NOT_DISCONNECTED).when(mGsmConnection0).getDisconnectCause();
        mVoiceCallSessionStats0.onRilCallListChanged(List.of(mGsmConnection0));
        mVoiceCallSessionStats0.setTimeMillis(3000L);
        mVoiceCallSessionStats0.onAudioCodecChanged(mGsmConnection0, DriverCall.AUDIO_QUALITY_AMR);
        doReturn(DriverCall.AUDIO_QUALITY_AMR).when(mGsmConnection0).getAudioCodec();
        mVoiceCallSessionStats0.setTimeMillis(15000L);
        doReturn(DisconnectCause.NORMAL).when(mGsmConnection0).getDisconnectCause();
        doReturn(PreciseDisconnectCause.CALL_REJECTED)