diff options
author | dhavalc <dhavalc@google.com> | 2022-10-07 12:13:22 +0000 |
---|---|---|
committer | dhavalc <dhavalc@google.com> | 2022-10-11 09:47:24 +0000 |
commit | 4234cd84532c0e604e4ee24882a942d3be667be7 (patch) | |
tree | 062ef155f40c09d619a18b7c353c2303219291e7 /framework/src/android | |
parent | 10b5bebe6ffda8a83ba591cefb4c1c9bfb1ca178 (diff) | |
download | ImsMedia-4234cd84532c0e604e4ee24882a942d3be667be7.tar.gz |
Added changes to move CMR from CodecParams to EvsParams
Test: Tested with device
Bug: 236357306
Change-Id: Ib319ef0150e5e9aabfd3ffdb24852923ffbe5a90
Diffstat (limited to 'framework/src/android')
-rw-r--r-- | framework/src/android/telephony/imsmedia/AudioConfig.java | 32 | ||||
-rw-r--r-- | framework/src/android/telephony/imsmedia/EvsParams.java | 37 |
2 files changed, 33 insertions, 36 deletions
diff --git a/framework/src/android/telephony/imsmedia/AudioConfig.java b/framework/src/android/telephony/imsmedia/AudioConfig.java index ab9af140..ec08a573 100644 --- a/framework/src/android/telephony/imsmedia/AudioConfig.java +++ b/framework/src/android/telephony/imsmedia/AudioConfig.java @@ -59,7 +59,6 @@ public final class AudioConfig extends RtpConfig { private byte pTimeMillis; private int maxPtimeMillis; - private byte codecModeRequest; private boolean dtxEnabled; private @CodecType int codecType; private byte mDtmfTxPayloadTypeNumber; @@ -75,7 +74,6 @@ public final class AudioConfig extends RtpConfig { super(RtpConfig.TYPE_AUDIO, in); pTimeMillis = in.readByte(); maxPtimeMillis = in.readInt(); - codecModeRequest = in.readByte(); dtxEnabled = in.readBoolean(); codecType = in.readInt(); mDtmfTxPayloadTypeNumber = in.readByte(); @@ -90,7 +88,6 @@ public final class AudioConfig extends RtpConfig { super(RtpConfig.TYPE_AUDIO, builder); this.pTimeMillis = builder.pTimeMillis; this.maxPtimeMillis = builder.maxPtimeMillis; - this.codecModeRequest = builder.codecModeRequest; this.dtxEnabled = builder.dtxEnabled; this.codecType = builder.codecType; this.mDtmfTxPayloadTypeNumber = builder.mDtmfTxPayloadTypeNumber; @@ -121,16 +118,6 @@ public final class AudioConfig extends RtpConfig { } /** @hide **/ - public byte getCodecModeRequest() { - return codecModeRequest; - } - - /** @hide **/ - public void setCodecModeRequest(byte codecModeRequest) { - this.codecModeRequest = codecModeRequest; - } - - /** @hide **/ public boolean getDtxEnabled() { return dtxEnabled; } @@ -195,7 +182,6 @@ public final class AudioConfig extends RtpConfig { public String toString() { return super.toString() + " AudioConfig: {pTimeMillis=" + pTimeMillis + ", maxPtimeMillis=" + maxPtimeMillis - + ", codecModeRequest=" + codecModeRequest + ", dtxEnabled=" + dtxEnabled + ", codecType=" + codecType + ", mDtmfTxPayloadTypeNumber=" + mDtmfTxPayloadTypeNumber @@ -209,7 +195,7 @@ public final class AudioConfig extends RtpConfig { @Override public int hashCode() { return Objects.hash(super.hashCode(), pTimeMillis, maxPtimeMillis, - codecModeRequest, dtxEnabled, codecType, mDtmfTxPayloadTypeNumber, + dtxEnabled, codecType, mDtmfTxPayloadTypeNumber, mDtmfRxPayloadTypeNumber, dtmfSamplingRateKHz, amrParams, evsParams); } @@ -231,7 +217,6 @@ public final class AudioConfig extends RtpConfig { return (pTimeMillis == s.pTimeMillis && maxPtimeMillis == s.maxPtimeMillis - && codecModeRequest == s.codecModeRequest && dtxEnabled == s.dtxEnabled && codecType == s.codecType && mDtmfTxPayloadTypeNumber == s.mDtmfTxPayloadTypeNumber @@ -255,7 +240,6 @@ public final class AudioConfig extends RtpConfig { super.writeToParcel(dest, RtpConfig.TYPE_AUDIO); dest.writeByte(pTimeMillis); dest.writeInt(maxPtimeMillis); - dest.writeByte(codecModeRequest); dest.writeBoolean(dtxEnabled); dest.writeInt(codecType); dest.writeByte(mDtmfTxPayloadTypeNumber); @@ -284,7 +268,6 @@ public final class AudioConfig extends RtpConfig { public static final class Builder extends RtpConfig.AbstractBuilder<Builder> { private byte pTimeMillis; private int maxPtimeMillis; - private byte codecModeRequest; private boolean dtxEnabled; private @CodecType int codecType; private byte mDtmfTxPayloadTypeNumber; @@ -331,19 +314,6 @@ public final class AudioConfig extends RtpConfig { } /** - * Set the codec mode request (CMR) is used to request the speech codec encoder - * of the other party to set the frame type index of speech mode via RTP header, - * See RFC 4867 section 4.3.1. Allowed values are -1, 0 and 1 - * - * @param codecModeRequest codec mode request - * @return The same instance of the builder - */ - public Builder setCodecModeRequest(final byte codecModeRequest) { - this.codecModeRequest = codecModeRequest; - return this; - } - - /** * Set whether discontinuous transmission (DTX) is enabled or not * * @param dtxEnabled {@code true} if DTX enabled diff --git a/framework/src/android/telephony/imsmedia/EvsParams.java b/framework/src/android/telephony/imsmedia/EvsParams.java index 54e05032..f8725820 100644 --- a/framework/src/android/telephony/imsmedia/EvsParams.java +++ b/framework/src/android/telephony/imsmedia/EvsParams.java @@ -131,6 +131,7 @@ public final class EvsParams implements Parcelable { private final @EvsMode int evsMode; private final byte channelAwareMode; private final boolean mUseHeaderFullOnly; + private final byte mCodecModeRequest; /** @hide **/ public EvsParams(Parcel in) { @@ -138,14 +139,17 @@ public final class EvsParams implements Parcelable { evsMode = in.readInt(); channelAwareMode = in.readByte(); mUseHeaderFullOnly = in.readBoolean(); + mCodecModeRequest = in.readByte(); } private EvsParams(final @EvsBandwidth int evsBandwidth, final @EvsMode int evsMode, - final byte channelAwareMode, final boolean mUseHeaderFullOnly) { + final byte channelAwareMode, final boolean mUseHeaderFullOnly, + final byte codecModeRequest) { this.evsBandwidth = evsBandwidth; this.evsMode = evsMode; this.channelAwareMode = channelAwareMode; this.mUseHeaderFullOnly = mUseHeaderFullOnly; + this.mCodecModeRequest = codecModeRequest; } /** @hide **/ @@ -168,6 +172,11 @@ public final class EvsParams implements Parcelable { return mUseHeaderFullOnly; } + /** @hide **/ + public byte getCodecModeRequest() { + return mCodecModeRequest; + } + @NonNull @Override public String toString() { @@ -175,12 +184,14 @@ public final class EvsParams implements Parcelable { + ", evsMode=" + evsMode + ", channelAwareMode=" + channelAwareMode + ", mUseHeaderFullOnly=" + mUseHeaderFullOnly + + ", mCodecModeRequest=" + mCodecModeRequest + " }"; } @Override public int hashCode() { - return Objects.hash(evsBandwidth, evsMode, channelAwareMode, mUseHeaderFullOnly); + return Objects.hash(evsBandwidth, evsMode, channelAwareMode, mUseHeaderFullOnly, + mCodecModeRequest); } @Override @@ -198,7 +209,8 @@ public final class EvsParams implements Parcelable { return (evsBandwidth == s.evsBandwidth && evsMode == s.evsMode && channelAwareMode == s.channelAwareMode - && mUseHeaderFullOnly == s.mUseHeaderFullOnly); + && mUseHeaderFullOnly == s.mUseHeaderFullOnly + && mCodecModeRequest == s.mCodecModeRequest); } /** @@ -216,6 +228,7 @@ public final class EvsParams implements Parcelable { dest.writeInt(evsMode); dest.writeByte(channelAwareMode); dest.writeBoolean(mUseHeaderFullOnly); + dest.writeByte(mCodecModeRequest); } public static final @NonNull Parcelable.Creator<EvsParams> @@ -239,6 +252,7 @@ public final class EvsParams implements Parcelable { private @EvsMode int evsMode; private byte channelAwareMode; private boolean mUseHeaderFullOnly; + private byte mCodecModeRequest; /** * Default constructor for Builder. @@ -303,14 +317,27 @@ public final class EvsParams implements Parcelable { } /** + * cmr: Codec mode request is used to request the speech codec encoder of the + * other party to set the frame type index of speech mode via RTP header, See + * 3GPP TS 26.445 section A.3. Allowed values are -1, 0 and 1. + * + * @param codecModeRequest codec mode request + * @return The same instance of the builder + */ + public Builder setCodecModeRequest(final byte codecModeRequest) { + this.mCodecModeRequest = codecModeRequest; + return this; + } + + /** * Build the EvsParams. * * @return the EvsParams object. */ public @NonNull EvsParams build() { // TODO validation - return new EvsParams(evsBandwidth, evsMode, channelAwareMode, mUseHeaderFullOnly); + return new EvsParams(evsBandwidth, evsMode, channelAwareMode, mUseHeaderFullOnly, + mCodecModeRequest); } } } - |