28 #import <Foundation/Foundation.h> 29 #import "VLCMediaList.h" 32 NS_ASSUME_NONNULL_BEGIN
38 extern NSString *
const VLCMetaInformationTitle;
39 extern NSString *
const VLCMetaInformationArtist;
40 extern NSString *
const VLCMetaInformationGenre;
41 extern NSString *
const VLCMetaInformationCopyright;
42 extern NSString *
const VLCMetaInformationAlbum;
43 extern NSString *
const VLCMetaInformationTrackNumber;
44 extern NSString *
const VLCMetaInformationDescription;
45 extern NSString *
const VLCMetaInformationRating;
46 extern NSString *
const VLCMetaInformationDate;
47 extern NSString *
const VLCMetaInformationSetting;
48 extern NSString *
const VLCMetaInformationURL;
49 extern NSString *
const VLCMetaInformationLanguage;
50 extern NSString *
const VLCMetaInformationNowPlaying;
51 extern NSString *
const VLCMetaInformationPublisher;
52 extern NSString *
const VLCMetaInformationEncodedBy;
53 extern NSString *
const VLCMetaInformationArtworkURL;
54 extern NSString *
const VLCMetaInformationArtwork;
55 extern NSString *
const VLCMetaInformationTrackID;
56 extern NSString *
const VLCMetaInformationTrackTotal;
57 extern NSString *
const VLCMetaInformationDirector;
58 extern NSString *
const VLCMetaInformationSeason;
59 extern NSString *
const VLCMetaInformationEpisode;
60 extern NSString *
const VLCMetaInformationShowName;
61 extern NSString *
const VLCMetaInformationActors;
62 extern NSString *
const VLCMetaInformationAlbumArtist;
63 extern NSString *
const VLCMetaInformationDiscNumber;
69 extern NSString *
const VLCMediaMetaChanged;
75 typedef NS_ENUM(NSInteger, VLCMediaState) {
76 VLCMediaStateNothingSpecial,
77 VLCMediaStateBuffering,
95 - (void)mediaMetaDataDidChange:(
VLCMedia *)aMedia;
102 - (void)mediaDidFinishParsing:(
VLCMedia *)aMedia;
121 + (instancetype)mediaWithURL:(NSURL *)anURL;
129 + (instancetype)mediaWithPath:(NSString *)aPath;
137 + (NSString *)codecNameForFourCC:(uint32_t)fourcc trackType:(NSString *)trackType;
146 + (instancetype)mediaAsNodeWithName:(NSString *)aName;
154 - (instancetype)initWithURL:(NSURL *)anURL;
161 - (instancetype)initWithPath:(NSString *)aPath;
174 - (instancetype)initWithStream:(NSInputStream *)stream;
181 - (instancetype)initAsNodeWithName:(NSString *)aName;
186 typedef NS_ENUM(NSUInteger, VLCMediaOrientation) {
187 VLCMediaOrientationTopLeft,
188 VLCMediaOrientationTopRight,
189 VLCMediaOrientationBottomLeft,
190 VLCMediaOrientationBottomRight,
191 VLCMediaOrientationLeftTop,
192 VLCMediaOrientationLeftBottom,
193 VLCMediaOrientationRightTop,
194 VLCMediaOrientationRightBottom
200 typedef NS_ENUM(NSUInteger, VLCMediaProjection) {
201 VLCMediaProjectionRectangular,
202 VLCMediaProjectionEquiRectangular,
203 VLCMediaProjectionCubemapLayoutStandard = 0x100
212 VLCMediaTypeDirectory,
215 VLCMediaTypePlaylist,
222 @property (readonly) VLCMediaType
mediaType;
233 - (NSComparisonResult)compare:(
VLCMedia *)media;
239 @property (nonatomic, weak) id<VLCMediaDelegate>
delegate;
256 - (
VLCTime *)lengthWaitUntilDate:(NSDate *)aDate;
262 @property (nonatomic, readonly) BOOL isParsed
__attribute__((deprecated));
267 typedef NS_ENUM(
unsigned, VLCMediaParsedStatus)
269 VLCMediaParsedStatusInit = 0,
270 VLCMediaParsedStatusSkipped,
271 VLCMediaParsedStatusFailed,
272 VLCMediaParsedStatusTimeout,
273 VLCMediaParsedStatusDone
278 @property (nonatomic, readonly) VLCMediaParsedStatus
parsedStatus;
283 @property (nonatomic, readonly, strong) NSURL *
url;
296 - (NSString *)metadataForKey:(NSString *)key;
304 - (void)setMetadata:(NSString *)data forKey:(NSString *)key;
320 @property (nonatomic, readonly) VLCMediaState
state;
559 - (void)addOptions:(NSDictionary*)options;
576 - (int)storeCookie:(NSString * _Nonnull)cookie
577 forHost:(NSString * _Nonnull)host
578 path:(NSString * _Nonnull)path;
594 @property (NS_NONATOMIC_IOSONLY, readonly, copy, nullable) NSDictionary *
stats;
596 #pragma mark - individual stats 683 NS_ASSUME_NONNULL_END