luxlabs header browser preview


@class NSArray, VCPMovieHighlight, AVAssetImageGenerator, VCPColorNormalizationAnalyzer, NSMutableArray;

@interface VCPMovieHighlightAnalyzer : NSObject {
    NSArray *_junkResults;
    NSArray *_qualityResults;
    NSArray *_faceResults;
    NSArray *_petsResults;
    NSArray *_saliencyResults;
    NSArray *_actionResults;
    NSArray *_subtleMotionResults;
    NSArray *_voiceResults;
    NSArray *_featureResults;
    NSArray *_humanActionResults;
    NSArray *_humanPoseResults;
    NSArray *_cameraMotionResults;
    NSArray *_keyFrameResults;
    NSArray *_sceneResults;
    NSArray *_orientationResults;
    NSArray *_mlHighlightScoreResults;
    NSArray *_mlQualityResults;
    NSMutableArray *_expressionSegments;
    NSMutableArray *_internalResults;
    NSMutableArray *_highlightResults;
    NSMutableArray *_internalConstraintResults;
    struct CGSize { double width; double height; } _frameSize;
    float _maxDurationInSeconds;
    float _minDurationInSeconds;
    float _targetDurationInSeconds;
    float _toleranceInSeconds;
    int _targetHighlightIndex;
    struct { struct { long long value; int timescale; unsigned int flags; long long epoch; } start; struct { long long value; int timescale; unsigned int flags; long long epoch; } duration; } _startRange;
    BOOL _isMaxTrim;
    BOOL _requestBestTrim;
    BOOL _requestFullResult;
    float _maxHighlightScore;
    float _minHighlightScore;
    BOOL _isLivePhoto;
    float _photoOffset;
    BOOL _verbose;
    BOOL _hadFlash;
    BOOL _hadZoom;
    BOOL _settlingHadZoom;
    BOOL _isTimelapse;
    struct { struct { long long value; int timescale; unsigned int flags; long long epoch; } start; struct { long long value; int timescale; unsigned int flags; long long epoch; } duration; } _preferredTimeRange;
    AVAssetImageGenerator *_imageGenerator;
    int _numberOfFrames;
    VCPMovieHighlight *_animatedStickerGating;
    float _sumScores[3];
    int _frameCount;
    struct array<float, 6UL> { float __elems_[6]; } _prevMotionParamDiff;
    struct array<float, 6UL> { float __elems_[6]; } _sumMotionParam;
    struct array<float, 6UL> { float __elems_[6]; } _diffFlipCount;
    VCPColorNormalizationAnalyzer *_colorNormalizationAnalyzer;
}

+ (float)getMinimumHighlightInSec;
+ (BOOL)isHeuristicStickerScoreEnabled;

- (id)results;
- (void).cxx_destruct;
- (BOOL)addSegment:(id)a0;
- (id)movieSummary;
- (void)setMaxHighlightDuration:(float)a0;
- (void)SetKeyFramesForSegments:(id)a0;
- (void)computeHighlightScoreOfSegment:(id)a0;
- (id)settlingEffects;
- (float)actionScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)analyzeMotionStability:(struct array<float, 6UL> { float x0[6]; })a0 motionParamDiff:(struct array<float, 6UL> { float x0[6]; })a1;
- (float)analyzeOverallQuality:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 isSettlingEffect:(BOOL)a1 isAnimatedSticker:(BOOL)a2;
- (int)analyzeRankingScores:(float)a0 subtleMotion:(float)a1 humanAction:(float)a2;
- (id)animatedStickerGating;
- (float)cameraMotionScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (BOOL)checkCameraZoom:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)combineMLHighlightScore;
- (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })computeActionFaceTrimFor:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeActionScoreInTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })computeBestPlaybackCrop:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)computeColorNormalization;
- (float)computeExpressionScoreInTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeHighlightScoreOfRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)computeHighlightScoreResults;
- (float)computeHumanActionScoreInTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeHumanPoseScoreInTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeMLHighlightScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeMLQualityScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })computeQualityTrimFor:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 withKeyFrame:(BOOL)a1;
- (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })computeSteadyTranslationTrimFor:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeSubtleMotionScoreInTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })computeTrimWithHighlightScoreFor:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)computeVoiceScoreInTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)evaluateSegment:(id)a0;
- (float)expressionScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (id)findBestHighlightSegment:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 targetTrim:(BOOL)a1;
- (struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })findBestTrim:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (void)generateExpressionSegments:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)generateHighlights;
- (float)highlightScoreForTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 average:(BOOL)a1;
- (id)highlightScoreResults;
- (id)initWithAnalysisType:(unsigned long long)a0 isLivePhoto:(BOOL)a1 photoOffset:(float)a2 hadFlash:(BOOL)a3 hadZoom:(BOOL)a4 settlingHadZoom:(BOOL)a5 isTimelapse:(BOOL)a6 preferredTimeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a7 asset:(id)a8;
- (id)initWithPostProcessOptions:(id)a0;
- (BOOL)isGoodQuality:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)junkScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 lengthScale:(BOOL)a1;
- (void)loadHighlightScoreResults:(id)a0;
- (id)maxTrimMovieHighlight:(id)a0;
- (int)pickHighlightsFrom:(id)a0;
- (id)pickKeyFramesInRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (int)postProcessMLHighlightScore;
- (id)postProcessMovieHighlight:(id)a0;
- (int)prepareRequiredQualityResult:(id)a0 junkDetectionResult:(id)a1 descriptorResult:(id)a2 faceResult:(id)a3 petsResult:(id)a4 saliencyResult:(id)a5 actionResult:(id)a6 subtleMotionResult:(id)a7 voiceResult:(id)a8 keyFrameResult:(id)a9 sceneResults:(id)a10 humanActionResults:(id)a11 humanPoseResults:(id)a12 cameraMotionResults:(id)a13 orientationResults:(id)a14 mlHighlightScoreResults:(id)a15 mlQualityResults:(id)a16 frameSize:(struct CGSize { double x0; double x1; })a17;
- (float)qualityScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)rankingLevel;
- (void)searchFeatureVectorOfSegment:(id)a0;
- (int)selectHighlights;
- (int)selectHighlightsForTimelapse;
- (float)settlingExposureChangeScore:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)settlingMotionScore:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)settlingSharpnessScore:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)settlingSubjectScore:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)stickerScaledScore:(float)a0 highPrecisionThreshold:(float)a1 highRecallThreshold:(float)a2;
- (float)subtleMotionScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (id)targetExtendRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 maxRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a1;
- (id)targetMovieHighlight:(id)a0 mergedRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a1 maxRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a2;
- (id)targetProcessRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 maxRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a1;
- (id)targetTrimRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0 searchRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a1;
- (BOOL)updateCropHeatMap:(float *)a0 withResults:(id)a1 timeRange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a2 resultsKey:(id)a3;
- (float)visualPleasingScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;
- (float)voiceScoreForTimerange:(struct { struct { long long x0; int x1; unsigned int x2; long long x3; } x0; struct { long long x0; int x1; unsigned int x2; long long x3; } x1; })a0;

@end