فهرست منبع

VLCMedia: add delegate method called when media's meta data is changed independently if this was done by preparsing or not

Felix Paul Kühne 11 سال پیش
والد
کامیت
55461fb6a4
3فایلهای تغییر یافته به همراه16 افزوده شده و 1 حذف شده
  1. 8 1
      Headers/Public/VLCMedia.h
  2. 5 0
      NEWS
  3. 3 0
      Sources/VLCMedia.m

+ 8 - 1
Headers/Public/VLCMedia.h

@@ -97,7 +97,14 @@ typedef NSInteger VLCMediaState;
  * \param oldValue The old meta data value.
  * \param key The key of the value that was changed.
  */
-- (void)media:(VLCMedia *)aMedia metaValueChangedFrom:(id)oldValue forKey:(NSString *)key;
+- (void)media:(VLCMedia *)aMedia metaValueChangedFrom:(id)oldValue forKey:(NSString *)key __attribute__((deprecated));
+
+/**
+ * Delegate method called whenever the media's meta data was changed for whatever reason
+ * \note this is called more often than mediaDidFinishParsing, so it may be less efficient
+ * \param aMedia The media resource whose meta data has been changed.
+ */
+- (void)mediaMetaDataDidChange:(VLCMedia *)aMedia;
 
 /**
  * Delegate method called whenever the media was parsed.

+ 5 - 0
NEWS

@@ -24,11 +24,16 @@ New APIs:
   - added initWithOptions selector matching VLCMediaPlayer's implementation
   - added pause selector
   - added previous, next and playItemAtIndex selectors
+- VLCMedia:
+  - added delegate method mediaMetaDataDidChange
 
 Modified API behavior:
 - VLCMediaPlayer:
   - implementing mediaPlayerTimeChanged is now optional
 
+Deprecated APIs:
+- VLCMedia:
+  - media:metaValueChangedFrom:forKey:
 
 Changes within VLCKit between 2.0.0 and 2.1.0:
 ----------------------------------------------

+ 3 - 0
Sources/VLCMedia.m

@@ -906,6 +906,9 @@ NSString *const VLCMediaTracksInformationTextEncoding = @"encoding"; // NSString
 - (void)metaChanged:(NSString *)metaType
 {
     [self fetchMetaInformationFromLibVLCWithType:metaType];
+
+    if ([delegate respondsToSelector:@selector(mediaMetaDataDidChange:)])
+        [self.delegate mediaMetaDataDidChange:self];
 }
 
 - (void)subItemAdded