@@ -10,12 +10,12 @@ At present MRFFToolChain contained `ass、bluray、dav1d、dvdread、ffmpeg、fr
10
10
11
11
## Supported Plat
12
12
13
- | platform | architectures | minimum deployment target |
14
- | ----- | -------------------------------------- | ----- |
15
- | iOS | arm64、arm64_simulator、x86_64_simulator | 11.0 |
16
- | tvOS | arm64、arm64_simulator、x86_64_simulator | 12.0 |
17
- | macOS | arm64、x86_64 | 10.11 |
18
- | Android | arm64、armv7a、x86_64、x86 | 21 |
13
+ | platform | architectures | minimum deployment target |
14
+ | ----- | --------------------------------------| ----------------------- ----- |
15
+ | iOS | arm64、arm64_simulator、x86_64_simulator | 11.0 |
16
+ | tvOS | arm64、arm64_simulator、x86_64_simulator | 12.0 |
17
+ | macOS | arm64、x86_64 | 10.11 |
18
+ | Android | arm64、armv7a、x86_64、x86 | 21 |
19
19
20
20
## News
21
21
@@ -37,128 +37,83 @@ At present MRFFToolChain contained `ass、bluray、dav1d、dvdread、ffmpeg、fr
37
37
Tips:
38
38
39
39
```
40
- 1、FFmpeg is not denpendent on Ass.
41
- 2、ijkplayer is denpendent on FFmpeg and Ass.
42
- 3、when install pre-compiled lib, will containes it's denpendencies.
40
+ 1、ffmpeg is not denpendent on ass.
41
+ 2、fsplayer is denpendent on ffmpeg and ass.
42
+ 3、ijkplayer is denpendent on ijkffmpeg.
43
+ 4、FFmpegTutorial is denpendent on fftutorial.
44
+ 4、when install pre-compiled lib, will containes it's denpendencies.
43
45
```
44
46
45
- ## Folder structure
47
+ ## Download/Install Pre-compiled Libs
46
48
47
- ```
48
- ├── README.md
49
- ├── build #编译目录
50
- │ ├── extra #源码仓库
51
- │ ├── pre #下载的预编译库
52
- │ ├── product #编译产物
53
- │ └── src #构建时源码仓库
54
- ├── configs #三方库配置信息
55
- │ ├── default.sh
56
- │ ├── ffconfig #FFmpeg功能裁剪选项
57
- │ ├── libs #三方库具体配置,包括库名,git仓库地址等信息
58
- │ └── meson-crossfiles
59
- ├── do-compile #三方库编译过程
60
- │ ├── android #安卓平台
61
- │ └── apple #苹果平台
62
- ├── do-init #初始化三方库仓库
63
- │ ├── copy-local-repo.sh
64
- │ ├── init-repo.sh
65
- │ └── main.sh
66
- ├── do-install #下载安装预编译的三方库
67
- │ ├── download-uncompress.sh
68
- │ ├── install-pre-lib.sh
69
- │ ├── install-pre-xcf.sh
70
- │ └── main.sh
71
- ├── main.sh #脚本入口
72
- ├── patches #给三方库打的补丁
73
- │ ├── bluray
74
- │ ├── ffmpeg -> ffmpeg-n6.1
75
- │ ├── ffmpeg-n4.0
76
- │ ├── ffmpeg-n5.1
77
- │ ├── ffmpeg-n6.1
78
- │ ├── ffmpeg-release-5.1
79
- │ ├── smb2
80
- │ ├── smb2-4.0.0
81
- │ ├── uavs3d
82
- │ └── yuv
83
- └── tools #通用工具方法
84
- ├── export-android-build-env.sh
85
- ├── export-android-host-env.sh
86
- ├── export-android-pkg-config-dir.sh
87
- ├── export-apple-build-env.sh
88
- ├── export-apple-host-env.sh
89
- ├── export-apple-pkg-config-dir.sh
90
- ├── gas-preprocessor.pl
91
- ├── ios.toolchain.cmake
92
- ├── parse-arguments.sh
93
- └── prepare-build-workspace.sh
94
- ```
95
-
96
- ## Download/Install Pre-compiled libs
97
-
98
- 直接从 github 下载我预编译好的库,这种方式可节省大量时间。
99
-
100
- 预编译库已经将 patches 目录下的补丁全部打上了。
49
+ Save yourself a great deal of time by directly downloading the pre-compiled libraries from GitHub.
101
50
102
- 安装方法:
51
+ These pre-compiled libraries already applied patches which in the patches directory.
103
52
104
53
``` bash
105
- # 查看帮助是个好习惯
54
+ # Check the help first
106
55
./main.sh install --help
107
- # 使用方式随便举例:
56
+ # Examples of usage:
108
57
./main.sh install -p macos -l ffmpeg
109
58
./main.sh install -p ios -l ' ass ffmpeg'
110
59
./main.sh install -p tvos -l all
111
60
./main.sh install -p android -l all
112
61
```
113
62
114
- ## Compile by yourself
63
+ ## Compile by Yourself
115
64
116
- ### Init lib repos
65
+ ### Initialize Library Repositories
117
66
118
- 不要浪费自己的时间去编译这些库,除非你修改了源码!
119
- 直接下载我白嫖 github 预先编译好的库不好么!
67
+ Don't waste your time compiling these libraries unless you've modified the source code!
68
+ Why not just download the pre-compiled libraries I've prepared using GitHub actions?
120
69
121
- 脚本参数比较灵活,可根据需要搭配使用,常用方式举例:
70
+ The script parameters are flexible and can be combined as needed. Here are some common examples:
122
71
123
72
```
124
- #查看帮助是个好习惯
73
+ # Check the help first
125
74
./main.sh init --help
126
- #准备 iOS 平台源码所有库的源码
75
+ # Prepare source code for all libraries for the iOS platform
127
76
./main.sh init -p ios -l all
128
- #准备 iOS 平台x86架构下所有库的源码
77
+ # Prepare source code for all libraries for the x86 architecture on iOS
129
78
./main.sh init -p ios -l all -a x86_64_simulator
130
- #准备 macOS 平台源码所有库的源码
79
+ # Prepare source code for all libraries for the macOS platform
131
80
./main.sh init -p macos -l all
132
- #准备 iOS 平台的某些库的源码
81
+ # Prepare source code for specific libraries for the iOS platform
133
82
./main.sh init -p ios -l "openssl ffmpeg"
134
- #准备 Android 平台的某些库的源码
135
- ./main.sh init -p anroid -l "openssl ffmpeg"
83
+ # Prepare source code for specific libraries for the Android platform
84
+ ./main.sh init -p android -l "openssl ffmpeg"
136
85
```
137
86
138
87
### Compile
139
88
140
- 查看帮助是个好习惯
89
+ Once the source code repository initialization is complete, you can start the compilation process.
141
90
142
91
```
92
+ # Check the help first
143
93
./main.sh compile --help
144
- # 根据帮助可知 -p 参数指定平台;-c 参数指定行为,比如:build是编译,rebuild是重编等; -l 指定要编译的库;-a 指定 cpu 架构。
94
+ # As shown in the help:
95
+ # -p specifies the platform
96
+ # -c specifies the action (e.g., build for compilation, rebuild for recompilation)
97
+ # -l specifies the libraries to compile
98
+ # -a specifies the CPU architecture
145
99
```
146
- 使用方式随便举例:
100
+
101
+ Examples of usage:
147
102
148
103
```
149
- #比如编译 ios 平台所有依赖库
104
+ Compile all dependencies for the iOS platform
150
105
./main.sh compile -c build -p ios -l all
151
- #比如编译 ios 平台 arm64 架构下的 libass 库
106
+ # Compile the libass library for the arm64 architecture on iOS
152
107
./main.sh compile -c build -p ios -a arm64 -l ass
153
108
```
154
109
155
- 脚本对于这些参数的顺序没有要求,可以随意摆放。
110
+ The order of these parameters does not matter; they can be arranged in any sequence.
156
111
157
112
### Support Mirror
158
113
159
- 如果 github 上的仓库克隆较慢,或者需要使用内网私有仓库,可在执行编译脚本前声明对应的环境变量!
114
+ If cloning repositories from GitHub is slow, or if you need to use an internal private repository, you can declare the corresponding environment variables before running the compilation script!
160
115
161
- | 名称 | 当前版本 | 仓库地址 | 使用镜像 |
116
+ | Lib Name | Current Version | Repository URL | Mirror Repository URL |
162
117
| ----------- | -------| ------------------------------------------------------- | -------------------------------------------------------- |
163
118
| FFmpeg | 6.1.2 | https://github.com/FFmpeg/FFmpeg.git | export GIT_FFMPEG_UPSTREAM = git@xx: yy /FFmpeg.git |
164
119
| ass | 0.17.3 | https://github.com/libass/libass.git | export GIT_ASS_UPSTREAM = git@xx: yy /libass.git |
@@ -180,6 +135,12 @@ Tips:
180
135
181
136
## Tips
182
137
138
+ - To download pre-compiled xcframework libraries, add the --fmwk parameter when using the install command.
139
+ - To skip pulling remote repositories during initialization, add the --skip-pull-base parameter when using the init command.
140
+ - To skip applying FFmpeg patches during initialization, add the --skip-patches parameter when using the init command.
141
+ - Currently, FFmpeg uses the module-full.sh configuration, resulting in slightly larger package sizes.
142
+ - You can download all pre-compiled GitHub libraries to your own server and specify your server address using MR_DOWNLOAD_BASEURL before running the install command.
143
+
183
144
- 可下载预编译的 xcframework 库,只需要在 install 时加上 --fmwk 参数
184
145
- 初始化仓库时,可跳过拉取远端到本地,只需要在 init 时加上 --skip-pull-base 参数
185
146
- 初始化仓库时,可跳过应用 FFmpeg 的补丁,只需要在 init 时加上 --skip-patches 参数
@@ -188,14 +149,8 @@ Tips:
188
149
189
150
## Donate
190
151
191
- 编译三方库很费时间,本人想为开源社区贡献一份微薄的力量,因此将 debugly/ijkplayer 依赖的三方库,全部预编成静态库和 xcframework 供大家使用。
192
-
193
- 如果您想要为开源社区贡献一份力量,请买杯咖啡给我提提神儿。
194
-
195
- ![ donate.jpg] ( https://i.postimg.cc/xdVqnBLp/IMG-7481.jpg )
152
+ Compiling third-party libraries is time-consuming. I aim to contribute to the open-source community by pre-compiling all third-party libraries required by debugly/ijkplayer into static libraries and xcframeworks for public use.
196
153
197
- 感谢以下朋友对 debugly/MRFFToolChainBuildShell 的支持:
154
+ If you'd like to contribute to the open-source community, consider buying me a coffee to keep me energized.
198
155
199
- - 海阔天也空
200
- - 小猪猪
201
- - 1996GJ
156
+ ![ donate.jpg] ( https://i.postimg.cc/xdVqnBLp/IMG-7481.jpg )
0 commit comments