Skip to content

Commit

Permalink
Merge branch 'release/2.5.5'
Browse files Browse the repository at this point in the history
  • Loading branch information
defagos committed Mar 19, 2019
2 parents e0608cb + 532cc9c commit 7b7058f
Show file tree
Hide file tree
Showing 60 changed files with 1,295 additions and 597 deletions.
6 changes: 4 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,7 @@ xcuserdata

/Carthage

/fastlane/report.xml
/fastlane/test_output
/fastlane/*.xml

/vendor
/.bundle
2 changes: 1 addition & 1 deletion Cartfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
github "SRGSSR/libextobjc" "0.6_srg1"
github "SRGSSR/MAKVONotificationCenter" "1.0_srg2"
github "SRGSSR/srglogger-ios" "1.0.7"
github "SRGSSR/srglogger-ios" "1.0.8"
2 changes: 1 addition & 1 deletion Cartfile.resolved
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
github "SRGSSR/MAKVONotificationCenter" "1.0_srg2"
github "SRGSSR/libextobjc" "0.6_srg1"
github "SRGSSR/srglogger-ios" "1.0.7"
github "SRGSSR/srglogger-ios" "1.0.8"
10 changes: 5 additions & 5 deletions Demo/Resources/Images.xcassets/AppIcon.appiconset/Contents.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
{
"size" : "29x29",
"idiom" : "iphone",
"filename" : "Icon-Small@2x-1.png",
"filename" : "[email protected]",
"scale" : "2x"
},
{
Expand All @@ -25,7 +25,7 @@
{
"size" : "40x40",
"idiom" : "iphone",
"filename" : "Icon-Small-40@2x-1.png",
"filename" : "[email protected]",
"scale" : "2x"
},
{
Expand Down Expand Up @@ -65,7 +65,7 @@
{
"size" : "29x29",
"idiom" : "ipad",
"filename" : "[email protected]",
"filename" : "Icon-Small@2x-1.png",
"scale" : "2x"
},
{
Expand All @@ -77,7 +77,7 @@
{
"size" : "40x40",
"idiom" : "ipad",
"filename" : "[email protected]",
"filename" : "Icon-Small-40@2x-1.png",
"scale" : "2x"
},
{
Expand All @@ -101,7 +101,7 @@
{
"size" : "1024x1024",
"idiom" : "ios-marketing",
"filename" : "logo.png",
"filename" : "Icon-AppStore@2x.png",
"scale" : "1x"
}
],
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Demo/Resources/Images.xcassets/AppIcon.appiconset/Icon-76.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Demo/Resources/Images.xcassets/AppIcon.appiconset/Icon-Small-40.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Demo/Resources/Images.xcassets/AppIcon.appiconset/Icon-Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
23 changes: 23 additions & 0 deletions Demo/Resources/Images.xcassets/logo.imageset/Contents.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"images" : [
{
"idiom" : "universal",
"filename" : "logo.png",
"scale" : "1x"
},
{
"idiom" : "universal",
"filename" : "[email protected]",
"scale" : "2x"
},
{
"idiom" : "universal",
"filename" : "[email protected]",
"scale" : "3x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed Demo/Resources/LaunchImage.png
Binary file not shown.
19 changes: 13 additions & 6 deletions Demo/Resources/LaunchScreen.xib
Original file line number Diff line number Diff line change
@@ -1,32 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="11201" systemVersion="16A323" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14460.31" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11161"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14460.20"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<view contentMode="scaleToFill" id="iN0-l3-epB">
<rect key="frame" x="0.0" y="0.0" width="480" height="480"/>
<rect key="frame" x="0.0" y="0.0" width="704" height="668"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="LaunchImage.png" translatesAutoresizingMaskIntoConstraints="NO" id="5B4-x2-6zS"/>
<imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="logo" translatesAutoresizingMaskIntoConstraints="NO" id="5B4-x2-6zS">
<rect key="frame" x="0.0" y="0.0" width="704" height="668"/>
</imageView>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstItem="5B4-x2-6zS" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="Irt-SF-BIg"/>
<constraint firstAttribute="trailing" secondItem="5B4-x2-6zS" secondAttribute="trailing" id="Wd8-fT-K0z"/>
<constraint firstAttribute="bottom" secondItem="5B4-x2-6zS" secondAttribute="bottom" id="dO6-9n-Jl8"/>
<constraint firstItem="5B4-x2-6zS" firstAttribute="centerX" secondItem="iN0-l3-epB" secondAttribute="centerX" id="jQ8-qo-JI7"/>
<constraint firstItem="5B4-x2-6zS" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="pfp-BQ-P1O"/>
<constraint firstItem="5B4-x2-6zS" firstAttribute="centerY" secondItem="iN0-l3-epB" secondAttribute="centerY" id="yNk-be-zX5"/>
</constraints>
<nil key="simulatedStatusBarMetrics"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
<point key="canvasLocation" x="433" y="429"/>
<point key="canvasLocation" x="611.20000000000005" y="512.74362818590714"/>
</view>
</objects>
<resources>
<image name="LaunchImage.png" width="178" height="83"/>
<image name="logo" width="300" height="300"/>
</resources>
</document>
20 changes: 12 additions & 8 deletions Demo/Resources/VideoDemoConfiguration.plist
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,18 @@
<key>url</key>
<string>https://rtsvodww-vh.akamaihd.net/i/genhi/2018/genhi_20180126_full_f_1067247-,301k,101k,701k,1201k,2001k,fra-ad,.mp4.csmil/master.m3u8?audiotrack=0:fra:Fran%25C3%25A7ais,5:fra:Fran%25C3%25A7ais+%2528AD%2529</string>
</dict>
<dict>
<key>name</key>
<string>Bonjour la Suisse</string>
<key>url</key>
<string>https://rtsvodww-vh.akamaihd.net/i/docfu/2017/docfu_20170728_full_f_1027021-,301k,101k,701k,1201k,2001k,fra-ad,roh,deu,ita,.mp4.csmil/master.m3u8?audiotrack=0:fra:Fran%C3%A7ais,5:fra:Fran%C3%A7ais%20(AD),6:roh:Rh%C3%A9to-roman,7:deu:Allemand,8:ita:Italien&amp;caption=docfu/2017/docfu_20170728_full_f_1027021_fra.m3u8:fra:Fran%C3%A7ais,docfu/2017/docfu_20170728_full_f_1027021_ita.m3u8:ita:Italien,docfu/2017/docfu_20170728_full_f_1027021_gsw.m3u8:deu:Allemand</string>
</dict>
<dict>
<key>name</key>
<string>How women are taking on the Cresta Run</string>
<key>url</key>
<string>https://srgplayerswivod-vh.akamaihd.net/i/44785866/,video,.mp4.csmil/master.m3u8</string>
</dict>
<dict>
<key>name</key>
<string>Short non-streamed video</string>
Expand All @@ -72,14 +84,6 @@
<key>is360</key>
<true/>
</dict>
<dict>
<key>name</key>
<string>FIFA 360 video</string>
<key>url</key>
<string>https://eu-west-1-content.c-cast-fcc.tv/FB8732BDE45F3D10BF6F65BE11A88B05/FB8732BDE45F3D10BF6F65BE11A88B05.m3u8</string>
<key>is360</key>
<true/>
</dict>
<dict>
<key>name</key>
<string>Balloon 360</string>
Expand Down
31 changes: 22 additions & 9 deletions Demo/Sources/Helpers/ModalTransition.m
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ @interface ModalTransition ()
@property (nonatomic) id<UIViewControllerContextTransitioning> transitionContext;
@property (nonatomic) CGFloat progress;

@property (nonatomic, weak) UIView *dimmingView;

@end

@implementation ModalTransition
Expand All @@ -39,15 +41,24 @@ - (void)setupTransition:(id<UIViewControllerContextTransitioning>)transitionCont
{
NSParameterAssert(transitionContext);

UIView *toView = [transitionContext viewForKey:UITransitionContextToViewKey];
UIView *containerView = [transitionContext containerView];
UIView *toView = [transitionContext viewForKey:UITransitionContextToViewKey];
UIView *fromView = [transitionContext viewForKey:UITransitionContextFromViewKey];
NSAssert(fromView && toView, @"Do not use UIModalPresentationCustom for presentation");

UIView *dimmingView = [[UIView alloc] initWithFrame:containerView.bounds];
dimmingView.frame = containerView.bounds;
dimmingView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
dimmingView.backgroundColor = [UIColor colorWithWhite:0.f alpha:0.5f];
self.dimmingView = dimmingView;

if (self.presentation) {
[containerView addSubview:toView];
[containerView insertSubview:dimmingView aboveSubview:fromView];
}
else {
UIView *fromView = [transitionContext viewForKey:UITransitionContextFromViewKey];
[containerView insertSubview:toView belowSubview:fromView];
[containerView insertSubview:dimmingView aboveSubview:toView];
}

[self updateTransition:transitionContext withProgress:0.f];
Expand All @@ -64,27 +75,27 @@ - (void)updateTransition:(id<UIViewControllerContextTransitioning>)transitionCon

if (self.presentation) {
UIView *fromView = [transitionContext viewForKey:UITransitionContextFromViewKey];
fromView.alpha = 1.f - progress;
fromView.frame = containerView.bounds;

UIView *toView = [transitionContext viewForKey:UITransitionContextToViewKey];
toView.alpha = progress;
toView.frame = CGRectMake(0.f,
(1.f - progress) * CGRectGetMaxY(containerView.bounds),
CGRectGetWidth(containerView.bounds),
CGRectGetHeight(containerView.bounds));

self.dimmingView.alpha = progress;
}
else {
UIView *fromView = [transitionContext viewForKey:UITransitionContextFromViewKey];
fromView.alpha = 1.f - progress;
fromView.frame = CGRectMake(0.f,
progress * CGRectGetMaxY(containerView.bounds),
CGRectGetWidth(containerView.bounds),
CGRectGetHeight(containerView.bounds));

UIView *toView = [transitionContext viewForKey:UITransitionContextToViewKey];
toView.alpha = progress;
toView.frame = containerView.bounds;

self.dimmingView.alpha = 1.f - progress;
}
}

Expand All @@ -98,6 +109,8 @@ - (void)completeTransition:(id<UIViewControllerContextTransitioning>)transitionC
[toView removeFromSuperview];
}

[self.dimmingView removeFromSuperview];

[transitionContext completeTransition:success];
}

Expand All @@ -109,7 +122,7 @@ - (void)updateInteractiveTransitionWithProgress:(CGFloat)progress
return;
}

[self.transitionContext updateInteractiveTransition:progress];
[self.transitionContext updateInteractiveTransition:progress];
[self updateTransition:self.transitionContext withProgress:progress];
}

Expand Down Expand Up @@ -149,7 +162,7 @@ - (void)finishInteractiveTransition

- (NSTimeInterval)transitionDuration:(id<UIViewControllerContextTransitioning>)transitionContext
{
return 0.4;
return 0.3;
}

- (void)animateTransition:(id<UIViewControllerContextTransitioning>)transitionContext
Expand Down Expand Up @@ -178,7 +191,7 @@ - (void)startInteractiveTransition:(id<UIViewControllerContextTransitioning>)tra

- (UIViewAnimationCurve)completionCurve
{
return UIViewAnimationCurveLinear;
return UIViewAnimationCurveEaseInOut;
}

@end
15 changes: 11 additions & 4 deletions Demo/Sources/Players/Segments/SegmentsPlayerViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,22 @@ - (instancetype)initWithMedia:(Media *)media
return viewController;
}

#pragma mark View lifecycle
#pragma mark Overrides

- (void)viewDidLoad
- (void)awakeFromNib
{
[super viewDidLoad];
[super awakeFromNib];

// Use a custom transition, some subtle issues were discovered with incorrect implementations, when animated
// view controllers have an AVPlayer somewhere.
self.transitioningDelegate = self;
}

#pragma mark View lifecycle

- (void)viewDidLoad
{
[super viewDidLoad];

self.timelineSlider.delegate = self;
self.blockingOverlayView.hidden = YES;
Expand Down Expand Up @@ -196,7 +203,7 @@ - (IBAction)pullDown:(UIPanGestureRecognizer *)panGestureRecognizer
case UIGestureRecognizerStateEnded: {
// Finish the transition if the view was dragged by 20% and the user is dragging downwards
CGFloat velocity = [panGestureRecognizer velocityInView:self.view].y;
if (progress > 0.2f && velocity >= 0.f) {
if (velocity > 0.f || (velocity == 0.f && progress > 0.5f)) {
[self.interactiveTransition finishInteractiveTransition];
}
else {
Expand Down
9 changes: 6 additions & 3 deletions Framework/Resources/de.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@
Title of the pop over view to select audio or subtitles */
"Audio and Subtitles" = "Ton und Untertitel";

/* Recommended option to let subtitles be automatically selected based on user settings */
"Auto (Recommended)" = "Automatisch (empfohlen)";

/* Very short text on left time label when playing a live stream */
"Live" = "Live";

/* Option to remove subtitles in alternate tracks popup menu */
"No subtitles" = "Keine Untertitel";
/* Option to disable subtitles */
"Off" = "Aus";

/* AirPlay description on which device the media is played. */
"Playback on «%@»" = "Wiedergabe auf «%@»";
Expand All @@ -24,4 +27,4 @@
"The media cannot be played" = "Inhalt kann nicht abgespielt werden";

/* Instructions for subtitles customization */
"You can adjust the appearance of subtitles in the Accessibility section of the Settings application." = "Sie können in der iOS App «Einstellungen» unter «Bedienungshilfen» die Darstellung von Untertiteln anpassen.";
"You can adjust subtitle appearance and automatic selection behavior in the Accessibility section of the Settings application." = "Sie können das Aussehen der Untertitel und die automatische Auswahl in iOS Einstellungen unter Bedienungshilfen festlegen.";
9 changes: 6 additions & 3 deletions Framework/Resources/en.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@
Title of the pop over view to select audio or subtitles */
"Audio and Subtitles" = "Audio and subtitles";

/* Recommended option to let subtitles be automatically selected based on user settings */
"Auto (Recommended)" = "Auto (Recommended)";

/* Very short text on left time label when playing a live stream */
"Live" = "Live";

/* Option to remove subtitles in alternate tracks popup menu */
"No subtitles" = "No subtitles";
/* Option to disable subtitles */
"Off" = "Off";

/* AirPlay description on which device the media is played. */
"Playback on «%@»" = "Playback on «%@»";
Expand All @@ -24,4 +27,4 @@
"The media cannot be played" = "The media cannot be played";

/* Instructions for subtitles customization */
"You can adjust the appearance of subtitles in the Accessibility section of the Settings application." = "You can adjust the appearance of subtitles in the Accessibility section of the Settings application.";
"You can adjust subtitle appearance and automatic selection behavior in the Accessibility section of the Settings application." = "You can adjust subtitle appearance and automatic selection behavior in the Accessibility section of the Settings application.";
9 changes: 6 additions & 3 deletions Framework/Resources/fr.lproj/Localizable.strings
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@
Title of the pop over view to select audio or subtitles */
"Audio and Subtitles" = "Audio et sous-titres";

/* Recommended option to let subtitles be automatically selected based on user settings */
"Auto (Recommended)" = "Automatique (recommandé)";

/* Very short text on left time label when playing a live stream */
"Live" = "En direct";

/* Option to remove subtitles in alternate tracks popup menu */
"No subtitles" = "Pas de sous-titres";
/* Option to disable subtitles */
"Off" = "Désactivé";

/* AirPlay description on which device the media is played. */
"Playback on «%@»" = "Lecture sur «%@»";
Expand All @@ -24,4 +27,4 @@
"The media cannot be played" = "Le contenu ne peut être joué";

/* Instructions for subtitles customization */
"You can adjust the appearance of subtitles in the Accessibility section of the Settings application." = "Vous pouvez ajuster l’apparence des sous-titres dans la section Accessibilité de l’application Réglages.";
"You can adjust subtitle appearance and automatic selection behavior in the Accessibility section of the Settings application." = "Vous pouvez ajuster l’apparence et la sélection automatique des sous-titres dans la section Accessibilité de l’application Réglages.";
Loading

0 comments on commit 7b7058f

Please sign in to comment.