luxlabs header browser preview


@class VCReportingHistogram, NSString, VCReportingHistogram2D, NSDate, NSMutableDictionary, NSDictionary, NSObject, NSNumber;
@protocol VCAdaptiveLearningDelegate, OS_nw_activity;

@interface CallSegment : VCReportingCommon {
    unsigned int _audioFlushPercent;
    unsigned int _videoFlushPercent;
    NSString *_relayServer;
    int _relayType;
    NSString *_accessToken;
    unsigned char _duplicationType;
    int _interval;
    int _frequency;
    NSObject<OS_nw_activity> *_nwActivity;
    BOOL _useNwActivitySubmitMetrics;
    BOOL _isNWActivityReportingEnabled;
    NSDate *_conversationTimeBase;
    int _startDate;
    id<VCAdaptiveLearningDelegate> _delegate;
    BOOL _isSmartBrakeHistogramPopulated;
    VCReportingHistogram *_smartBrakeDuration;
    VCReportingHistogram *_smartBrakeTargetBitrateStart;
    VCReportingHistogram *_smartBrakeBandwidthStart;
    VCReportingHistogram *_smartBrakeBandwidthEnd;
    VCReportingHistogram *_smartBrakeTargetBitrateAfter5;
    VCReportingHistogram *_smartBrakeTargetBitrateAfter15;
    VCReportingHistogram *_smartBrakeTargetBitrateAfter30;
}

@property unsigned long long packetSendSuccessCounter;
@property unsigned long long packetSendFailureCounter;
@property BOOL isApplePersonalHotspot;
@property unsigned int rateControlSmartBrakeTrialVersion;
@property struct { unsigned int linkProbingVersion; unsigned int remoteLinkProbingVersion; double localAlertDuration; double remoteAlertDuration; } linkProbingConfig;
@property (readonly) VCReportingHistogram *RTT;
@property (readonly) VCReportingHistogram *abnormalRTT;
@property (readonly) VCReportingHistogram *JBQSize;
@property (readonly) VCReportingHistogram *WANVJBQSize;
@property (readonly) VCReportingHistogram *JBQSizeDeltaVidLarger;
@property (readonly) VCReportingHistogram *JBQSizeDeltaAudLarger;
@property (readonly) VCReportingHistogram *JBTarget;
@property (readonly) VCReportingHistogram *JBUnclippedTarget;
@property (readonly) VCReportingHistogram *PLR;
@property (readonly) VCReportingHistogram *VPLR;
@property (readonly) VCReportingHistogram *abnormalPLR;
@property (readonly) VCReportingHistogram *abnormalBPL;
@property (readonly) VCReportingHistogram *latency;
@property (readonly) VCReportingHistogram *TBR;
@property (readonly) VCReportingHistogram *RBR;
@property (readonly) VCReportingHistogram *SBR;
@property (readonly) VCReportingHistogram *TVidMedBR;
@property (readonly) VCReportingHistogram *TVidCodecPayload;
@property (readonly) VCReportingHistogram *framerate;
@property (readonly) VCReportingHistogram *audioErasures;
@property (readonly) VCReportingHistogram *speechErasures;
@property (readonly) VCReportingHistogram *jitterErasures;
@property (readonly) VCReportingHistogram *maxConsAudioErasuresHistogram;
@property (readonly) VCReportingHistogram *mediaStall;
@property (readonly) VCReportingHistogram *videoQualityScore;
@property (readonly) VCReportingHistogram *poorConnection;
@property (readonly) VCReportingHistogram *videoResolution;
@property (readonly) VCReportingHistogram *videoEncodingBitrate;
@property (readonly) VCReportingHistogram *videoJitter;
@property (readonly) VCReportingHistogram *REDErasureCompensationRate;
@property (readonly) VCReportingHistogram *REDReceivedCount;
@property (readonly) VCReportingHistogram *REDDiscardedCount;
@property (readonly) VCReportingHistogram *REDNumPayloadsUsed;
@property (readonly) VCReportingHistogram *REDMaxDelay;
@property (readonly) VCReportingHistogram *videoStall;
@property (readonly) VCReportingHistogram *continuousHighRTTReportCount;
@property (readonly) VCReportingHistogram *continuousHighPLRReportCount;
@property (readonly) VCReportingHistogram *continuousHighRTTPLRReportCount;
@property (readonly) VCReportingHistogram *nacksRTXResponseTime;
@property (readonly) VCReportingHistogram *nacksRTXLateTime;
@property (readonly) VCReportingHistogram *nacksRTXMediaBitRate;
@property (readonly) VCReportingHistogram *nacksRTXRetransmittedMediaBitRate;
@property (readonly) VCReportingHistogram *timescaleRate;
@property (readonly) VCReportingHistogram *silenceTimescaleRate;
@property (readonly) VCReportingHistogram *speechTimescaleRate;
@property (readonly) VCReportingHistogram *evictedFramesLatePacketDelayHist;
@property (readonly) VCReportingHistogram *nacksPLRWithRTX;
@property (readonly) VCReportingHistogram *nacksPLRWithoutRTX;
@property int duration;
@property int adjustedDuration;
@property double totalVideoStallTime;
@property double totalMediaStallTime;
@property double maxMediaStallTime;
@property unsigned int mediaStallCount;
@property double maxVideoStallInterval;
@property double totalAudioStallTime;
@property double maxAudioStallInterval;
@property double maxNoRemotePacketsInterval;
@property double totalNoRemotePacketsTime;
@property double poorConnectionTotalLength;
@property double poorConnectionMaxLength;
@property double averageTargetBitrate;
@property double averageSendBitrate;
@property double averageReceiveBitrate;
@property double averageTotalVideoSendBitrate;
@property double averageVideoMediaSendBitrate;
@property double averageVideoHeaderSendBitrate;
@property double averageVideoFECSendBitrate;
@property double averageTotalVideoRecvBitrate;
@property double averageAudioErasuresRate;
@property double averageSpeechErasuresRate;
@property double averageJitterErasuresRate;
@property unsigned int maxConsecutiveAudioErasures;
@property double speechErasureTotalTime;
@property double averageBWE;
@property double averageTotalTimescaleRate;
@property double averageSilenceTimescaleRate;
@property double averageSpeechTimescaleRate;
@property unsigned int minBWE;
@property unsigned int maxBWE;
@property unsigned int totalSuddenBandwidthDropCount;
@property unsigned int totalMBLRampDownCount;
@property double averageRTT;
@property unsigned int poorConnectionFrequency;
@property unsigned int BBQueueTooLargeCount;
@property unsigned int BBRateTooLowCount;
@property unsigned long long audioFlushPacketCount;
@property unsigned long long audioSentPacketCount;
@property unsigned long long videoFlushPacketCount;
@property unsigned long long videoSentPacketCount;
@property unsigned int audioRecvPacketCount;
@property unsigned long long VPLRAccumulator;
@property unsigned int errorCode;
@property unsigned int significantOOOPacketCount;
@property unsigned int totalVideoPacketsExpected;
@property unsigned int totalFIRDemandCounter;
@property unsigned int totalFIRCounter;
@property unsigned int videoFrameDecodedButSkippedCounter;
@property unsigned int videoFrameIncompleteNextTSCounter;
@property unsigned int videoFrameTotalIncompleteCounter;
@property unsigned int decodedVideoFrameEnqueueCounter;
@property unsigned int videoFrameReceivedCounter;
@property unsigned int videoFrameExpectedCounter;
@property unsigned int videoFrameNonFECTotalCounter;
@property unsigned int videoFrameNonFECCompleteCounter;
@property unsigned int encodedVideoFrameCounter;
@property unsigned int captureVideoFrameCounter;
@property unsigned int overshootSendBitrate;
@property unsigned int undershootSendBitrate;
@property unsigned int overUtilizedBandwidth;
@property unsigned int underUtilizedBandwidth;
@property unsigned int callMode;
@property unsigned int callDeviceRole;
@property unsigned int callTransportType;
@property BOOL isInitiator;
@property (readonly) NSString *segmentName;
@property (readonly) NSString *previousSegmentName;
@property (copy) NSString *activeConnectionRegistry;
@property (copy) NSString *suggestedLinkTypeCombo;
@property (copy) NSString *duplicationConnectionConfig;
@property (copy) NSString *duplicationConnectionFamily;
@property unsigned long long totalCellDupTxDataBytes;
@property unsigned long long totalCellDupRxDataBytes;
@property unsigned long long totalUsedCellBudgetTxDataBytes;
@property unsigned long long totalUsedCellBudgetRxDataBytes;
@property unsigned long long totalCellTxDataBytes;
@property unsigned long long totalCellRxDataBytes;
@property unsigned long long totalWifiTxDataBytes;
@property unsigned long long totalWifiRxDataBytes;
@property double duplicationMaxNoRemotePacketTime;
@property double duplicationMaxRemoteNoRemotePacketTime;
@property (readonly) NSMutableDictionary *fecStatsDict;
@property unsigned int vcrcProfileNumber;
@property (copy) NSString *remoteOSBuild;
@property unsigned int evictedFramesLikelyRecoverableCount;
@property double evictedFramesAverageLatePacketDelay;
@property double evictedFramesMaxLatePacketDelay;
@property unsigned int evictedFramesTrackedCount;
@property unsigned int evictedFramesAnalysisValidIntervals;
@property unsigned int lateFramesScheduledCount;
@property unsigned int evictedFramesRecoveredCount;
@property unsigned int fecProcessingTime;
@property (readonly) VCReportingHistogram *lossPattern;
@property (readonly) VCReportingHistogram2D *lossHistogram;
@property (readonly) VCReportingHistogram2D *lossFecHistogram;
@property (nonatomic) struct tagVCReportingClientExperimentSettings { BOOL networkConditionMonitoringClientExperimentEnabled; BOOL motionBasedDuplicationClientExperimentEnabled; } reportingClientExperimentSettings;
@property (copy) NSNumber *IPVersion;
@property BOOL isLocalCelltechDirty;
@property (copy) NSNumber *localCelltech;
@property (copy) NSNumber *remoteCelltech;
@property (copy) NSNumber *isLocalExpensive;
@property (copy) NSNumber *isRemoteExpensive;
@property (copy) NSNumber *maxNegotiatedUplinkBitrate;
@property (copy) NSNumber *maxNegotiatedDownlinkBitrate;
@property unsigned int localAlertStateSwitchCount;
@property unsigned int remoteAlertStateSwitchCount;
@property unsigned int dynamicDupeLinkCount;
@property double rttMeanTotalDelta;
@property unsigned char plrTierTotalDelta;
@property unsigned int ecnEnabledCount;
@property unsigned long long lastReportedTotalCellDupTxDataBytes;
@property unsigned long long lastReportedTotalCellDupRxDataBytes;
@property unsigned long long lastReportedTotalUsedCellBudgetTxDataBytes;
@property unsigned long long lastReportedTotalUsedCellBudgetRxDataBytes;
@property unsigned long long lastReportedTotalCellTxDataBytes;
@property unsigned long long lastReportedTotalCellRxDataBytes;
@property unsigned long long lastReportedTotalWifiTxDataBytes;
@property unsigned long long lastReportedTotalWifiRxDataBytes;
@property NSNumber *wrmLinkTypeSuggestion;
@property NSNumber *wrmLinkTypeChangeReasonCode;
@property NSNumber *wrmLinkTypeWifiRSSI;
@property NSNumber *wrmLinkTypeWifiRSSIThreshold;
@property NSNumber *wrmLinkTypeWifiSNR;
@property NSNumber *wrmLinkTypeWifiCCA;
@property NSNumber *wrmLinkTypeWifiPacketLoss;
@property NSNumber *wrmLinkTypeCellSignalStrength;
@property NSNumber *wrmLinkTypeCellSignalBar;
@property NSNumber *wrmLinkTypeCellServingCellType;
@property NSNumber *wrmLinkTypeWifiRemoteRSSIThreshold;
@property double primaryConnHealthAllowedDelay;
@property unsigned char coreMotionActivityValue;
@property unsigned char coreMotionActivityConfidence;
@property unsigned int avSyncOffsetSamplesCount;
@property int minAVSyncOffset;
@property int maxAVSyncOffset;
@property int avSyncOffsetSum;
@property BOOL isCenterStageEnabled;
@property BOOL isPortraitBlurEnabled;
@property unsigned int averageJitterQueueSize;
@property unsigned int averageJitterQueueSizeChanges;
@property unsigned int maxJitterQueueSize;
@property double timeWeightedJitterQueueSize;
@property BOOL is5GHz;
@property unsigned int highRTTReportCounter;
@property unsigned int highPLRReportCounter;
@property unsigned int highRTTPLRReportCounter;
@property unsigned int negotiatedSwitches;
@property unsigned int remoteSwitches;
@property BOOL remoteFaceTimeSwitchesAvailable;
@property (readonly) VCReportingHistogram *audioCodecPayload;
@property (readonly) VCReportingHistogram *audioFrameBundling;
@property (readonly) VCReportingHistogram *audioMediaBitrate;
@property unsigned char linkPreferSuggestion;
@property unsigned char linkConfidenceScore;
@property unsigned char linkPreferDecision;
@property unsigned char linkIPPreference;
@property BOOL isRTXTelemetryAvailable;
@property unsigned long long nacksSent;
@property unsigned long long nacksFulfilled;
@property unsigned long long nacksFulfilledOnTime;
@property unsigned int nacksAvgResponseTime;
@property unsigned int nacksAvgLateTime;
@property unsigned int nacksMediaBitRate;
@property unsigned int nacksRetransmittedMediaBitRate;
@property unsigned long long lateFramesScheduledWithRTXCount;
@property unsigned long long assembledFramesWithRTXPacketsCount;
@property unsigned long long failedToAssembleFramesWithRTXPacketsCount;
@property unsigned long long uniqueNacksSent;
@property unsigned int nackGeneratorConfigVersion;
@property BOOL serverPacketRetransmissionsForVideoEnabled;
@property BOOL serverPacketRetransmissionsExtraDelayBudgetEnabled;
@property BOOL rtcpPSFBForLossFeedbackEnabled;
@property BOOL rtcpPSFBForLtrAckEnabled;
@property (copy) NSString *relayProtocolStack;
@property (copy) NSString *channelProtocolStack;
@property double currentStallTime;
@property double lastReceivedVideoStallTime;
@property BOOL isQUICPod;
@property unsigned short connectionProtocolType;
@property (copy) NSDictionary *qrExperiments;

+ (id)newSegmentNameWithComponents:(id)a0 remoteInterface:(id)a1 connectionType:(id)a2 duplicationIndicator:(id)a3;

- (void)dealloc;
- (id)initWithDictionary:(id)a0;
- (void)merge:(id)a0;
- (unsigned int)RTPeriod;
- (id)segmentQRReport;
- (void)addProtocolStackDescriptionTelemetry:(id)a0;
- (void)addQRServerTelemetryToDictionary:(id)a0;
- (void)addSegmentWRMReportStats:(id)a0;
- (void)assertCleanCellTech;
- (id)celltechTelemetry;
- (void)changeDuplicationWithType:(unsigned short)a0 payload:(id)a1;
- (id)duplicationCategoryForSegmentName:(id)a0;
- (id)initWithSegmentName:(id)a0 previousSegmentName:(id)a1 mode:(unsigned short)a2 deviceRole:(unsigned short)a3 transportType:(unsigned short)a4 relayServer:(id)a5 relayType:(unsigned short)a6 accessToken:(id)a7 duplicationType:(unsigned char)a8 switchConfig:(id)a9 linkProbingConfig:(struct { unsigned int x0; unsigned int x1; double x2; double x3; })a10 nwActivity:(id)a11 conversationTimeBase:(id)a12 isInitiator:(BOOL)a13 delegate:(id)a14;
- (void)processSmartBrakeEvent:(id)a0;
- (id)reportingClientExperimentSettingsDictionary;
- (id)segmentReport;
- (void)setNWActivityReportingEnabled:(BOOL)a0;
- (void)updateMaxVideoStallInterval:(double)a0 withDelta:(double)a1;

@end