@class NSMutableDictionary, BWFigCaptureDevice, BWSphereModeSelector, NSDictionary, NSObject, BWFigCaptureStream, BWStillImageTimeMachine, BWStillImageCaptureSettings, BWStillImageCaptureStreamSettings, NSMutableArray, NSString, NSSet, BWFigCaptureSynchronizedStreamsGroup, BWNoiseReductionAndSharpeningParameters, NSArray, NSData, NSNumber, BWNondisruptiveSwitchingFormatSelector; @protocol BWFigVideoCaptureStreamDelegate, BWFigVideoCaptureStreamStillImageCaptureDelegate, OS_tcc_identity, BWFaceDetector, BWObjectDetector, OS_dispatch_queue, OS_dispatch_group; @interface BWFigVideoCaptureStream : NSObject { BWFigCaptureDevice *_parentDevice; BOOL _streamHasBeenSuspended; NSString *_portType; NSDictionary *_cachedVideoOutputConfigurations; NSDictionary *_cachedVideoOutputsEnabled; float _minimumFrameRate; float _maximumFrameRate; float _minimumSupportedFrameRate; BOOL _rawBufferCompandingEnabled; unsigned int _sensorInterfaceRawPixelFormat; NSDictionary *_supportedProperties; NSArray *_supportedFormats; NSArray *_supportedOutputs; int _activeFormatIndex; int _activeNondisruptiveSwitchingFormatIndex; int _activeNondisruptiveSwitchingCommandID; NSDictionary *_moduleInfo; BOOL _usePinholeCameraFocalLengthInIntrinsicMatrixCalculation; BOOL _hasFocus; NSDictionary *_sensorIDDictionary; float _baseZoomFactor; float _baseZoomFactorAfterGDC; int _deviceType; BOOL _isSlave; NSData *_ambientViewingEnvironment; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _cameraAccessLock; BOOL _clientProcessHasAccessToCamera; int _clientPID; NSString *_applicationID; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _sphereLock; BOOL _sphereEnabled; BOOL _motionDataInvalid; BWSphereModeSelector *_sphereModeSelector; int _motionDataDeliveryEnabled; BOOL _isStationary; BOOL _timeMachineEnabled; int _timeMachineCapacity; BWStillImageTimeMachine *_timeMachine; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _stillImageCaptureStateLock; BOOL _grabNextFrame; BWStillImageCaptureSettings *_activeResolvedStillImageCaptureSettings; BWStillImageCaptureStreamSettings *_activeResolvedStillImageCaptureStreamSettings; struct { long long value; int timescale; unsigned int flags; long long epoch; } _largestStillImagePTS; NSMutableArray *_stillFusionBracketFramesMetadata; struct { long long value; int timescale; unsigned int flags; long long epoch; } _stillCaptureReferenceFramePTS; int _skippedFramesCountForAF; int _expectedImagesOrErrorsForCaptureStillImageNow; int _receivedImagesOrErrorsForCaptureStillImageNow; id /* block */ _stillImageBufferTimeMachineHandler; BOOL _stillImageCaptureEnabled; NSObject *_streamNotificationDispatchQueue; NSObject *_stillImageCaptureDelegateDispatchGroup; NSMutableDictionary *_sifrRAWThumbnailsByTimeMachineIndex; struct CGPoint { double x; double y; } _lastDigitalFlashSphereOffsetOpticalCenter; NSSet *_detectedObjectTypes; BOOL _objectDetectionStartupDeferred; NSDictionary *_faceDetectionConfiguration; BOOL _faceDetectionEnabled; BOOL _eyeDetectionRequired; NSDictionary *_lastObjectDetectionConfiguration; NSDictionary *_lastFaceDetectionConfiguration; NSNumber *_lastFaceDetectionEnabled; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _faceAndObjectDetectionLock; BWFigCaptureSynchronizedStreamsGroup *_synchronizedStreamsGroup; int _masterToSlaveFrameRateRatio; BOOL _streamingRequiredWhenConfiguredAsSlave; NSDictionary *_geometricDistortionCoefficients; NSDictionary *_geometricDistortionCoefficientsCalibratedForNarrowerFieldOfView; BOOL _lumaHistogramMetadataEnabled; NSMutableDictionary *_keypointDetectionConfiguration; BOOL _keypointDetectionConfigured; BOOL _keypointDetectionEnabled; BOOL _stillImageKeypointDetectionEnabled; BOOL _highlightRecoverySuspended; BOOL _highlightRecoveryEnabledWhenConfiguredAsMasterOrSingleStream; BOOL _highlightRecoveryEnabledWhenConfiguredAsSlave; BOOL _videoHDRFusionEnabled; BOOL _videoHDRImageStatisticsEnabled; BWNoiseReductionAndSharpeningParameters *_stillImageNoiseAndSharpeningParameters; int _band0StrengthModulation; BOOL _unifiedBracketingEnabled; BOOL _aeStatisticsEnabled; BOOL _rawFocusScoresEnabled; BOOL _focusBlurMapEnabled; BOOL _zeroShutterLagEnabled; BOOL _maxExposureDurationHasBeenSet; BOOL _variableFrameRateVideoEnabled; BOOL _cinematicFramingEnabled; struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } _centerStageRectOfInterest; int _centerStageFramingMode; BOOL _backgroundBlurEnabled; BOOL _studioLightingEnabled; BOOL _reactionEffectsEnabled; BOOL _gesturesEnabled; NSDictionary *_zoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned; NSDictionary *_zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned; BWNondisruptiveSwitchingFormatSelector *_nondisruptiveSwitchingFormatSelector; BOOL _nonDisruptiveSwitchOverPreventingStillImageCaptureEnabled; int _mainFormatSIFRBinningFactor; struct CGPoint { double x; double y; } _previewShift; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _averageFrameRateCalculationLock; struct { long long value; int timescale; unsigned int flags; long long epoch; } _firstValidPTS; struct { long long value; int timescale; unsigned int flags; long long epoch; } _lastValidPTS; unsigned int _numberOfBuffersEmitted; BOOL _deskCamActive; } @property (readonly) BWFigCaptureStream *stream; @property (nonatomic) id delegate; @property (readonly) NSString *portType; @property (readonly) int deviceType; @property (readonly) NSArray *supportedFormats; @property (readonly) NSArray *supportedOutputs; @property (readonly) NSDictionary *moduleInfo; @property (readonly) BOOL usePinholeCameraFocalLengthInIntrinsicMatrixCalculation; @property (readonly) BOOL hasFocus; @property (readonly) NSString *sensorIDString; @property (readonly) NSDictionary *sensorIDDictionary; @property (readonly) NSDictionary *geometricDistortionCoefficients; @property (readonly) NSDictionary *geometricDistortionCoefficientsCalibratedForNarrowerFieldOfView; @property (readonly) BOOL synchronizedStreamsEnabled; @property (readonly) NSDictionary *sensorColorCalibrationData; @property (readonly) NSData *flashCalibrationData; @property (readonly) struct CGPoint { double x; double y; } opticalCenterOffset; @property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetInPhysicalSensorDimensions; @property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetCalibratedForNarrowerFieldOfView; @property (readonly) struct CGPoint { double x; double y; } opticalCenterOffsetCalibratedForNarrowerFieldOfViewInPhysicalSensorDimensions; @property (readonly) BOOL hasOpticalCenterOffsetCalibratedForNarrowerFieldOfView; @property (readonly) float pixelSize; @property (readonly) float pixelsPerMicron; @property (readonly) float focalLength; @property (readonly) float lensFNumber; @property (readonly) float gravityFactor; @property (readonly) NSData *cameraViewMatrix; @property (readonly) NSData *cameraViewMatrixCalibratedForNarrowerFieldOfView; @property (readonly) NSNumber *calibrationValidRadiusForNarrowerFieldOfView; @property (readonly) NSNumber *calibrationValidRadiusForFullFieldOfView; @property (readonly) NSData *cameraPoseMatrix; @property (readonly) NSString *nonLocalizedName; @property (readonly, nonatomic) int activeQuadraBinningFactor; @property (nonatomic) float aeMaxGain; @property (nonatomic) float momentCaptureVideoRecordingAEMaxGain; @property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } maxExposureDurationClientOverride; @property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } maxExposureDurationFrameworkOverride; @property (readonly, nonatomic) struct { long long x0; int x1; unsigned int x2; long long x3; } maxExposureDuration; @property (readonly, nonatomic) float maxEIT; @property (nonatomic) float minimumFrameRate; @property (nonatomic) float maximumFrameRate; @property (nonatomic) float maximumSupportedFrameRate; @property (nonatomic) float minimumSupportedFrameRate; @property (readonly, nonatomic) BOOL rawBufferCompandingEnabled; @property (readonly, nonatomic) unsigned int sensorInterfaceRawPixelFormat; @property (readonly) BOOL hasSphere; @property (nonatomic) BOOL enablesSphereWhenAvailable; @property (readonly) BOOL sphereEnabled; @property (readonly) BOOL sphereVideoSupported; @property (nonatomic) BOOL sphereVideoEnabled; @property (nonatomic) BOOL avoidsSphereRecentering; @property (nonatomic) BOOL depthDataDeliveryEnabled; @property (nonatomic) int sphereThermalLevel; @property (nonatomic) BOOL isStationary; @property (readonly, nonatomic) struct __CFString { } *currentSphereMode; @property (readonly, nonatomic) struct __CFString { } *currentNonLowPowerSphereMode; @property (nonatomic) BOOL motionDataDeliveryEnabled; @property (readonly) BOOL motionDataInvalid; @property (nonatomic) BOOL faceDetectionEnabled; @property (nonatomic) BOOL eyeDetectionRequired; @property (copy) NSDictionary *faceDetectionConfiguration; @property (copy, nonatomic) NSSet *detectedObjectTypes; @property (nonatomic) BOOL objectDetectionStartupDeferred; @property (readonly, nonatomic) BOOL suspendingSupported; @property (readonly, nonatomic) BOOL suspended; @property (readonly, nonatomic) BOOL started; @property (nonatomic) BOOL stillImageCaptureEnabled; @property (nonatomic) id stillImageCaptureDelegate; @property (nonatomic) BOOL usesStillFusionReferenceFramePTSForDidCaptureCallback; @property (readonly) int timeMachineCapacity; @property (nonatomic) BOOL timeMachineEnabled; @property (copy, nonatomic) id /* block */ stillImageBufferTimeMachineHandler; @property (readonly, nonatomic) int activeStillImageCaptureType; @property (readonly, nonatomic) float activeStillImageScaleFactor; @property (readonly, nonatomic) BOOL providesPreBracketedEV0; @property (readonly, nonatomic) int lastStillImageCaptureType; @property (readonly, nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } lastStillImagePTS; @property (readonly, nonatomic) struct { unsigned int val[8]; } clientAuditToken; @property (readonly, retain, nonatomic) NSObject *tccIdentity; @property (readonly, nonatomic) BOOL clientProcessHasAccessToCamera; @property (readonly, nonatomic, getter=isSynchronizationMaster) BOOL synchronizationMaster; @property (nonatomic) int masterToSlaveFrameRateRatio; @property (nonatomic) BOOL streamingRequiredWhenConfiguredAsSlave; @property (nonatomic) BOOL firmwareTimeMachineEnabledWhenConfiguredAsSlave; @property (nonatomic) BOOL keypointDetectionEnabled; @property (nonatomic) BOOL stillImageKeypointDetectionEnabled; @property (nonatomic) int multiBandNoiseReductionMode; @property (nonatomic) int mainToSIFRFrameRateRatio; @property (nonatomic) BOOL highlightRecoverySuspended; @property (readonly, nonatomic) BOOL highlightRecoveryEnabled; @property (nonatomic) BOOL highlightRecoveryEnabledWhenConfiguredAsMasterOrSingleStream; @property (nonatomic) BOOL highlightRecoveryEnabledWhenConfiguredAsSlave; @property (nonatomic) BOOL unifiedBracketingEnabled; @property (nonatomic) BOOL aeStatisticsEnabled; @property (nonatomic) BOOL rawFocusScoresEnabled; @property (nonatomic) BOOL focusBlurMapEnabled; @property (nonatomic) BOOL digitalFlashEnabled; @property (nonatomic) BOOL zeroShutterLagEnabled; @property (nonatomic) BOOL overCaptureEnabled; @property (retain, nonatomic) id faceDetector; @property (retain, nonatomic) id objectDetector; @property (nonatomic) BOOL timeLapseEnabled; @property (nonatomic) BOOL lowLightVideoEnabled; @property (nonatomic) BOOL cinematicVideoEnabled; @property (nonatomic) BOOL variableFrameRateVideoEnabled; @property (readonly, nonatomic) int autoFocusPositionSensorMode; @property float baseZoomFactor; @property float baseZoomFactorAfterGDC; @property (nonatomic) BOOL videoHDRImageStatisticsEnabled; @property (nonatomic) BOOL videoHDRFusionEnabled; @property (nonatomic) BOOL pixelFormatIsTenBit; @property (nonatomic) BOOL colorSpaceIsAppleLog; @property (nonatomic) struct { int width; int height; } videoCaptureDimensions; @property (nonatomic) struct { int width; int height; } sensorDimensions; @property (nonatomic) struct { int width; int height; } physicalSensorDimensions; @property (nonatomic) BOOL cinematicFramingEnabled; @property (nonatomic) struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } centerStageRectOfInterest; @property (nonatomic) int centerStageFramingMode; @property (nonatomic) BOOL backgroundBlurEnabled; @property (nonatomic) BOOL studioLightingEnabled; @property (nonatomic) BOOL reactionEffectsEnabled; @property (nonatomic) BOOL gesturesEnabled; @property (nonatomic, getter=isDeskCamActive) BOOL deskCamActive; @property (readonly, nonatomic) float averageFrameRate; @property (nonatomic) BOOL continuityCameraIsWired; @property (nonatomic) int continuityCameraClientDeviceClass; @property (readonly, nonatomic) NSString *uniqueID; @property (readonly, nonatomic, getter=isCMIOZoomFactorSupported) BOOL cmioZoomFactorSupported; @property (nonatomic) float cmioZoomFactor; @property (nonatomic) int videoStabilizationStrength; @property (readonly, nonatomic) NSDictionary *zoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned; @property (readonly, nonatomic) NSDictionary *zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned; @property (readonly, nonatomic) NSArray *nondisruptiveSwitchingZoomFactors; @property (nonatomic) struct CGPoint { double x0; double x1; } previewShift; @property (nonatomic) float streamingFrameRateForZoomPIPOverlay; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (void)initialize; - (void)performReactionEffect:(id)a0; - (int)setSuspended:(BOOL)a0; - (void)captureStreamDidStop; - (int)setActiveNondisruptiveSwitchingFormatIndex:(int)a0; - (void)dealloc; - (void)setReactionsInProgressChangedHandler:(id /* block */)a0; - (int)sourceNodeWillEmitDepthSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (int)start; - (int)sourceNodeWillEmitVideoSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0 drivesCameraControls:(BOOL)a1 deliversStills:(BOOL)a2; - (void)sourceNodeWillEmitDetectedFacesSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (struct { long long x0; int x1; unsigned int x2; long long x3; })updateMaxExposureDuration; - (void)sourceNodeWillStopStreaming; - (void)didBecomeSlaveStream; - (void)sourceNodeWillEmitStillImageQuadraBufferProcessingError:(int)a0; - (void)sourceNodeFailedToStartStreaming; - (void)sourceNodeWillStartStreaming; - (void)serviceNondisruptiveSwitchingFormatForZoomFactor:(float)a0 frameStatistics:(id)a1 stillImageDigitalFlashMode:(int)a2 isStationary:(BOOL)a3 binnedSIFROnSlaveAllowed:(BOOL)a4; - (void)didChangeBackgroundBlurAperture:(float)a0; - (void)sourceNodeWillDiscardVideoSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (int)stop; - (void)didChangePortraitEffectStudioLightQuality:(long long)a0; - (void)prepareForStillImageCaptureFromFirmwareWithStillImageSettings:(id)a0; - (void)sourceNodeDidStartStreaming; - (void)captureStillImageFromTimeMachineWithStillImageSettings:(id)a0; - (void)setRuntimeUpdates:(id)a0; - (struct { long long x0; int x1; unsigned int x2; long long x3; })updateMaxExposureDurationClientOverride:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (int)setActiveFormatIndex:(int)a0; - (int)sourceNodeWillEmitStillImageSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (void)setTemporalNoiseReductionConfigurationBand0Enabled:(BOOL)a0 rawEnabled:(BOOL)a1 modulation:(int)a2; - (void)sourceNodeDidDropFrameWithPTS:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (void)triggerVisionDataBurst; - (void)willBecomeMasterStream; - (id)initWithCaptureStream:(id)a0 parentDevice:(id)a1 attributes:(id)a2 sensorIDDictionary:(id)a3 synchronizedStreamsGroup:(id)a4 applicationID:(id)a5 clientAuditToken:(struct { unsigned int x0[8]; })a6 tccIdentity:(id)a7 error:(int *)a8; - (int)activeNondisruptiveSwitchingFormatIndex; - (void)setVisionDataKeypointDetectionThreshold:(float)a0; - (void)didChangeStudioLightingIntensity:(float)a0; - (void)willCaptureStillImageFromFirmware; - (void)setVisionDataSuspended:(BOOL)a0; - (int)sourceNodeWillEmitPointCloudSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (int)synchronizedStreamsGroupDidUpdateActiveNondisruptiveSwitchingFormatIndex:(int)a0 activeNondisruptiveSwitchingCommandID:(int)a1; - (void)sourceNodeDidStopStreaming; - (void)didBecomeMasterStream; - (BOOL)sourceNodeShouldDiscardStillImageSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0 sensorRawOutput:(BOOL)a1; - (void)captureStreamDidStart; - (void)failedToCaptureStillImageFromFirmwareWithError:(int)a0; - (void)didChangeGesturesEnabled:(BOOL)a0; - (int)activeFormatIndex; - (int)activeNondisruptiveSwitchingCommandID; - (void)setZoomFactorToNondisruptiveSwitchingFormatIndexSIFRBinned:(id)a0 zoomFactorToNondisruptiveSwitchingFormatIndexSIFRNonBinned:(id)a1 mainFormatSIFRBinningFactor:(int)a2; - (id)noiseReductionAndSharpeningConfigurationForType:(int)a0 gain:(float)a1; - (void)willBecomeSlaveStream; - (void)updateAETables; @end