Commit 11a434c6 authored by Felix Paul Kühne's avatar Felix Paul Kühne

added support for enhanced playback sync with SPU and audio delays (close #11236)

parent b834227e
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="5053" systemVersion="12F45" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="3.0" toolsVersion="6249" systemVersion="14A379a" targetRuntime="iOS.CocoaTouch.iPad" propertyAccessControl="none">
<dependencies>
<deployment defaultVersion="1552" identifier="iOS"/>
<development version="5000" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3733"/>
<deployment identifier="iOS"/>
<development version="5100" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6243"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="VLCMovieViewController">
......@@ -12,6 +12,9 @@
<outlet property="artistNameLabel" destination="303" id="306"/>
<outlet property="artworkImageView" destination="g3j-bZ-K3S" id="fPn-6f-Kez"/>
<outlet property="aspectRatioButton" destination="198" id="229"/>
<outlet property="audioDelayIndicator" destination="FYO-Rd-Vjg" id="FVE-DI-BJ2"/>
<outlet property="audioDelayLabel" destination="bQc-dz-mB8" id="69P-Q3-3l3"/>
<outlet property="audioDelaySlider" destination="ahb-li-nqH" id="tQp-Zu-Sqd"/>
<outlet property="audioSwitcherButton" destination="277" id="292"/>
<outlet property="backButton" destination="102" id="111"/>
<outlet property="brightnessLabel" destination="148" id="165"/>
......@@ -43,6 +46,9 @@
<outlet property="saturationSlider" destination="149" id="168"/>
<outlet property="scrubHelpLabel" destination="243" id="247"/>
<outlet property="scrubIndicatorView" destination="242" id="245"/>
<outlet property="spuDelayIndicator" destination="cTE-tb-Z89" id="Ll9-wY-xca"/>
<outlet property="spuDelayLabel" destination="NX8-Zc-K6Y" id="WLd-cA-fUn"/>
<outlet property="spuDelaySlider" destination="juX-HR-PqD" id="x4D-ki-Lwk"/>
<outlet property="statusLabel" destination="205" id="206"/>
<outlet property="subtitleContainer" destination="dvM-AB-hFc" id="5hO-zx-4tG"/>
<outlet property="subtitleSwitcherButton" destination="273" id="288"/>
......@@ -112,6 +118,7 @@
</button>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
</view>
<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="8">
<rect key="frame" x="0.0" y="0.0" width="768" height="1024"/>
......@@ -185,6 +192,75 @@
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.60999999999999999" colorSpace="custom" customColorSpace="calibratedWhite"/>
</view>
<view contentMode="scaleToFill" id="176" userLabel="Controls panel" customClass="VLCFrostedGlasView">
<rect key="frame" x="123" y="849" width="320" height="122"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
<subviews>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Audio delay" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="bQc-dz-mB8">
<rect key="frame" x="20" y="6" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-30" maxValue="30" id="ahb-li-nqH" customClass="VLCSlider">
<rect key="frame" x="18" y="20" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="MB1-sB-W8m"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="FYO-Rd-Vjg">
<rect key="frame" x="20" y="6" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Subtitles delay" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="NX8-Zc-K6Y">
<rect key="frame" x="20" y="43" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-30" maxValue="30" id="juX-HR-PqD" customClass="VLCSlider">
<rect key="frame" x="18" y="57" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="acG-8w-Mgd"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="cTE-tb-Z89">
<rect key="frame" x="20" y="43" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Playback speed" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="181">
<rect key="frame" x="20" y="81" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-34" maxValue="34" id="180" customClass="VLCSlider">
<rect key="frame" x="18" y="95" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="4Xo-T4-hPJ"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="179">
<rect key="frame" x="20" y="81" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</view>
<view hidden="YES" userInteractionEnabled="NO" contentMode="scaleToFill" id="123" userLabel="Playing Externally View">
<rect key="frame" x="184" y="312" width="400" height="400"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/>
......@@ -212,33 +288,6 @@
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
</view>
<view contentMode="scaleToFill" id="176" userLabel="Controls panel" customClass="VLCFrostedGlasView">
<rect key="frame" x="224" y="928" width="320" height="46"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-34" maxValue="34" id="180" customClass="VLCSlider">
<rect key="frame" x="18" y="19" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSpeedSliderAction:" destination="-1" eventType="valueChanged" id="192"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Playback speed" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="181">
<rect key="frame" x="20" y="5" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="179">
<rect key="frame" x="20" y="5" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</view>
<label hidden="YES" opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Status Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="205" customClass="VLCStatusLabel">
<rect key="frame" x="224" y="799" width="320" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
......@@ -499,6 +548,7 @@
</subviews>
<color key="backgroundColor" white="0.0" alpha="1" colorSpace="calibratedWhite"/>
<simulatedStatusBarMetrics key="simulatedStatusBarMetrics" statusBarStyle="blackOpaque"/>
<simulatedScreenMetrics key="simulatedDestinationMetrics"/>
</view>
</objects>
<resources>
......@@ -514,4 +564,9 @@
<image name="subtitleIcon.png" width="19" height="19"/>
<image name="videoEffectsIcon.png" width="21" height="21"/>
</resources>
<simulatedMetricsContainer key="defaultSimulatedMetrics">
<simulatedStatusBarMetrics key="statusBar"/>
<simulatedOrientationMetrics key="orientation"/>
<simulatedScreenMetrics key="destination"/>
</simulatedMetricsContainer>
</document>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="5053" systemVersion="12F45" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="6249" systemVersion="14A379a" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none">
<dependencies>
<deployment defaultVersion="1552" identifier="iOS"/>
<development version="5000" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="3733"/>
<deployment identifier="iOS"/>
<development version="5100" identifier="xcode"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="6243"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="VLCMovieViewController">
......@@ -12,6 +12,9 @@
<outlet property="artistNameLabel" destination="279" id="283"/>
<outlet property="artworkImageView" destination="yK6-Ph-SVE" id="Cm9-7F-iYZ"/>
<outlet property="aspectRatioButton" destination="202" id="222"/>
<outlet property="audioDelayIndicator" destination="SDv-JW-DMi" id="Krq-0k-T6o"/>
<outlet property="audioDelayLabel" destination="8cb-fw-YeF" id="KWQ-n9-3mr"/>
<outlet property="audioDelaySlider" destination="oQe-Uu-1HY" id="6Me-OE-Dpl"/>
<outlet property="audioSwitcherButton" destination="78" id="98"/>
<outlet property="audioSwitcherButtonLandscape" destination="awR-Dt-S0B" id="SSl-4q-pof"/>
<outlet property="backButton" destination="85" id="96"/>
......@@ -37,7 +40,7 @@
<outlet property="playbackSpeedButtonLandscape" destination="WXm-go-jev" id="TbP-eA-CzG"/>
<outlet property="playbackSpeedIndicator" destination="185" id="197"/>
<outlet property="playbackSpeedLabel" destination="167" id="198"/>
<outlet property="playbackSpeedSlider" destination="168" id="196"/>
<outlet property="playbackSpeedSlider" destination="168" id="M6M-8F-t8T"/>
<outlet property="playbackSpeedView" destination="165" id="208"/>
<outlet property="playingExternallyDescription" destination="109" id="113"/>
<outlet property="playingExternallyTitle" destination="110" id="114"/>
......@@ -50,6 +53,9 @@
<outlet property="saturationSlider" destination="135" id="152"/>
<outlet property="scrubHelpLabel" destination="246" id="249"/>
<outlet property="scrubIndicatorView" destination="241" id="247"/>
<outlet property="spuDelayIndicator" destination="IzS-81-KII" id="IXf-sX-Ier"/>
<outlet property="spuDelayLabel" destination="KeW-Xp-9I6" id="LMS-pz-Ajj"/>
<outlet property="spuDelaySlider" destination="JRI-0m-C0M" id="f8j-Iq-sH3"/>
<outlet property="statusLabel" destination="210" id="211"/>
<outlet property="subtitleContainer" destination="umS-fw-84Z" id="cbT-b6-hSn"/>
<outlet property="subtitleContainerLandscape" destination="cvq-YB-u9T" id="Qgb-5z-1Ij"/>
......@@ -118,6 +124,7 @@
</button>
</subviews>
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
</view>
<barButtonItem systemItem="done" id="85">
<connections>
......@@ -164,30 +171,72 @@
</accessibility>
</view>
<view contentMode="scaleToFill" id="165" userLabel="Controls panel" customClass="VLCFrostedGlasView">
<rect key="frame" x="0.0" y="395" width="320" height="46"/>
<rect key="frame" x="0.0" y="219" width="320" height="131"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
<subviews>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-34" maxValue="34" id="168" customClass="VLCSlider">
<rect key="frame" x="18" y="19" width="284" height="29"/>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Audio delay" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="8cb-fw-YeF">
<rect key="frame" x="20" y="7" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="SDv-JW-DMi">
<rect key="frame" x="20" y="7" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-30" maxValue="30" id="oQe-Uu-1HY" customClass="VLCSlider">
<rect key="frame" x="18" y="20" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSpeedSliderAction:" destination="-1" eventType="valueChanged" id="195"/>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="MaZ-VI-xre"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Subtitles delay" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="KeW-Xp-9I6">
<rect key="frame" x="20" y="44" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="IzS-81-KII">
<rect key="frame" x="20" y="44" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-30" maxValue="30" id="JRI-0m-C0M" customClass="VLCSlider">
<rect key="frame" x="18" y="58" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="NUV-tI-BV8"/>
</connections>
</slider>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="Playback speed" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="167">
<rect key="frame" x="20" y="5" width="280" height="21"/>
<rect key="frame" x="20" y="83" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" text="1.00x" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="185">
<rect key="frame" x="20" y="5" width="280" height="21"/>
<rect key="frame" x="20" y="83" width="280" height="21"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="13"/>
<color key="textColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<nil key="highlightedColor"/>
</label>
<slider opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" minValue="-34" maxValue="34" id="168" customClass="VLCSlider">
<rect key="frame" x="18" y="97" width="284" height="29"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<connections>
<action selector="playbackSliderAction:" destination="-1" eventType="valueChanged" id="6n6-9i-WXd"/>
</connections>
</slider>
</subviews>
</view>
<view contentMode="scaleToFill" id="117" userLabel="Controls panel" customClass="VLCFrostedGlasView">
......@@ -512,10 +561,6 @@
<color key="backgroundColor" white="0.0" alpha="1" colorSpace="calibratedWhite"/>
<simulatedScreenMetrics key="simulatedDestinationMetrics" type="retina4"/>
</view>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" id="grE-Qn-u2K">
<rect key="frame" x="0.0" y="0.0" width="240" height="128"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
</imageView>
<view tag="1" contentMode="scaleToFill" id="e7l-vK-ape" userLabel="Controls panel" customClass="VLCFrostedGlasView">
<rect key="frame" x="0.0" y="0.0" width="480" height="50"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" widthSizable="YES" flexibleMaxX="YES" flexibleMinY="YES"/>
......@@ -675,6 +720,7 @@
</button>
</subviews>
<color key="backgroundColor" red="0.1215686275" green="0.1215686275" blue="0.1215686275" alpha="1" colorSpace="calibratedRGB"/>
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
</view>
</objects>
<resources>
......@@ -690,4 +736,9 @@
<image name="subtitleIcon.png" width="19" height="19"/>
<image name="videoEffectsIcon.png" width="21" height="21"/>
</resources>
<simulatedMetricsContainer key="defaultSimulatedMetrics">
<simulatedStatusBarMetrics key="statusBar"/>
<simulatedOrientationMetrics key="orientation"/>
<simulatedScreenMetrics key="destination" type="retina4"/>
</simulatedMetricsContainer>
</document>
B"CHOOSE_AUDIO_TRACK"="Choose Audio Track";
......
......@@ -71,6 +71,12 @@
@property (nonatomic, strong) IBOutlet UISlider *playbackSpeedSlider;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedLabel;
@property (nonatomic, strong) IBOutlet UILabel *playbackSpeedIndicator;
@property (nonatomic, strong) IBOutlet UISlider *audioDelaySlider;
@property (nonatomic, strong) IBOutlet UILabel *audioDelayLabel;
@property (nonatomic, strong) IBOutlet UILabel *audioDelayIndicator;
@property (nonatomic, strong) IBOutlet UISlider *spuDelaySlider;
@property (nonatomic, strong) IBOutlet UILabel *spuDelayLabel;
@property (nonatomic, strong) IBOutlet UILabel *spuDelayIndicator;
@property (nonatomic, strong) IBOutlet UIButton *aspectRatioButton;
@property (nonatomic, strong) IBOutlet VLCFrostedGlasView *scrubIndicatorView;
......@@ -106,7 +112,7 @@
- (IBAction)videoFilterToggle:(id)sender;
- (IBAction)videoFilterSliderAction:(id)sender;
- (IBAction)playbackSpeedSliderAction:(id)sender;
- (IBAction)playbackSliderAction:(id)sender;
- (IBAction)videoDimensionAction:(id)sender;
@end
......@@ -162,6 +162,12 @@
_playbackSpeedLabel.text = NSLocalizedString(@"PLAYBACK_SPEED", nil);
_playbackSpeedSlider.accessibilityLabel = _playbackSpeedLabel.text;
_playbackSpeedSlider.isAccessibilityElement = YES;
_audioDelayLabel.text = NSLocalizedString(@"AUDIO_DELAY", nil);
_audioDelaySlider.accessibilityLabel = _audioDelayLabel.text;
_audioDelaySlider.isAccessibilityElement = YES;
_spuDelayLabel.text = NSLocalizedString(@"SPU_DELAY", nil);
_spuDelaySlider.accessibilityLabel = _spuDelayLabel.text;
_spuDelaySlider.isAccessibilityElement = YES;
_positionSlider.accessibilityLabel = NSLocalizedString(@"PLAYBACK_POSITION", nil);
_positionSlider.isAccessibilityElement = YES;
......@@ -591,6 +597,12 @@
self.playbackSpeedSlider.value = [self _playbackSpeed];
[self _updatePlaybackSpeedIndicator];
self.audioDelaySlider.value = _mediaPlayer.currentAudioPlaybackDelay / 1000000;
self.audioDelayIndicator.text = [NSString stringWithFormat:@"%1.00f s", self.audioDelaySlider.value];
self.spuDelaySlider.value = _mediaPlayer.currentVideoSubTitleDelay / 1000000;
self.spuDelayIndicator.text = [NSString stringWithFormat:@"%1.00f s", self.spuDelaySlider.value];
_currentAspectRatioMask = 0;
_mediaPlayer.videoAspectRatio = NULL;
......@@ -1294,14 +1306,23 @@
}
#pragma mark - playback view
- (IBAction)playbackSpeedSliderAction:(UISlider *)sender
{
double speed = pow(2, sender.value / 17.);
float rate = INPUT_RATE_DEFAULT / speed;
if (_currentPlaybackRate != rate)
[_mediaPlayer setRate:INPUT_RATE_DEFAULT / rate];
_currentPlaybackRate = rate;
[self _updatePlaybackSpeedIndicator];
- (IBAction)playbackSliderAction:(UISlider *)sender
{
if (sender == _playbackSpeedSlider) {
double speed = pow(2, sender.value / 17.);
float rate = INPUT_RATE_DEFAULT / speed;
if (_currentPlaybackRate != rate)
[_mediaPlayer setRate:INPUT_RATE_DEFAULT / rate];
_currentPlaybackRate = rate;
[self _updatePlaybackSpeedIndicator];
} else if (sender == _audioDelaySlider) {
_mediaPlayer.currentAudioPlaybackDelay = _audioDelaySlider.value * 1000000;
_audioDelayIndicator.text = [NSString stringWithFormat:@"%1.2f s", _audioDelaySlider.value];
} else if (sender == _spuDelaySlider) {
_mediaPlayer.currentVideoSubTitleDelay = _spuDelaySlider.value * 1000000;
_spuDelayIndicator.text = [NSString stringWithFormat:@"%1.00f s", _spuDelaySlider.value];
}
[self _resetIdleTimer];
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment