Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 193c9e9

Browse files
committed
【iOS,macOS】restructure part 4 Sync Audio And Video.
1 parent 33364a7 commit 193c9e9

File tree

15 files changed

+495
-362
lines changed

15 files changed

+495
-362
lines changed

‎Example/Common/4.Movie Player/0x36/MR0x36ViewController.h‎

Lines changed: 0 additions & 31 deletions
This file was deleted.

‎Example/Common/4.Movie Player/AudioEmbed/MRAudioEmbedViewController-iOS.xib‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,13 @@
22
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
33
<device id="retina6_1" orientation="landscape" appearance="light"/>
44
<dependencies>
5-
<deployment identifier="iOS"/>
65
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/>
76
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
87
<capability name="System colors in document resources" minToolsVersion="11.0"/>
98
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
109
</dependencies>
1110
<objects>
12-
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MRVideoEmbedViewController">
11+
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MRAudioEmbedViewController">
1312
<connections>
1413
<outlet property="audioFmtSegCtrl" destination="jGI-4a-7Ui" id="TJp-n0-QGp"/>
1514
<outlet property="audioSampleSegCtrl" destination="yUv-Ko-4g7" id="N3j-0a-kzU"/>

‎Example/Common/4.Movie Player/PlayProgress/MRPlayProgressViewController-iOS.xib‎

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,13 @@
22
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
33
<device id="retina6_1" orientation="landscape" appearance="light"/>
44
<dependencies>
5-
<deployment identifier="iOS"/>
65
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/>
76
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
87
<capability name="System colors in document resources" minToolsVersion="11.0"/>
98
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
109
</dependencies>
1110
<objects>
12-
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MRVideoEmbedViewController">
11+
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MRPlayProgressViewController">
1312
<connections>
1413
<outlet property="audioFmtSegCtrl" destination="jGI-4a-7Ui" id="TJp-n0-QGp"/>
1514
<outlet property="audioSampleSegCtrl" destination="yUv-Ko-4g7" id="N3j-0a-kzU"/>
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
3+
<device id="retina6_1" orientation="landscape" appearance="light"/>
4+
<dependencies>
5+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/>
6+
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
7+
<capability name="System colors in document resources" minToolsVersion="11.0"/>
8+
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
9+
</dependencies>
10+
<objects>
11+
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="MRSyncAVViewController">
12+
<connections>
13+
<outlet property="audioFmtSegCtrl" destination="jGI-4a-7Ui" id="TJp-n0-QGp"/>
14+
<outlet property="audioSampleSegCtrl" destination="yUv-Ko-4g7" id="N3j-0a-kzU"/>
15+
<outlet property="indicatorView" destination="c3R-Bl-JJX" id="yKj-QY-vs2"/>
16+
<outlet property="inputField" destination="adM-9N-T8H" id="D4J-Im-qjS"/>
17+
<outlet property="scalingSegCtrl" destination="4wY-d2-CZN" id="l91-Kg-h6z"/>
18+
<outlet property="videoFmtSegCtrl" destination="bf0-wm-lum" id="XEf-Vo-gJH"/>
19+
<outlet property="videoRendererContainer" destination="5SN-5f-aGY" id="vtN-VX-dhV"/>
20+
</connections>
21+
</placeholder>
22+
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
23+
<view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
24+
<rect key="frame" x="0.0" y="0.0" width="896" height="414"/>
25+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
26+
<subviews>
27+
<stackView opaque="NO" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" distribution="fillProportionally" alignment="center" translatesAutoresizingMaskIntoConstraints="NO" id="eBw-Qp-cGp">
28+
<rect key="frame" x="53" y="0.0" width="795" height="35"/>
29+
<subviews>
30+
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="1000" verticalHuggingPriority="251" horizontalCompressionResistancePriority="1000" text=" 视频地址:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HxB-hT-CpN">
31+
<rect key="frame" x="0.0" y="7.5" width="87" height="20.5"/>
32+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
33+
<nil key="textColor"/>
34+
<nil key="highlightedColor"/>
35+
</label>
36+
<textField opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" placeholder="请输入视频地址" textAlignment="natural" minimumFontSize="17" clearButtonMode="whileEditing" translatesAutoresizingMaskIntoConstraints="NO" id="adM-9N-T8H">
37+
<rect key="frame" x="87" y="0.5" width="371.5" height="34"/>
38+
<fontDescription key="fontDescription" type="system" pointSize="14"/>
39+
<textInputTraits key="textInputTraits"/>
40+
</textField>
41+
<button opaque="NO" contentMode="scaleToFill" horizontalCompressionResistancePriority="1000" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="system" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="jcr-Pk-Dnu">
42+
<rect key="frame" x="458.5" y="0.5" width="336.5" height="34.5"/>
43+
<state key="normal" title="Button"/>
44+
<buttonConfiguration key="configuration" style="plain" title="查看">
45+
<color key="baseForegroundColor" systemColor="labelColor"/>
46+
</buttonConfiguration>
47+
<connections>
48+
<action selector="go:" destination="-1" eventType="touchUpInside" id="v7e-9d-NBj"/>
49+
</connections>
50+
</button>
51+
</subviews>
52+
<constraints>
53+
<constraint firstAttribute="height" constant="35" id="X7M-h3-1ft"/>
54+
</constraints>
55+
</stackView>
56+
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="5SN-5f-aGY">
57+
<rect key="frame" x="48" y="35" width="800" height="358"/>
58+
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
59+
</view>
60+
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" distribution="fillProportionally" alignment="top" translatesAutoresizingMaskIntoConstraints="NO" id="FIC-Ab-vpl">
61+
<rect key="frame" x="53" y="40" width="552" height="124"/>
62+
<subviews>
63+
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" selectedSegmentIndex="0" translatesAutoresizingMaskIntoConstraints="NO" id="bf0-wm-lum" customClass="MRSegmentedControl">
64+
<rect key="frame" x="0.0" y="0.0" width="552" height="32"/>
65+
<segments>
66+
<segment title="BGRA"/>
67+
<segment title="BGR0"/>
68+
<segment title="RGBA"/>
69+
<segment title="RGBA0"/>
70+
<segment title="NV12"/>
71+
<segment title="NV21"/>
72+
<segment title="YUV420P"/>
73+
</segments>
74+
<connections>
75+
<action selector="onSelectVideoFormat:" destination="-1" eventType="valueChanged" id="1bc-sX-Upu"/>
76+
</connections>
77+
</segmentedControl>
78+
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" selectedSegmentIndex="2" translatesAutoresizingMaskIntoConstraints="NO" id="4wY-d2-CZN" customClass="MRSegmentedControl">
79+
<rect key="frame" x="0.0" y="31" width="365" height="32"/>
80+
<segments>
81+
<segment title="Scale To Fill"/>
82+
<segment title="Scale Aspect Fill"/>
83+
<segment title="Scale Aspect Fit"/>
84+
</segments>
85+
<connections>
86+
<action selector="onSelectedVideMode:" destination="-1" eventType="valueChanged" id="LXc-4u-kLu"/>
87+
</connections>
88+
</segmentedControl>
89+
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" translatesAutoresizingMaskIntoConstraints="NO" id="jGI-4a-7Ui" customClass="MRSegmentedControl">
90+
<rect key="frame" x="0.0" y="62" width="101" height="32"/>
91+
<segments>
92+
<segment title="S16"/>
93+
<segment title="S16P"/>
94+
</segments>
95+
<connections>
96+
<action selector="onSelectAudioFmt:" destination="-1" eventType="valueChanged" id="0TD-JO-GiO"/>
97+
</connections>
98+
</segmentedControl>
99+
<segmentedControl opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="top" segmentControlStyle="plain" selectedSegmentIndex="0" translatesAutoresizingMaskIntoConstraints="NO" id="yUv-Ko-4g7" customClass="MRSegmentedControl">
100+
<rect key="frame" x="0.0" y="93" width="123" height="32"/>
101+
<segments>
102+
<segment title="44100"/>
103+
<segment title="48000"/>
104+
</segments>
105+
<connections>
106+
<action selector="onSelectSampleRate:" destination="-1" eventType="valueChanged" id="vp0-hC-dAp"/>
107+
</connections>
108+
</segmentedControl>
109+
</subviews>
110+
</stackView>
111+
<activityIndicatorView hidden="YES" opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="750" hidesWhenStopped="YES" style="large" translatesAutoresizingMaskIntoConstraints="NO" id="c3R-Bl-JJX">
112+
<rect key="frame" x="429.5" y="188.5" width="37" height="37"/>
113+
</activityIndicatorView>
114+
</subviews>
115+
<viewLayoutGuide key="safeArea" id="Q5M-cg-NOt"/>
116+
<color key="backgroundColor" systemColor="systemBackgroundColor"/>
117+
<constraints>
118+
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="eBw-Qp-cGp" secondAttribute="trailing" id="1HZ-FW-4Jo"/>
119+
<constraint firstItem="Q5M-cg-NOt" firstAttribute="trailing" secondItem="5SN-5f-aGY" secondAttribute="trailing" id="4LU-HR-Cgo"/>
120+
<constraint firstItem="c3R-Bl-JJX" firstAttribute="centerY" secondItem="i5M-Pr-FkT" secondAttribute="centerY" id="5jc-5T-TEF"/>
121+
<constraint firstItem="eBw-Qp-cGp" firstAttribute="leading" secondItem="Q5M-cg-NOt" secondAttribute="leading" constant="5" id="AkW-KK-t72"/>
122+
<constraint firstItem="eBw-Qp-cGp" firstAttribute="top" secondItem="Q5M-cg-NOt" secondAttribute="top" id="AmG-lN-znM"/>
123+
<constraint firstItem="5SN-5f-aGY" firstAttribute="leading" secondItem="Q5M-cg-NOt" secondAttribute="leading" id="QGO-76-ftk"/>
124+
<constraint firstItem="FIC-Ab-vpl" firstAttribute="top" secondItem="eBw-Qp-cGp" secondAttribute="bottom" constant="5" id="iTj-Dv-G9H"/>
125+
<constraint firstItem="5SN-5f-aGY" firstAttribute="top" secondItem="eBw-Qp-cGp" secondAttribute="bottom" id="ki7-F4-cPf"/>
126+
<constraint firstItem="c3R-Bl-JJX" firstAttribute="centerX" secondItem="i5M-Pr-FkT" secondAttribute="centerX" id="t8U-WM-7LF"/>
127+
<constraint firstItem="FIC-Ab-vpl" firstAttribute="leading" secondItem="Q5M-cg-NOt" secondAttribute="leading" constant="5" id="vA7-b0-3Fw"/>
128+
<constraint firstItem="Q5M-cg-NOt" firstAttribute="bottom" secondItem="5SN-5f-aGY" secondAttribute="bottom" id="zqG-Aq-EvD"/>
129+
</constraints>
130+
<point key="canvasLocation" x="132" y="48"/>
131+
</view>
132+
</objects>
133+
<resources>
134+
<systemColor name="labelColor">
135+
<color white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
136+
</systemColor>
137+
<systemColor name="systemBackgroundColor">
138+
<color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
139+
</systemColor>
140+
</resources>
141+
</document>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
//
2+
// MRSyncAVViewController.h
3+
// FFmpegTutorial-macOS
4+
//
5+
// Created by qianlongxu on 2023年12月21日.
6+
// Copyright © 2023 Matt Reach's Awesome FFmpeg Tutotial. All rights reserved.
7+
//
8+
// 音视频同步
9+
10+
#import "MRCrossPlatformUtil.h"
11+
12+
NS_ASSUME_NONNULL_BEGIN
13+
14+
@interface MRSyncAVViewController : MRBaseViewController
15+
16+
@end
17+
18+
NS_ASSUME_NONNULL_END

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /