luxlabs header browser preview


@class APRKContentKeyHelper, NSString, NSArray, AVPlayerItem, AVQueuePlayer, NSDictionary, APRKMetadata, NSObject, APRKResourceLoaderHelper, NSMutableDictionary;
@protocol OS_dispatch_queue, APRKMediaPlayerMessagingDelegate;

@interface APRKMediaPlayer : NSObject <APRKResourceLoaderHelperDelegate, APRKContentKeyHelperDelegate, AVPlayerItemMetadataCollectorPushDelegate> {
    AVQueuePlayer *_player;
    NSString *_previousItemUUID;
    NSString *_currentItemUUID;
    BOOL _isInterestedInDateRange;
    long long _stallCount;
    id<APRKMediaPlayerMessagingDelegate> _messagingDelegate;
    NSObject<OS_dispatch_queue> *_messageQueue;
    NSArray *_cachedSelectedMediaArray;
    NSDictionary *_cachedSSLProperties;
    APRKResourceLoaderHelper *_resourceLoaderHelper;
    APRKContentKeyHelper *_contentKeyHelper;
    struct OpaqueAPReceiverFairPlayHelper { } *_fpHelper;
    long long _internalPlaybackState;
    struct OpaqueAPSNetworkAddress { } *_sessionReceiverAddr;
    struct OpaqueAPSNetworkClock { } *_receiverNetworkClock;
    BOOL _isP2PWiFiSession;
    BOOL _isFirstSetRateReceived;
    BOOL _isInvalidated;
    BOOL _disableAutoResumeAfterSeek;
    BOOL _isWaitingToSetRateFromSenderAfterSeek;
    NSMutableDictionary *_pendingSenderSeekMessages;
    float _lastNonZeroRate;
    BOOL _isInTrickPlay;
    float _rateBeforeTrickPlay;
    APRKMediaPlayer *_interstitialPlayer;
    NSArray *_interstitialEvents;
    NSString *_currentInterstitialEventID;
    NSArray *_lastReportedDateRanges;
    NSString *_audioSessionMode;
}

@property (retain, nonatomic) APRKMetadata *currentItemMetadata;
@property (readonly, nonatomic) AVQueuePlayer *backingAVQueuePlayer;
@property (readonly, nonatomic) AVPlayerItem *currentItem;
@property (weak, nonatomic) id<APRKMediaPlayerMessagingDelegate> messagingDelegate;
@property (readonly, nonatomic) BOOL isInterstitialPlayer;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

- (void)dealloc;
- (void)invalidate;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void).cxx_destruct;
- (void)metadataCollector:(id)a0 didCollectDateRangeMetadataGroups:(id)a1 indexesOfNewGroups:(id)a2 indexesOfModifiedGroups:(id)a3;
- (void)stopWithCompletionBlock:(id /* block */)a0;
- (void)contentKeyHelper:(id)a0 wantsToPerformContentKeyRequestWithDictionary:(id)a1;
- (void)_handleCurrentPlayerItemReachedTimeToPausePlaybackNotification:(id)a0;
- (id)_SSLPropertiesforTLSInfo:(id)a0;
- (void)_addPendingSeekID:(int)a0 withMessage:(id)a1 forItem:(id)a2 ignoreSeekCompletion:(BOOL)a3;
- (BOOL)_attemptToSetSelectedMediaArray:(id)a0;
- (id)_currentPlaybackInfoDictionary;
- (BOOL)_ensureFairPlayHelper;
- (void)_ensureInterstitialPlayer;
- (id)_figPlaybackStateStringFrom:(long long)a0;
- (id)_fixedIPContentLocationFromURLString:(id)a0 error:(id *)a1;
- (id)_frontPlayerItem;
- (id)_getPropertyWithDictionary:(id)a0;
- (void)_handleCurrentItemChangedNotification:(id)a0;
- (void)_handleCurrentItemPlaybackStalledNotification:(id)a0;
- (void)_handleCurrentItemPlayedToEndNotification:(id)a0;
- (void)_handleCurrentPlayerItemMediaSelectionDidChangeNotification:(id)a0;
- (void)_handleCurrentPlayerItemNewAccessLogEntryNotification:(id)a0;
- (void)_handleCurrentPlayerItemReachedTimeToPauseBufferingNotification:(id)a0;
- (void)_handleSeekDidCompleteNotification:(id)a0;
- (void)_handleTimeJumpedNotification:(id)a0;
- (void)_insertPlayQueueItemWithDictionary:(id)a0;
- (void)_pausePlayerIfNeededForState:(long long)a0;
- (id)_playerItemForUUID:(id)a0;
- (void)_prepareForNewItemPlaybackWithCompletionBlock:(id /* block */)a0;
- (id)_processAuthorizeItemWithDictionary:(id)a0;
- (id)_processMessageWithDictionaryInternal:(id)a0;
- (id)_processPlaybackInfoRequestWithDictionary:(id)a0;
- (void)_processStreamingKeyWithDictionary:(id)a0;
- (void)_processUnhandledURLWithDictionary:(id)a0;
- (void)_registerNotificationHandlersAndInsertPlayerItem:(id)a0 afterItem:(id)a1;
- (void)_registerNotificationHandlersForPlayer;
- (void)_removePendingSeekID:(int)a0 forItem:(id)a1;
- (void)_removePlayQueueItemWithDictionary:(id)a0;
- (id)_seekRequestMessageForSeekID:(int)a0 forItem:(id)a1;
- (void)_seekWithDictionary:(id)a0;
- (void)_sendUpstreamErrorMessageWithError:(id)a0;
- (void)_sendUpstreamMessageWithDictionary:(id)a0;
- (void)_sendUpstreamPlaybackStateMessageWithPlaybackStateString:(id)a0 stoppedBecauseInterrupted:(BOOL)a1;
- (id)_serializeTimeRanges:(id)a0;
- (void)_setPropertyWithDictionary:(id)a0;
- (void)_setRateWithDictionary:(id)a0;
- (BOOL)_shouldIgnoreSeekCompletionForSeekID:(int)a0 forItem:(id)a1;
- (void)_stopWithDictionary:(id)a0;
- (id)_timedMetadataFromAVTimedMetadata:(id)a0;
- (void)_unregisterNotificationHandlersAndRemovePlayerItem:(id)a0;
- (void)_unregisterNotificationHandlersForPlayer;
- (void)_updateAudioSessionMode:(id)a0;
- (void)_updatePlaybackStateWithState:(long long)a0 stoppedBecauseInterrupted:(BOOL)a1 shouldSendUpstreamMessage:(BOOL)a2;
- (void)addDateRangeCollectorToItem:(id)a0;
- (void)contentKeyHelper:(id)a0 didGenerateSecureStopRecordPayload:(id)a1;
- (id)initWithP2PWiFiSupport:(BOOL)a0 isInterstitialPlayer:(BOOL)a1;
- (void)processMessageWithDictionaryAsync:(id)a0;
- (id)processMessageWithDictionarySync:(id)a0;
- (void)processTLSInfoDictionary:(id)a0;
- (void)resourceLoaderHelper:(id)a0 wantsToPerformUnhandledURLRequestWithDictionary:(id)a1 forRequestID:(id)a2;
- (id)selectedMediaArrayForItem:(id)a0;
- (void)setReceiverNetworkClock:(struct OpaqueAPSNetworkClock { } *)a0;
- (void)setSessionReceiverAddress:(struct OpaqueAPSNetworkAddress { } *)a0;
- (BOOL)shouldDelegateToInterstitialPlayerForMessage:(id)a0;

@end