luxlabs header browser preview


@class AVCStatisticsCollector, NSString, VCRateControlMediaController, VCRateSharingGroup, AVCRateControlFeedbackController, AVCBasebandCongestionDetector, VCRateControlServerBag, NSObject, VCNWConnectionCongestionDetector;
@protocol OS_nw_activity, VCRateControlAlgorithm, OS_dispatch_queue, AVCRateControllerDelegate;

@interface AVCRateController : NSObject <VCRateSharingClient> {
    struct OpaqueFigCFWeakReference { } *_rateControllerDelegateWeak;
    id<AVCRateControllerDelegate> _rateControllerDelegate;
    struct tagVCRateControlAlgorithmConfig { unsigned int serverBagProfileNumber; unsigned int *tierBitrates; int initialTierIndex; int maxTierIndex; int minTierIndex; int softMaxTierIndex[2]; int lowestNonEmergencyTierIndex; int lowestNonEmergencyTierIndexWiFi; int lowestEffectiveBWETierIndex; int lowestTierIndexReactToNoServerActivity; int rampUpTierNumber; int rampDownTierNumber; int rampUpAdditionalTierAtInitial; int rampDownAdditionalTierAtInitial; int rampDownBurstyLossThreshold; int lowestTierForBurstyLossRampDown; int lowestTierToDisableRateLimited; double rampDownNOWRDThreshold; double rampDownNOWRDAccThreshold; double rampDownAggressiveNOWRDThreshold; double rampDownAggressiveNOWRDAccThreshold; double rampDownConstantOWRDDuration; double rampDownOvershootDuration; double rampDownOvershootNextTierRatio; double rampUpFrozenDuration; double rampUpSettleDuration; double rampUpOWRDThreshold; double rampUpNOWRDThreshold; double rampUpNOWRDAccThreshold; double rampUpOverBandwidthCalmDuration; double rampUpBlockedTimeout; int rampUpOverBandwidthTierNumber; int rampDownLossEventThreshold; int rampDownLossEventBadTrendThreshold; double rampDownLossEventThresholdRatio; double rampDownLossEventWindowDuration; double rampDownLossEventNOWRDThreshold; double rampUpFrozenPLRThreshold; double rampUpRateLimitedRatio; double unstableRateLimitedDuration; double congestionWaitDuration; double owrdWindowDuration; double owrdShortWindowDuration; double minimumNOWRDTimeDifference; double owrdInitialRampUpReadyDuration; unsigned int owrdHistorySize; unsigned int owrdMininumHistorySize; unsigned int fastRampDownBitrateRange; unsigned int fastRampUpBitrateRange; unsigned int consecutiveRampDownThresholdForCongestion; BOOL receivedBandwidthEstimationEnabled; BOOL basebandAdaptationEnabled; BOOL rateLimitedEnabled; BOOL randomRampUpFrozenDurationEnabled; BOOL oscillationAvoidanceEnabled; BOOL fastRampUpEnabled; BOOL blockRampUpInSaturatedNetworkEnabled; BOOL blockRampUpInBluetoothCoexEnabled; BOOL wifiEmergencyTiersEnabled; BOOL burstyTrafficEnabled; BOOL lowLatencyWANEnabled; BOOL rampDownToActualSendBitrate; int rampDownToActualSendBitrateMinTier; BOOL rampDownSuppressionEnabled; double rampDownSuppressionMinRTT; double rampDownSuppressionFactor; int fastRampUpHighestTier; double fastRampUpRTTRatio; int fastRampUpTierGap; double fastRampUpNetworkStableDuration; double networkSaturatedRTTToMinRTTRatio; double networkSaturatedOWRDToMinRTTRatio; int networkSaturatedPersistFeedbackNumber; double networkSaturatedRTTDecreasingThreshold; int oscillationAvoidanceTierChangeThreshold; int oscillationAvoidanceTiersHitThreshold; double oscillationAvoidanceDurationRatio; double oscillationAvoidanceDurationRatioAggressive; int stabilizationScheme; double rampDownNBDCDThreshold; double rampDownAggressiveNBDCDThreshold; double rampDownNormalizedQueuingDelayThreshold; double rampDownMediumQueuingDelayThreshold; double rampDownHighQueuingDelayThreshold; double rampDownEmergencyTierCoolDownTime; double rampDownWiFiEmergencyTierCoolDownTime; double rampUpNBDCDThreshold; double rampUpQueuingDelayThreshold; double rampUpNBDCDCoolDownTime; double rampUpAudioFractionCoolDownTime; double basebandRATSwitchCoolDownTime; double basebandAdaptationCrossTrafficRatio; double rampUpNetworkUnstableCoolDownTime; double autoResumeDurationAfterPaused; double pauseOffChannelHighRatio; double unpauseOffChannelLowRatio; BOOL oscillationDetectionEnabled; double oscillationCoolDownTime; int oscillationDeviationTierNumber; int oscillationDeviationCountThreshold; BOOL preventBasebandRampDownCloseToKeyFrame; int basebandRampDownSlowDownFactor; double networkUnstableRTTThreshold; double networkUnstablePLRThreshold; double packetLossRateThresholdInitial; double packetLossRateThresholdMin; double packetLossRateThresholdMax; double packetLossRateThresholdTarget; unsigned int rampUpUplinkBLERThreshold; unsigned int rampDownUplinkBLERThreshold; double rampUpUplinkBLERDuration; double rampDownUplinkBLERDuration; double rampDownECNCERatioLow; double rampDownECNCERatioMedium; double rampDownECNCERatioHigh; unsigned int rampDownECNBitrateHigh; unsigned int rampDownECNBitrateMedium; unsigned int rampDownECNBitrateLow; double ceRatioDurationToRTTFactor; double ceRatioDurationMin; double ceRatioDurationMax; int smartBrakeStrategy; } _algorithmConfigCache;
    BOOL _didCacheAlgorithmConfig;
    unsigned int _actualBitrate;
    unsigned int _wifiTxMediaBitrate;
    unsigned int _wifiNonAVCTxMediaBitrate;
    unsigned int _initialBitrate;
    double _initialRampUpStartTime;
    BOOL _initialRampUpDeltaReported;
    unsigned int _rateChangeCounter;
    unsigned int _roundTripTimeMilliseconds;
    double _packetLossPercentage;
    double _packetLossPercentageVideo;
    double _packetLossPercentageAudio;
    double _sumPLR;
    double _sumPLRVideo;
    unsigned int _sumOverUtilizedBandwidth;
    unsigned int _sumUnderUtilizedBandwidth;
    unsigned int _sumOverShootSendBitrate;
    unsigned int _sumUnderShootSendBitrate;
    unsigned int _sumWorstRecentRTTInMillisecond;
    unsigned int _sumWorstRecentBurstLoss;
    unsigned int _countPeriodicTaskUpdate;
    unsigned int _totalPacketsReceived;
    unsigned int _totalPacketsSent;
    unsigned int _totalBytesSent;
    unsigned int _totalBytesReceived;
    unsigned int _burstPacketLoss;
    unsigned int _owrd;
    BOOL _isNetworkCongested;
    void *_logDump;
    void *_logFeedbackDump;
    void *_logBasebandDump;
    void *_logNWDump;
    void *_logBWEDump;
    BOOL _isRateControlDumpFileEnabled;
    BOOL _isBWEDumpFileEnabled;
    NSString *_dumpID;
    BOOL _isPeriodicLoggingEnabled;
    BOOL _isBasebandEnabled;
    BOOL _isForSimulation;
    BOOL _isUplink;
    BOOL _useExternalThread;
    BOOL _didConfigured;
    double _lastDefaultsReadTime;
    int _forcedTargetBitrate;
    int _forcedMaxBitrate;
    int _forcedTargetBitrateFromTestMonitor;
    int _forcedMaxBitrateFromTestMonitor;
    struct OpaqueFigCFWeakReference { } *_reportingAgentWeak;
    struct opaqueRTCReporting { } *_reportingAgentStrong;
    int _reportingModuleID;
    unsigned int _lastReportFlushedVideoPacketCount;
    unsigned int _lastReportFlushedAudioPacketCount;
    double _lastTimeTargetBitrateOvershootRecorded;
    double _lastTimeUnexpectedLowTargetBitrateRecorded;
    double _lastTimeUnexpectedRampUpFrozenRecorded;
    unsigned int _lastRecordedTargetBitrate;
    unsigned int _lastReportedBandwidthEstimation;
    unsigned int _totalSuddenBandwidthDropCount;
    unsigned int _totalMBLRampDownCount;
    double _lastTimeSustainedHighUplinkPacketLossReported;
    double _lastTimeSustainedHighDownlinkPacketLossReported;
    double _lastTimeServerStatsActivityRecorded;
    BOOL _isNoServerStatsIdleActivityReported;
    unsigned int _remotePacketReceivedAudio;
    unsigned int _remotePacketReceivedVideo;
    unsigned int _remoteECT1ReceiveCount;
    unsigned int _remoteCEReceiveCount;
    VCRateControlServerBag *_serverBag;
    int _btNotificationHandlerIndex;
    NSObject<OS_nw_activity> *_parentNWActivity;
    NSObject<OS_nw_activity> *_noServerStatsUplinkNwActivity;
    NSObject<OS_nw_activity> *_noServerStatsDownlinkNwActivity;
    BOOL _useNWConnectionNotification;
    BOOL _useBTNotificationMonitor;
    BOOL _isRegisteredForRateSharing;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _registrationLock;
    struct _opaque_pthread_mutex_t { long long __sig; char __opaque[56]; } _mutex;
    VCRateSharingGroup *_sharingGroup;
    BOOL _isECNEnabled;
    BOOL _isCongestedForReport;
    BOOL _isNetworkForcingECN;
    unsigned int _lastReportedRateControlAlgorithmStatsIndex;
    NSObject<OS_dispatch_queue> *_reportingQueue;
    struct OpaqueFigCFWeakReferenceHolder { } *_weakSelf;
    id<VCRateControlAlgorithm> _rateControlAlgorithm;
}

@property (retain, nonatomic) VCRateControlMediaController *mediaController;
@property (readonly, nonatomic) unsigned int targetBitrate;
@property (readonly, nonatomic) struct AVCRateControlConfig { unsigned int mode; unsigned int localRadioAccessTechnology; unsigned int remoteRadioAccessTechnology; unsigned int maxBitrate; unsigned int minBitrate; unsigned int initialBitrate; BOOL isTrafficBursty; struct tagVCRateControlAlgorithmConfig *algorithmConfig; unsigned int featureFlags; } configuration;
@property (nonatomic) unsigned int targetBitrateCap;
@property (nonatomic) unsigned int estimatedBandwidthCap;
@property (nonatomic) unsigned int expectedBitrate;
@property (readonly) id reportingAgent;
@property (readonly, nonatomic) BOOL isStarted;
@property (readonly, nonatomic) unsigned int nwNotificationProcessed;
@property (readonly, nonatomic) unsigned int maxTargetBitrate;
@property (readonly, nonatomic) unsigned int minTargetBitrate;
@property (readonly, nonatomic) struct tagVCRateControlAlgorithmConfig { unsigned int x0; unsigned int *x1; int x2; int x3; int x4; int x5[2]; int x6; int x7; int x8; int x9; int x10; int x11; int x12; int x13; int x14; int x15; int x16; double x17; double x18; double x19; double x20; double x21; double x22; double x23; double x24; double x25; double x26; double x27; double x28; double x29; double x30; int x31; int x32; int x33; double x34; double x35; double x36; double x37; double x38; double x39; double x40; double x41; double x42; double x43; double x44; unsigned int x45; unsigned int x46; unsigned int x47; unsigned int x48; unsigned int x49; BOOL x50; BOOL x51; BOOL x52; BOOL x53; BOOL x54; BOOL x55; BOOL x56; BOOL x57; BOOL x58; BOOL x59; BOOL x60; BOOL x61; int x62; BOOL x63; double x64; double x65; int x66; double x67; int x68; double x69; double x70; double x71; int x72; double x73; int x74; int x75; double x76; double x77; int x78; double x79; double x80; double x81; double x82; double x83; double x84; double x85; double x86; double x87; double x88; double x89; double x90; double x91; double x92; double x93; double x94; double x95; BOOL x96; double x97; int x98; int x99; BOOL x100; int x101; double x102; double x103; double x104; double x105; double x106; double x107; unsigned int x108; unsigned int x109; double x110; double x111; double x112; double x113; double x114; unsigned int x115; unsigned int x116; unsigned int x117; double x118; double x119; double x120; int x121; } algorithmConfig;
@property (retain, nonatomic) AVCStatisticsCollector *statisticsCollector;
@property (retain, nonatomic) AVCRateControlFeedbackController *feedbackController;
@property (retain, nonatomic) AVCBasebandCongestionDetector *basebandCongestionDetector;
@property (retain, nonatomic) VCNWConnectionCongestionDetector *nwConnectionCongestionDetector;
@property (nonatomic, getter=isPaused) BOOL paused;
@property (readonly, nonatomic) struct tagAVCRateControlExperimentConfig { int x0; int x1; unsigned int x2; } rateControlExperimentConfig;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (void)configure:(struct AVCRateControlConfig { unsigned int x0; unsigned int x1; unsigned int x2; unsigned int x3; unsigned int x4; unsigned int x5; BOOL x6; struct tagVCRateControlAlgorithmConfig *x7; unsigned int x8; })a0;
- (void)dealloc;
- (BOOL)start;
- (BOOL)stop;
- (void)resetStatsForPeriodicTaskReport;
- (void)accumulateStatsForPeriodicTaskUpdate;
- (void)cleanupNwActivity;
- (void)completeAndReleaseNwActivity:(id)a0 withReason:(int)a1;
- (void)configureWithOperatingMode:(int)a0 isLocalCellular:(BOOL)a1 localCellTech:(int)a2 isRemoteCellular:(BOOL)a3 remoteCellTech:(int)a4 bitrateCapKbps:(unsigned int)a5 isTrafficBursty:(BOOL)a6 featureFlags:(unsigned int)a7;
- (void)createBasebandLogDumpFile;
- (void)createNWConnectionLogDumpFile;
- (void)deregisterForRateSharing;
- (void)deregisterPeriodicTask;
- (void)getRealTimeStats:(struct __CFDictionary { } *)a0;
- (void)getRealTimeStatsForLowLatency:(struct __CFDictionary { } *)a0;
- (void)getRealTimeStatsForServerBasedRxOnly:(struct __CFDictionary { } *)a0;
- (void)getRealTimeStatsForServerBasedTxOnly:(struct __CFDictionary { } *)a0;
- (id)initWithDelegate:(id)a0 dumpID:(id)a1 isUplink:(BOOL)a2 reportingAgent:(id)a3;
- (id)initWithDelegate:(id)a0 params:(const struct tagVCRateControlParams { id x0; BOOL x1; BOOL x2; id x3; id x4; BOOL x5; id x6; BOOL x7; id x8; } *)a1;
- (unsigned int)loadDefaultVCRCFeatureFlags:(unsigned int)a0;
- (void)periodicTask:(void *)a0;
- (void)printRateControllerHealthPrint;
- (unsigned int)radioAccessTechnologyFromAVConferenceCellTech:(int)a0 isCellular:(BOOL)a1;
- (unsigned int)rateControlModeFromAVConferenceOperatingMode:(int)a0;
- (void)registerForRateSharing:(unsigned int)a0;
- (void)registerPeriodicTask;
- (void)releaseAllLogDumpFiles;
- (void)releaseLogDumpFile:(void **)a0;
- (void)setBtNotificationMonitor;
- (void)setShareProfile:(id)a0;

@end