luxlabs header browser preview


@class NSUUID, NSString, NSURL, AVSampleBufferRenderSynchronizer, CALayer, APRKStreamRecorder, AVSampleBufferAudioRenderer, NSData, NSObject, APRKMediaPlayer, NSDictionary;
@protocol AirPlayReceiverUIDelegate, APRKStreamRendererSampleBufferDelegate, OS_dispatch_source, OS_dispatch_queue, APRKStreamRendererDelegate;

@interface APRKStreamRenderer : NSObject <APRKMediaPlayerMessagingDelegate> {
    struct OpaqueFigCFWeakReferenceHolder { } *_backingUIControllerWeakRef;
    BOOL _isStopping;
    BOOL _isWiredLink;
    BOOL _isP2PWiFiSession;
    BOOL _canRecord;
    BOOL _useCALayerForMirroring;
    BOOL _deferLayerRendering;
    BOOL _shouldRecordFrames;
    BOOL _isAudioActive;
    BOOL _mirroringNeedsKeyFrame;
    BOOL _isMirroringVideoStreamPaused;
    unsigned int _screenSessionCount;
    unsigned int _videoSessionCount;
    unsigned int _audioSessionCount;
    unsigned int _currentVideoSessionID;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _startTime;
    AVSampleBufferRenderSynchronizer *_synchronizer;
    AVSampleBufferAudioRenderer *_audioRenderer;
    CALayer *_mirroringLayer;
    CALayer *_debugLayer;
    APRKStreamRecorder *_recorder;
    APRKMediaPlayer *_player;
    struct OpaqueFigVideoQueue { } *_figVideoQueue;
    NSObject<OS_dispatch_queue> *_rendererVideoBufferQueue;
    NSObject<OS_dispatch_queue> *_rendererAudioBufferQueue;
    NSObject<OS_dispatch_queue> *_rendererStateUpdateQueue;
    NSObject<OS_dispatch_queue> *_delegateQueue;
    struct CGSize { double width; double height; } _presentationVideoSize;
    struct { int width; int height; } _lastVideoSampleBufferSize;
    struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } _sourceRect;
    struct opaqueCMFormatDescription { } *_formatDesc;
    struct { long long value; int timescale; unsigned int flags; long long epoch; } _lastPTS;
    unsigned int _transform;
    struct OpaqueAPSNetworkAddress { } *_sessionReceiverAddr;
    struct OpaqueAPSNetworkClock { } *_receiverNetworkClock;
    NSObject<OS_dispatch_source> *_recorderKeyFrameTimer;
    BOOL _recorderNeedsKeyFrame;
    NSURL *_currentRecordingURL;
    unsigned long long _currentVideoPlaybackVersion;
    id<AirPlayReceiverUIDelegate> _airPlayReceiverUIDelegate;
    id<APRKStreamRendererSampleBufferDelegate> _sampleBufferDelegate;
    NSData *_ensembleInfo;
    NSDictionary *_demoDeviceInfo;
}

@property (readonly, copy, nonatomic) NSUUID *uniqueID;
@property (readonly, copy, nonatomic) NSString *managedClientName;
@property (weak, nonatomic) id<APRKStreamRendererDelegate> delegate;
@property (readonly, nonatomic) BOOL canRecord;
@property (readonly, nonatomic) BOOL isRecording;
@property (nonatomic) BOOL isPaused;
@property (nonatomic) BOOL isMirroringVideoStreamPaused;
@property (nonatomic) BOOL isMirroringAudioStreamPaused;
@property (readonly, nonatomic) struct CGSize { double x0; double x1; } videoFrameSize;
@property (nonatomic) BOOL autoRotateLayerFollowingClientRotation;
@property (readonly, nonatomic) unsigned long long streamRendererMode;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (BOOL)stopRecording;
- (id)player;
- (void)dealloc;
- (void)stop;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void).cxx_destruct;
- (BOOL)isActive;
- (id)sampleBufferDelegate;
- (id)mediaPlayer;
- (void)setCanRecord:(BOOL)a0;
- (id)mirroringLayer;
- (int)_enqueueVideoFrameForRendering:(struct opaqueCMSampleBuffer { } *)a0;
- (void)setIsWiredLink:(BOOL)a0;
- (id)HUDLayer;
- (float)mirroringVolume;
- (id)videoQueuePerformanceDictionary;
- (void)_cleanupInternalPlayer;
- (void)_cleanupPreviousRecordingIfExisting;
- (int)_enqueueSampleBufferForRecording:(struct opaqueCMSampleBuffer { } *)a0 isAudioSBuf:(BOOL)a1;
- (short)_ensureFigVideoQueue;
- (void)_ensureInternalPlayer;
- (BOOL)_isRotatedTransform:(unsigned long long)a0;
- (BOOL)_performStartRecordingWithOutputURL:(id)a0;
- (BOOL)_performStopRecording;
- (void)_performUIControllerActionWithBlock:(id /* block */)a0;
- (BOOL)_receiverSupportsMirroring;
- (BOOL)_sampleBufferRepresentsKeyFrame:(struct opaqueCMSampleBuffer { } *)a0;
- (BOOL)_shouldFlip:(unsigned int)a0;
- (void)_updateStreamingMode;
- (unsigned int)audioSessionCount;
- (id)backingMediaPlayer;
- (unsigned long long)currentVideoPlaybackVersion;
- (unsigned int)currentVideoSessionID;
- (id)demoDeviceInfo;
- (id)ensembleInfo;
- (id)initWithUniqueID:(id)a0 clientName:(id)a1 UIController:(struct OpaqueAPReceiverUIController { } *)a2 useCALayerForMirroring:(BOOL)a3;
- (BOOL)isP2PWiFi;
- (BOOL)isWiredLink;
- (void)makeNowPlayingRenderer;
- (void)mediaPlayer:(id)a0 didGenerateFPSSecureStopRecordPayload:(id)a1;
- (void)mediaPlayer:(id)a0 wantsToPostNotification:(id)a1 withPayload:(id)a2;
- (void)mediaPlayer:(id)a0 wantsToSendUpstreamMessageWithDictionary:(id)a1;
- (void)mediaPlayerNeedsTLSInfo:(id)a0;
- (void)postVideoV1EventWithType:(const char *)a0 params:(struct __CFDictionary { } *)a1;
- (BOOL)processAudioSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (void)processHidePasscodePromptRequest;
- (void)processSenderUIEvent:(id)a0;
- (void)processShowPasscodePromptRequest:(id)a0;
- (void)processStartAudioSessionRequestWithSessionID:(unsigned int)a0 isScreenAudio:(BOOL)a1;
- (void)processStartScreenPresentationWithSessionID:(unsigned int)a0;
- (void)processStartVideoPlaybackRequestWithWithSessionID:(unsigned int)a0 version:(unsigned long long)a1;
- (void)processStopAudioSessionRequestWithSessionID:(unsigned int)a0;
- (void)processStopScreenPresentationWithSessionID:(unsigned int)a0;
- (void)processStopVideoPlaybackRequestWithSessionID:(unsigned int)a0;
- (BOOL)processVideoSampleBuffer:(struct opaqueCMSampleBuffer { } *)a0;
- (unsigned int)screenSessionCount;
- (void)setDeferLayerRendering:(BOOL)a0;
- (void)setDemoDeviceInfo:(id)a0;
- (void)setEnsembleInfo:(id)a0;
- (void)setIsP2PWiFi:(BOOL)a0;
- (void)setMirroringVolume:(float)a0;
- (void)setReceiverNetworkClock:(struct OpaqueAPSNetworkClock { } *)a0;
- (void)setSampleBufferDelegate:(id)a0;
- (void)setSessionReceiverAddress:(struct OpaqueAPSNetworkAddress { } *)a0;
- (void)setVideoV1Delegate:(id)a0 withDelegateQueue:(id)a1;
- (BOOL)startRecordingWithOutputURL:(id)a0;
- (void)updateDisplayInfo;
- (unsigned int)videoSessionCount;

@end