diff --git a/library/common/src/main/java/androidx/media3/common/audio/AudioProcessor.java b/library/common/src/main/java/androidx/media3/common/audio/AudioProcessor.java index 70e723f7c56..4231aaf9f38 100644 --- a/library/common/src/main/java/androidx/media3/common/audio/AudioProcessor.java +++ b/library/common/src/main/java/androidx/media3/common/audio/AudioProcessor.java @@ -15,9 +15,11 @@ */ package androidx.media3.common.audio; +import androidx.annotation.Nullable; import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.Format; import com.google.android.exoplayer2.util.Util; +import com.google.common.base.Objects; import com.google.errorprone.annotations.CanIgnoreReturnValue; import java.nio.ByteBuffer; import java.nio.ByteOrder; @@ -69,6 +71,25 @@ public String toString() { + encoding + ']'; } + + @Override + public boolean equals(@Nullable Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AudioFormat)) { + return false; + } + AudioFormat that = (AudioFormat) o; + return sampleRate == that.sampleRate + && channelCount == that.channelCount + && encoding == that.encoding; + } + + @Override + public int hashCode() { + return Objects.hashCode(sampleRate, channelCount, encoding); + } } /** Exception thrown when a processor can't be configured for a given input audio format. */