void * instance; // Internal
VLCMedia * media; //< Current media being played
VLCTime * cachedTime; //< Cached time of the media being played
+ VLCTime * cachedRemainingTime; //< Cached remaining time of the media being played
VLCMediaPlayerState cachedState; //< Cached state of the media being played
float position; //< The position of the media being played
id drawable; //< The drawable associated to this media player
- (void)setVideoAspectRatio:(char *)value;
- (char *)videoAspectRatio;
-- (void)setVideoSubTitles:(int)value;
-- (int)countOfVideoSubTitles;
-- (BOOL)openVideoSubTitlesFromFile:(NSString *)path;
-- (int)currentVideoSubTitles;
-- (NSArray *)videoSubTitles;
- (void)setVideoCropGeometry:(char *)value;
- (char *)videoCropGeometry;
-- (void)setVideoTeleText:(int)value;
-- (int)videoTeleText;
+- (void)setVideoTeleText:(NSUInteger)value;
+- (NSUInteger)videoTeleText;
/**
* Take a snapshot of the current video.
- (VLCTime *)time;
@property (readonly) VLCTime *remainingTime;
-@property (readonly) int fps;
+@property (readonly) NSUInteger fps;
+
+/**
+ * Return the current video subtitle index
+ * \return 0 if none is set.
+ *
+ * Pass 0 to disable.
+ */
+@property (readwrite) NSUInteger currentVideoSubTitleIndex;
+
+/**
+ * Return the video subtitle tracks
+ *
+ * It includes the disabled fake track at index 0.
+ */
+- (NSArray *)videoSubTitles;
-- (void)setChapter:(int)value;
-- (int)currentChapter;
-- (int)countOfChapters;
-- (NSArray *)chaptersForTitle:(int)title;
+/**
+ * Load and set a specific video subtitle, from a file.
+ * \param path to a file
+ * \return if the call succeed..
+ */
+- (BOOL)openVideoSubTitlesFromFile:(NSString *)path;
-- (void)setCurrentTitle:(int)value;
-- (int)currentTitle;
-- (int)countOfTitles;
+/**
+ * Chapter selection and enumeration, it is bound
+ * to a title option.
+ */
+
+/**
+ * Return the current video subtitle index, or
+ * \return NSNotFound if none is set.
+ *
+ * To disable subtitle pass NSNotFound.
+ */
+@property (readwrite) NSUInteger currentChapterIndex;
+- (void)previousChapter;
+- (void)nextChapter;
+- (NSArray *)chaptersForTitleIndex:(NSUInteger)titleIndex;
+
+/**
+ * Title selection and enumeration
+ * \return NSNotFound if none is set.
+ */
+@property (readwrite) NSUInteger currentTitleIndex;
- (NSArray *)titles;
/* Audio Options */
-- (void)setAudioTrack:(int)value;
-- (int)currentAudioTrack;
-- (int)countOfAudioTracks;
+
+/**
+ * Return the current audio track index
+ * \return 0 if none is set.
+ *
+ * Pass 0 to disable.
+ */
+@property (readwrite) NSUInteger currentAudioTrackIndex;
+
+/**
+ * Return the audio tracks
+ *
+ * It includes the "Disable" fake track at index 0.
+ */
- (NSArray *)audioTracks;
-- (void)setAudioChannel:(int)value;
-- (int)audioChannel;
+- (void)setAudioChannel:(NSInteger)value;
+- (NSInteger)audioChannel;
/* Media Options */
- (void)setMedia:(VLCMedia *)value;