@java.lang.Override
    public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) {
            return size;
        }

        size = 0;
        if (((bitField0_ & 0x00000001) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getStartTime());
        }
        if (((bitField0_ & 0x00000002) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getEndTime());
        }
        if (java.lang.Double.doubleToRawLongBits(duration_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(3, duration_);
        }
        if (packets_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(4, packets_);
        }
        if (java.lang.Double.doubleToRawLongBits(packetRate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(5, packetRate_);
        }
        if (bytes_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(6, bytes_);
        }
        if (java.lang.Double.doubleToRawLongBits(bitrate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(7, bitrate_);
        }
        if (packetsLost_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(8, packetsLost_);
        }
        if (java.lang.Double.doubleToRawLongBits(packetLossRate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(9, packetLossRate_);
        }
        if (java.lang.Float.floatToRawIntBits(packetLossPercentage_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeFloatSize(10,
                    packetLossPercentage_);
        }
        if (packetsDuplicate_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(11, packetsDuplicate_);
        }
        if (java.lang.Double.doubleToRawLongBits(packetDuplicateRate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(12,
                    packetDuplicateRate_);
        }
        if (bytesDuplicate_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(13, bytesDuplicate_);
        }
        if (java.lang.Double.doubleToRawLongBits(bitrateDuplicate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(14, bitrateDuplicate_);
        }
        if (packetsPadding_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(15, packetsPadding_);
        }
        if (java.lang.Double.doubleToRawLongBits(packetPaddingRate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(16, packetPaddingRate_);
        }
        if (bytesPadding_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(17, bytesPadding_);
        }
        if (java.lang.Double.doubleToRawLongBits(bitratePadding_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(18, bitratePadding_);
        }
        if (packetsOutOfOrder_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(19, packetsOutOfOrder_);
        }
        if (frames_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(20, frames_);
        }
        if (java.lang.Double.doubleToRawLongBits(frameRate_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(21, frameRate_);
        }
        if (java.lang.Double.doubleToRawLongBits(jitterCurrent_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(22, jitterCurrent_);
        }
        if (java.lang.Double.doubleToRawLongBits(jitterMax_) != 0) {
            size += com.google.protobuf.CodedOutputStream.computeDoubleSize(23, jitterMax_);
        }
        for (java.util.Map.Entry<java.lang.Integer, java.lang.Integer> entry : internalGetGapHistogram()
                .getMap()
                .entrySet()) {
            com.google.protobuf.MapEntry<java.lang.Integer, java.lang.Integer> gapHistogram__ =
                    GapHistogramDefaultEntryHolder.defaultEntry.newBuilderForType()
                            .setKey(entry.getKey())
                            .setValue(entry.getValue())
                            .build();
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(24, gapHistogram__);
        }
        if (nacks_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(25, nacks_);
        }
        if (nackMisses_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(26, nackMisses_);
        }
        if (plis_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(27, plis_);
        }
        if (((bitField0_ & 0x00000004) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(28, getLastPli());
        }
        if (firs_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(29, firs_);
        }
        if (((bitField0_ & 0x00000008) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(30, getLastFir());
        }
        if (rttCurrent_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(31, rttCurrent_);
        }
        if (rttMax_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(32, rttMax_);
        }
        if (keyFrames_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(33, keyFrames_);
        }
        if (((bitField0_ & 0x00000010) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(34, getLastKeyFrame());
        }
        if (layerLockPlis_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(35, layerLockPlis_);
        }
        if (((bitField0_ & 0x00000020) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(36,
                    getLastLayerLockPli());
        }
        if (nackAcks_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(37, nackAcks_);
        }
        if (nackRepeated_ != 0) {
            size += com.google.protobuf.CodedOutputStream.computeUInt32Size(38, nackRepeated_);
        }
        if (headerBytes_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(39, headerBytes_);
        }
        if (headerBytesDuplicate_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(40,
                    headerBytesDuplicate_);
        }
        if (headerBytesPadding_ != 0L) {
            size += com.google.protobuf.CodedOutputStream.computeUInt64Size(41,
                    headerBytesPadding_);
        }
        if (((bitField0_ & 0x00000040) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(44, getPacketDrift());
        }
        if (((bitField0_ & 0x00000080) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(45, getReportDrift());
        }
        if (((bitField0_ & 0x00000100) != 0)) {
            size += com.google.protobuf.CodedOutputStream.computeMessageSize(46,
                    getRebasedReportDrift());
        }
        size += getUnknownFields().getSerializedSize();
        memoizedSize = size;
        return size;
    }
<pre>
NEXT_ID: 47
</pre>

<code>.livekit.RTPDrift rebased_report_drift = 46;</code>
turms-plugins/turms-plugin-livekit/src/main/java/im/turms/plugin/livekit/core/proto/models/RTPStats.java