From a1a4e0c44bb2b3d7a71d1f602dfc7d64ccef5c1a Mon Sep 17 00:00:00 2001 From: Hampton Maxwell Date: Mon, 11 Jun 2018 20:55:23 -0700 Subject: [PATCH] Report textTracks in onLoad --- ios/RCTVideo.m | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/ios/RCTVideo.m b/ios/RCTVideo.m index 253f48da..d2cc3114 100644 --- a/ios/RCTVideo.m +++ b/ios/RCTVideo.m @@ -415,6 +415,7 @@ static NSString *const timedMetadata = @"timedMetadata"; @"height": height, @"orientation": orientation }, + @"textTracks": [self getTextTrackInfo], @"target": self.reactTag}); } @@ -694,6 +695,26 @@ static NSString *const timedMetadata = @"timedMetadata"; [_player.currentItem selectMediaOption:option inMediaSelectionGroup:group]; } +- (NSArray *)getTextTrackInfo +{ + NSMutableArray *textTracks = [[NSMutableArray alloc] init]; + AVMediaSelectionGroup *group = [_player.currentItem.asset + mediaSelectionGroupForMediaCharacteristic:AVMediaCharacteristicLegible]; + for (int i = 0; i < group.options.count; ++i) { + AVMediaSelectionOption *currentOption = [group.options objectAtIndex:i]; + NSString *title = [[[currentOption commonMetadata] + valueForKey:@"value"] + objectAtIndex:0]; + NSDictionary *textTrack = @{ + @"index": [NSNumber numberWithInt:i], + @"title": title, + @"language": [currentOption extendedLanguageTag] + }; + [textTracks addObject:textTrack]; + } + return textTracks; +} + - (BOOL)getFullscreen { return _fullscreenPlayerPresented;