@java.lang.Override
    public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
            return true;
        }
        if (!(obj instanceof RTPDrift other)) {
            return super.equals(obj);
        }

        if (hasStartTime() != other.hasStartTime()) {
            return false;
        }
        if (hasStartTime()) {
            if (!getStartTime().equals(other.getStartTime())) {
                return false;
            }
        }
        if (hasEndTime() != other.hasEndTime()) {
            return false;
        }
        if (hasEndTime()) {
            if (!getEndTime().equals(other.getEndTime())) {
                return false;
            }
        }
        if (java.lang.Double.doubleToLongBits(getDuration()) != java.lang.Double
                .doubleToLongBits(other.getDuration())) {
            return false;
        }
        if (getStartTimestamp() != other.getStartTimestamp()) {
            return false;
        }
        if (getEndTimestamp() != other.getEndTimestamp()) {
            return false;
        }
        if (getRtpClockTicks() != other.getRtpClockTicks()) {
            return false;
        }
        if (getDriftSamples() != other.getDriftSamples()) {
            return false;
        }
        if (java.lang.Double.doubleToLongBits(getDriftMs()) != java.lang.Double
                .doubleToLongBits(other.getDriftMs())) {
            return false;
        }
        if (java.lang.Double.doubleToLongBits(getClockRate()) != java.lang.Double
                .doubleToLongBits(other.getClockRate())) {
            return false;
        }
        return getUnknownFields().equals(other.getUnknownFields());
    }
<code>double clock_rate = 9;</code>

@return The clockRate.
turms-plugins/turms-plugin-livekit/src/main/java/im/turms/plugin/livekit/core/proto/models/RTPDrift.java