luxlabs header browser preview


@class TVPProgressiveJumpingScrubber, AVQueuePlayer, TVPPlayerReporter, TVPTimeRange, TVPChapter, NSMutableArray, NSString, NSMutableSet, TVPMediaItemLoader, TVPInterstitial, TVPPlayerItem, TVPExternalImagePlayer, NSMutableDictionary, TVPPlaylist, NSArray, TVPInterstitialCollection, AVPlayer, TVPChapterCollection, TVPPlayerBookmarkMonitor, NSObject, TVPDateRange, AVPlayerItem, TVPAudioOption, TVPSubtitleOption, TVPStateMachine, NSDate, TVPPlaybackState, NSNumber, NSHashTable;
@protocol TVPPlaybackDelegate, TVPMediaItem, TVPASyncPlaybackDelegate;

@interface TVPPlayer : NSObject <AVPlayerPlaybackCoordinatorDelegate, AVPlayerItemDelegate, TVPAVFPlayback>

@property (nonatomic) BOOL invalidated;
@property (retain, nonatomic) TVPStateMachine *stateMachine;
@property (retain, nonatomic) TVPPlaylist *playlistInternal;
@property (retain, nonatomic) TVPPlaybackState *postLoadingState;
@property (retain, nonatomic) TVPPlaybackState *postAVKitScanningState;
@property (retain, nonatomic) TVPMediaItemLoader *currentMediaItemLoader;
@property (retain, nonatomic) NSMutableDictionary *elapsedTimeObserverBlocks;
@property (retain, nonatomic) NSMutableDictionary *boundaryTimeObserverInfos;
@property (retain, nonatomic) id periodicTimeObserverToken;
@property (retain, nonatomic) id highFrequencyTimeObserverToken;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } startTime;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } startingSeekPrecision;
@property (retain, nonatomic) NSDate *startDate;
@property (retain, nonatomic) TVPPlayerBookmarkMonitor *bookmarkMonitor;
@property (retain, nonatomic) TVPPlayerReporter *playerReporter;
@property (nonatomic) long long numOutstandingSeeks;
@property (retain, nonatomic) NSHashTable *videoViewWeakReferences;
@property (retain, nonatomic) NSMutableSet *mediaItemLoaders;
@property (nonatomic) BOOL handleRemoteCommandsWithoutUpdatingMediaRemote;
@property (nonatomic) BOOL pausesOnRouteChange;
@property (nonatomic) BOOL updatesBookmarks;
@property (nonatomic) BOOL sendsPlayerReports;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } lastTimeSentToAVKitImageHandler;
@property (nonatomic) BOOL pausesOnHDCPProtectionDown;
@property (nonatomic) double preferredForwardBufferDuration;
@property (nonatomic) struct CGSize { double width; double height; } preferredMaximumResolution;
@property (nonatomic) struct CGSize { double width; double height; } preferredMaximumResolutionForExpensiveNetworks;
@property (nonatomic) BOOL prefersSDRVideo;
@property (nonatomic) BOOL limitsBandwidthForCellularAccess;
@property (nonatomic) BOOL allowsCellularUsage;
@property (nonatomic) BOOL allowsConstrainedNetworkUsage;
@property (nonatomic) long long currentMediaItemVideoRange;
@property (nonatomic) long long currentMediaItemAudioFormat;
@property (nonatomic) long long currentMediaItemAudioChannels;
@property (copy, nonatomic) NSArray *pendingSelectedMediaArray;
@property (nonatomic) BOOL wasMutedPriorToScreenRecording;
@property (nonatomic) BOOL allowsExternalPlayback;
@property (retain, nonatomic) NSString *preferredAudioLanguageCode;
@property (nonatomic) BOOL prefersAudioDescriptions;
@property (retain, nonatomic) NSString *reportingCategory;
@property (nonatomic) BOOL loadingInitialItemInPlaylist;
@property (retain, nonatomic) TVPPlayerItem *currentPlayerItem;
@property (nonatomic) BOOL modifyingAVPlayerRate;
@property (nonatomic) BOOL modifyingAVPlayerQueue;
@property (nonatomic) BOOL playerItemChangeIsHappening;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } timeBeingSeekedTo;
@property (retain, nonatomic) NSDate *dateBeingSeekedTo;
@property (retain, nonatomic) NSDate *playbackDateAtStartOfSeek;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } timeAtStartOfSeek;
@property (nonatomic) long long currentDirectionOfPlaylistChange;
@property (retain, nonatomic) id chapterBoundaryTimeObserverToken;
@property (retain, nonatomic) TVPExternalImagePlayer *externalImagePlayer;
@property (retain, nonatomic) TVPInterstitialCollection *currentInterstitialCollection;
@property (retain, nonatomic) id interstitialBoundaryTimeObserverToken;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } cachedElapsedTime;
@property (retain, nonatomic) TVPProgressiveJumpingScrubber *progressiveJumpingScrubber;
@property (retain, nonatomic) NSString *mediaItemChangeReason;
@property (nonatomic) BOOL sceneCompletelyBuffered;
@property (retain, nonatomic) NSMutableArray *asyncDelegateOperations;
@property (retain, nonatomic) NSNumber *temporarySubtitleOverrideType;
@property (retain, nonatomic) NSArray *playbackEndTimeBoundaryObserverTokens;
@property (retain, nonatomic) TVPAudioOption *cachedSelectedAudioOption;
@property (retain, nonatomic) AVQueuePlayer *earlyAVQueuePlayer;
@property (nonatomic) struct { long long value; int timescale; unsigned int flags; long long epoch; } cachedDuration;
@property (retain, nonatomic) NSArray *cachedLoadedTimeRanges;
@property (retain, nonatomic) NSArray *cachedSeekableTimeRanges;
@property (nonatomic) BOOL currentMediaItemInitialLoadingComplete;
@property (nonatomic) BOOL currentMediaItemHasVideoContent;
@property (nonatomic) BOOL currentMediaItemIsStreaming;
@property (nonatomic) struct CGSize { double width; double height; } currentMediaItemPresentationSize;
@property (nonatomic) BOOL currentMediaItemHasDates;
@property (retain, nonatomic) AVQueuePlayer *AVQueuePlayer;
@property (retain, nonatomic) TVPPlayerItem *playerItemFromCacheManager;
@property (nonatomic) BOOL outputObscuredDueToInsufficientExternalProtection;
@property (nonatomic) double startPosition;
@property (retain, nonatomic) NSArray *chapterCollections;
@property (retain, nonatomic) TVPChapter *currentChapter;
@property (retain, nonatomic) TVPInterstitial *currentInterstitial;
@property (retain, nonatomic) NSArray *audioOptions;
@property (retain, nonatomic) NSArray *subtitleOptions;
@property (nonatomic) struct CGSize { double width; double height; } iFramePrefetchMaxSize;
@property (nonatomic) BOOL asyncDelegateInProgress;
@property (nonatomic) BOOL usesLegacyDelegateBehavior;
@property (nonatomic) BOOL isLive;
@property (copy, nonatomic) id /* block */ highFrequencyElapsedTimeObserverBlock;
@property (nonatomic) BOOL createsPlayerItemButDoesNotEnqueue;
@property (retain, nonatomic) AVPlayerItem *unqueuedPlayerItem;
@property (copy, nonatomic) id /* block */ AVKitExternalImageScanningUpdateBlock;
@property (nonatomic) BOOL mediaRemoteUpdatingEnabled;
@property (nonatomic) BOOL remainLoadingWhenSeekCompletes;
@property (nonatomic) BOOL initialMediaItemHasCompletedInitialLoading;
@property (nonatomic) BOOL haveEverEnqueuedPlayerItem;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) AVPlayer *avPlayer;
@property (readonly, nonatomic) NSString *name;
@property (weak, nonatomic) id<TVPPlaybackDelegate> delegate;
@property (weak, nonatomic) id<TVPASyncPlaybackDelegate> asyncDelegate;
@property (retain, nonatomic) TVPPlaylist *playlist;
@property (retain, nonatomic) NSObject<TVPMediaItem> *currentMediaItem;
@property (readonly, nonatomic) BOOL currentMediaItemPreparedForLoading;
@property (readonly, nonatomic) TVPPlaybackState *state;
@property (nonatomic) long long errorBehavior;
@property (nonatomic) BOOL interactive;
@property (readonly, nonatomic) double rate;
@property (nonatomic) double rateUsedForPlayback;
@property (nonatomic) BOOL waitsAfterPreparingMediaItems;
@property (readonly, nonatomic) double elapsedTime;
@property (copy, nonatomic) NSDate *playbackDate;
@property (readonly, nonatomic) double duration;
@property (nonatomic) BOOL muted;
@property (nonatomic) float volume;
@property (retain, nonatomic) TVPChapterCollection *currentChapterCollection;
@property (readonly, nonatomic) TVPTimeRange *bufferedTimeRange;
@property (readonly, nonatomic) TVPTimeRange *seekableTimeRange;
@property (readonly, nonatomic) TVPDateRange *seekableDateRange;
@property (readonly, nonatomic) double forwardPlaybackEndTime;
@property (readonly, nonatomic) double reversePlaybackEndTime;
@property (nonatomic) long long mediaItemEndAction;
@property (retain, nonatomic) TVPAudioOption *selectedAudioOption;
@property (retain, nonatomic) TVPSubtitleOption *selectedSubtitleOption;
@property (nonatomic) double maximumBitRate;
@property (nonatomic) BOOL preventsSleepDuringVideoPlayback;
@property (nonatomic) BOOL updatesMediaRemoteInfoAutomatically;
@property (nonatomic) BOOL respondsToRemoteControlEvents;
@property (nonatomic) BOOL limitReadAhead;

+ (BOOL)automaticallyNotifiesObserversForKey:(id)a0;
+ (void)initialize;
+ (id)savedPreferredAudioLanguageCode;
+ (void)removeTemporaryDownloadDirectory;
+ (void)updateSupplementaryAvailableAudioLanguageCodes:(id)a0;
+ (long long)_audioFormatForFormatDescription:(struct opaqueCMFormatDescription { } *)a0;
+ (id)_audioSelectionCriteriaForPreferredAudioLanguageCodes:(id)a0 mediaItemLoader:(id)a1 prefersAudioDescriptions:(BOOL)a2;
+ (id)_newAVQueuePlayer;
+ (void)_playerDidBecomeInactive:(id)a0;
+ (void)_playerWillBecomeActive:(id)a0;
+ (id)_stringForAudioFormat:(long long)a0;
+ (void)_updateAudioSelectionCriteriaForAVQueuePlayer:(id)a0 mediaItemLoader:(id)a1 preferredAudioLanguageCodes:(id)a2 prefersAudioDescriptions:(BOOL)a3;
+ (void)setShouldDeactivateAVAudioSession:(BOOL)a0;
+ (BOOL)shouldDeactivateAVAudioSession;
+ (long long)tvpVideoRangeForVideoDynamicRange:(int)a0;

- (long long)externalPlaybackType;
- (void)_audioRouteChanged:(id)a0;
- (void)play;
- (void)pause;
- (id)init;
- (void)dealloc;
- (void)invalidate;
- (void)stop;
- (id)initWithName:(id)a0;
- (void)setElapsedTime:(double)a0;
- (void)observeValueForKeyPath:(id)a0 ofObject:(id)a1 change:(id)a2 context:(void *)a3;
- (void).cxx_destruct;
- (void)togglePlayPause;
- (id)accessLog;
- (id)errorLog;
- (id)playbackCoordinator:(id)a0 identifierForPlayerItem:(id)a1;
- (BOOL)playerItem:(id)a0 shouldSeekToTime:(struct { long long x0; int x1; unsigned int x2; long long x3; } *)a1 toleranceBefore:(struct { long long x0; int x1; unsigned int x2; long long x3; } *)a2 toleranceAfter:(struct { long long x0; int x1; unsigned int x2; long long x3; } *)a3;
- (id)timedMetadata;
- (BOOL)seeking;
- (void)_registerStateMachineHandlers;
- (id)addElapsedTimeObserver:(id /* block */)a0;
- (void)changeMediaInDirection:(long long)a0;
- (void)changeMediaInDirection:(long long)a0 reason:(id)a1;
- (void)removeElapsedTimeObserverWithToken:(id)a0;
- (void)restartPlaybackWithState:(id)a0;
- (void)setElapsedTime:(double)a0 precise:(BOOL)a1;
- (void)setSelectedSubtitleOption:(id)a0 setGlobalPreference:(BOOL)a1;
- (void)scanWithRate:(double)a0;
- (id)AVQueuePlayerCreateIfNecessary:(BOOL)a0;
- (BOOL)_beingUsedForIFrameOnlyPlayback;
- (BOOL)_currentPlayerItemContainsDates;
- (void)_enqueueAsyncDelegateOperation:(id)a0;
- (void)_screenRecordingStateDidChange:(id)a0;
- (id)_bitRateString:(double)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_clampedSceneTimeForPlayerTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)_notifyListenersOfElapsedTimeChange:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 playbackDate:(id)a1 dueToTimeJump:(BOOL)a2;
- (void)_setSelectedSubtitleOption:(id)a0 userOverridesSystemSubtitleSettings:(BOOL)a1;
- (long long)currentScanMode;
- (void)removeWeakReferenceToVideoView:(id)a0;
- (void)_addBoundaryTimeObserversToAVQueuePlayer:(id)a0;
- (void)_addHighFrequencyTimeObserverIfNecessary;
- (void)_addObserversForMediaItem:(id)a0;
- (void)_addObserversForMediaItemLoader:(id)a0;
- (void)_addObserversForPlayerItem:(id)a0;
- (void)_addObserversForPlaylist:(id)a0;
- (void)_addObserversToAVQueuePlayer:(id)a0;
- (void)_addPeriodicTimeObserverToAVQueuePlayer:(id)a0;
- (void)_addPlaybackEndTimeBoundaryObservers;
- (id)_assetTracksOfType:(id)a0 fromTracks:(id)a1;
- (void)_avPlayerRateDidChange:(id)a0;
- (void)_avPlayerRateDidChangeTo:(float)a0;
- (void)_avPlayerTimeDidChangeTo:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_clampInfiniteTimeToSeekableRange:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_clampedElapsedTimeForTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 duration:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1;
- (void)_configureSoundCheckForPlayerItem:(id)a0 tracks:(id)a1;
- (id)_currentDateFromPlayerItem:(id)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_currentMediaItemForwardPlaybackEndTime;
- (void)_currentMediaItemMetadataDidChange:(id)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_currentMediaItemReversePlaybackEndTime;
- (void)_currentPlayerItemAccessLogDidChange:(id)a0;
- (void)_currentPlayerItemBufferEmptyDidChangeTo:(BOOL)a0;
- (void)_currentPlayerItemBufferFullDidChangeTo:(BOOL)a0;
- (BOOL)_currentPlayerItemCanScanAtRate:(double)a0;
- (void)_currentPlayerItemDidChangeTo:(id)a0;
- (void)_currentPlayerItemDidFailToPlayToEnd:(id)a0;
- (void)_currentPlayerItemDidHitBeginningOrEnd:(id)a0;
- (void)_currentPlayerItemDidStall:(id)a0;
- (void)_currentPlayerItemDurationDidChangeTo:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)_currentPlayerItemErrorLogDidChange:(id)a0;
- (void)_currentPlayerItemHasVideoDidChangeTo:(BOOL)a0;
- (void)_currentPlayerItemLikelyToKeepUpDidChangeTo:(BOOL)a0;
- (void)_currentPlayerItemLoadedTimeRangesDidChangeTo:(id)a0;
- (void)_currentPlayerItemMediaSelectionDidChange:(id)a0;
- (void)_currentPlayerItemPresentationSizeDidChangeTo:(struct CGSize { double x0; double x1; })a0;
- (void)_currentPlayerItemReachedTimeToPauseBuffering:(id)a0;
- (void)_currentPlayerItemReachedTimeToPausePlayback:(id)a0;
- (void)_currentPlayerItemSeekableTimeRangesDidChangeTo:(id)a0;
- (void)_currentPlayerItemStatusDidChangeTo:(long long)a0 from:(long long)a1;
- (void)_currentPlayerItemTimedMetadataDidChange;
- (void)_currentPlayerItemTracksDidChangeTo:(id)a0 from:(id)a1;
- (void)_currentPlayerItemWillChange;
- (id)_descriptionForVideoRange:(long long)a0;
- (id)_descriptionForVideoResolutionClass:(long long)a0;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })_estimatedCMTimeForPlaybackDate:(id)a0 referenceTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 referenceDate:(id)a2;
- (id)_estimatedPlaybackDateForCMTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)_externalPlaybackActiveDidChange;
- (BOOL)_getStringForTitleLabel:(id *)a0 subtitleLabel:(id *)a1 forMediaItem:(id)a2;
- (BOOL)_isPlaybackLikelyToKeepUp;
- (BOOL)_isScreenBeingRecorded;
- (void)_logAccessLogEvents;
- (void)_logExternalPlaybackType;
- (void)_mediaItemLoader:(id)a0 stateDidChangeTo:(id)a1;
- (void)_notifyOfBoundaryCrossingBetweenPreviousTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0 updatedTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1;
- (void)_outputObscuredDidChangeTo:(BOOL)a0;
- (void)_playerMutedDidChange;
- (void)_playlistCurrentMediaItemDidChangeWithContext:(id)a0;
- (void)_playlistCurrentMediaItemWillChangeWithContext:(id)a0;
- (void)_playlistEndActionDidChange;
- (void)_playlistNextMediaItemDidChangeWithContext:(id)a0;
- (void)_populateCurrentPlayerItemWithUpNextMetadata;
- (void)_populatePlayerItem:(id)a0 withMetadataFromMediaItem:(id)a1;
- (void)_postCurrentMediaItemDidChangeNotificationWithDirection:(id)a0 reason:(id)a1 didHitBeginningOfPlaylist:(BOOL)a2 didHitEndOfPlaylist:(BOOL)a3;
- (void)_postCurrentMediaItemWillChangeNotificationWithDirection:(id)a0 reason:(id)a1 didHitBeginningOfPlaylist:(BOOL)a2 didHitEndOfPlaylist:(BOOL)a3;
- (void)_preferVideoDescriptionsSettingDidChange;
- (void)_processNextAsyncDelegateOperation;
- (void)_removeBoundaryTimeObserversFromAVQueuePlayer:(id)a0;
- (void)_removeHighFrequencyTimeObserverIfNecessary;
- (void)_removeObserversForMediaItem:(id)a0;
- (void)_removeObserversForMediaItemLoader:(id)a0;
- (void)_removeObserversForPlayerItem:(id)a0;
- (void)_removeObserversForPlaylist:(id)a0;
- (void)_removeObserversFromAVQueuePlayer:(id)a0;
- (void)_removePeriodicTimeObserverFromAVQueuePlayer:(id)a0;
- (void)_removePlaybackEndTimeBoundaryObservers;
- (void)_resetAndReselectAudioOptions;
- (void)_selectMediaArray:(id)a0 withItem:(id)a1;
- (void)_setScrubPlayerItem:(id)a0 onPlayerItem:(id)a1;
- (void)_setState:(id)a0 updatedRate:(double)a1 notifyListeners:(BOOL)a2;
- (void)_setState:(id)a0 updatedRate:(double)a1 reason:(id)a2 notifyListeners:(BOOL)a3;
- (id)_soundCheckNormalizationForMediaItem:(id)a0;
- (id)_statesThatReturnAVPlayerTime;
- (id)_statesThatReturnSeekTime;
- (id)_statesThatReturnStartTime;
- (void)_subtitleSettingsDidChange;
- (void)_timeControlStatusDidChangeTo:(long long)a0 oldStatusNum:(id)a1;
- (void)_updateAVPlayerActionAtItemEnd;
- (void)_updateAudioSelectionCriteria;
- (void)_updateCurrentMediaItemAudioInfoForPlayerItem:(id)a0 tracks:(id)a1;
- (void)_updateCurrentMediaItemVideoRangeForTracks:(id)a0;
- (void)_updateIsLiveForElapsedTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0;
- (void)_updateMediaRemoteManager;
- (void)_updateSelectedSubtitleForFilteredOptions:(id)a0;
- (void)_updateVideoViewsWithAVQueuePlayer:(id)a0;
- (int)_videoTrackIDFromTracks:(id)a0;
- (id)addBoundaryTimeObserverForDates:(id)a0 withHandler:(id /* block */)a1;
- (id)addBoundaryTimeObserverForTimes:(id)a0 withHandler:(id /* block */)a1;
- (void)addWeakReferenceToVideoView:(id)a0;
- (void)avKitDidFinishScanning;
- (void)avKitSeekDidComplete;
- (id)beginCoordinatedPlaybackSuspensionWithReason:(id)a0;
- (void)changeMediaInDirection:(long long)a0 reason:(id)a1 ignoreDelegate:(BOOL)a2;
- (void)changeToMediaAtIndex:(unsigned long long)a0 reason:(id)a1;
- (void)changeToMediaAtIndex:(unsigned long long)a0 reason:(id)a1 ignoreDelegate:(BOOL)a2;
- (void)continueLoadingCurrentItem;
- (BOOL)currentMediaItemSupportsScrubbingUsingPlayer;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })durationCMTime;
- (struct { long long x0; int x1; unsigned int x2; long long x3; })elapsedCMTime;
- (void)endCoordinatedPlaybackSuspension:(id)a0;
- (void)pauseIgnoringDelegate:(BOOL)a0;
- (void)pauseWithAVKitCompletion:(id /* block */)a0;
- (void)pauseWithVolumeRampDuration:(double)a0;
- (void)playIgnoringDelegate:(BOOL)a0;
- (void)playWithAVKitCompletion:(id /* block */)a0;
- (id)playbackErrorFromError:(id)a0 forMediaItem:(id)a1;
- (void)playerDidHitBeginningOrEnd;
- (void)removeBoundaryTimeObserverWithToken:(id)a0;
- (void)scanWithRate:(double)a0 withAVKitCompletion:(id /* block */)a1;
- (void)selectMediaArray:(id)a0;
- (void)setElapsedTime:(double)a0 orPlaybackDate:(id)a1 withAVKitCompletion:(id /* block */)a2;
- (void)setElapsedTime:(double)a0 seekPrecision:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1;
- (void)setElapsedTime:(double)a0 seekPrecision:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 ignoreDelegate:(BOOL)a2;
- (void)setElapsedTime:(double)a0 seekPrecision:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 ignoreDelegate:(BOOL)a2 withAVKitCompletion:(id /* block */)a3;
- (void)setPlaybackDate:(id)a0 withAVKitCompletion:(id /* block */)a1;
- (void)setPlaybackHUDString:(id)a0;
- (void)skipToNextChapterInDirection:(long long)a0;
- (void)stopWithVolumeRampDuration:(double)a0;
- (void)updateSubtitleOptions;
- (void)updateSubtitleOptionsAndSelection;

@end