Prechádzať zdrojové kódy

VLCMedia: deprecate synchronousParse and remove any internal use

Felix Paul Kühne 9 rokov pred
rodič
commit
9d36c8370f
3 zmenil súbory, kde vykonal 12 pridanie a 6 odobranie
  1. 3 1
      Headers/Public/VLCMedia.h
  2. 1 1
      NEWS
  3. 8 4
      Sources/VLCMedia.m

+ 3 - 1
Headers/Public/VLCMedia.h

@@ -437,8 +437,10 @@ extern NSString *const VLCMediaTracksInformationTypeUnknown;
 /**
  * Trigger a synchronous parsing of the media
  * the selector won't return until parsing finished
+ *
+ * \note Use parseWithOptions: instead
  */
-- (void)synchronousParse;
+- (void)synchronousParse __attribute__((deprecated));
 
 
 enum {

+ 1 - 1
NEWS

@@ -57,7 +57,7 @@ Deprecated APIs:
 - VLCAudio
   - setMute:
 - VLCMedia
-  - parse, isParsed
+  - parse, isParsed, synchronousParse
 - VLCMediaDiscoverer
   - availableMediaDiscoverer, localizedName
 - VLCMediaPlayer

+ 8 - 4
Sources/VLCMedia.m

@@ -622,8 +622,10 @@ NSString *const VLCMediaTracksInformationTextEncoding = @"encoding"; // NSString
 - (NSArray *)tracksInformation
 {
     VLCMediaParsedStatus parsedStatus = [self parsedStatus];
-    if (parsedStatus == VLCMediaParsedStatusSkipped || parsedStatus == VLCMediaParsedStatusInit)
-        [self synchronousParse];
+    if (parsedStatus == VLCMediaParsedStatusSkipped || parsedStatus == VLCMediaParsedStatusInit) {
+        [self parseWithOptions:VLCMediaParseLocal|VLCMediaParseNetwork];
+        return @[];
+    }
 
     libvlc_media_track_t **tracksInfo;
     unsigned int count = libvlc_media_tracks_get(p_md, &tracksInfo);
@@ -686,8 +688,10 @@ NSString *const VLCMediaTracksInformationTextEncoding = @"encoding"; // NSString
 #if TARGET_OS_IPHONE
     // Trigger parsing if needed
     VLCMediaParsedStatus parsedStatus = [self parsedStatus];
-    if (parsedStatus == VLCMediaParsedStatusSkipped || parsedStatus == VLCMediaParsedStatusInit)
-        [self synchronousParse];
+    if (parsedStatus == VLCMediaParsedStatusSkipped || parsedStatus == VLCMediaParsedStatusInit) {
+        [self parseWithOptions:VLCMediaParseLocal|VLCMediaParseNetwork];
+        sleep(2);
+    }
 
     NSUInteger biggestWidth = 0;
     NSUInteger biggestHeight = 0;