Skip to content

Commit a968c67

Browse files
committed
update readme
1 parent 0e37d5a commit a968c67

File tree

1 file changed

+51
-96
lines changed

1 file changed

+51
-96
lines changed

README.md

Lines changed: 51 additions & 96 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ At present MRFFToolChain contained `ass、bluray、dav1d、dvdread、ffmpeg、fr
1010

1111
## Supported Plat
1212

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 |
1919

2020
## News
2121

@@ -37,128 +37,83 @@ At present MRFFToolChain contained `ass、bluray、dav1d、dvdread、ffmpeg、fr
3737
Tips:
3838

3939
```
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.
4345
```
4446

45-
## Folder structure
47+
## Download/Install Pre-compiled Libs
4648

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.
10150

102-
安装方法:
51+
These pre-compiled libraries already applied patches which in the patches directory.
10352

10453
```bash
105-
#查看帮助是个好习惯
54+
#Check the help first
10655
./main.sh install --help
107-
# 使用方式随便举例:
56+
# Examples of usage:
10857
./main.sh install -p macos -l ffmpeg
10958
./main.sh install -p ios -l 'ass ffmpeg'
11059
./main.sh install -p tvos -l all
11160
./main.sh install -p android -l all
11261
```
11362

114-
## Compile by yourself
63+
## Compile by Yourself
11564

116-
### Init lib repos
65+
### Initialize Library Repositories
11766

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?
12069

121-
脚本参数比较灵活,可根据需要搭配使用,常用方式举例:
70+
The script parameters are flexible and can be combined as needed. Here are some common examples:
12271

12372
```
124-
#查看帮助是个好习惯
73+
# Check the help first
12574
./main.sh init --help
126-
#准备 iOS 平台源码所有库的源码
75+
# Prepare source code for all libraries for the iOS platform
12776
./main.sh init -p ios -l all
128-
#准备 iOS 平台x86架构下所有库的源码
77+
# Prepare source code for all libraries for the x86 architecture on iOS
12978
./main.sh init -p ios -l all -a x86_64_simulator
130-
#准备 macOS 平台源码所有库的源码
79+
# Prepare source code for all libraries for the macOS platform
13180
./main.sh init -p macos -l all
132-
#准备 iOS 平台的某些库的源码
81+
# Prepare source code for specific libraries for the iOS platform
13382
./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"
13685
```
13786

13887
### Compile
13988

140-
查看帮助是个好习惯
89+
Once the source code repository initialization is complete, you can start the compilation process.
14190

14291
```
92+
# Check the help first
14393
./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
14599
```
146-
使用方式随便举例:
100+
101+
Examples of usage:
147102

148103
```
149-
#比如编译 ios 平台所有依赖库
104+
Compile all dependencies for the iOS platform
150105
./main.sh compile -c build -p ios -l all
151-
#比如编译 ios 平台 arm64 架构下的 libass 库
106+
# Compile the libass library for the arm64 architecture on iOS
152107
./main.sh compile -c build -p ios -a arm64 -l ass
153108
```
154109

155-
脚本对于这些参数的顺序没有要求,可以随意摆放。
110+
The order of these parameters does not matter; they can be arranged in any sequence.
156111

157112
### Support Mirror
158113

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!
160115

161-
| 名称 | 当前版本| 仓库地址 | 使用镜像 |
116+
| Lib Name | Current Version | Repository URL | Mirror Repository URL |
162117
| ----------- | -------| ------------------------------------------------------- | -------------------------------------------------------- |
163118
| FFmpeg | 6.1.2 | https://github.com/FFmpeg/FFmpeg.git | export GIT_FFMPEG_UPSTREAM = git@xx:yy/FFmpeg.git |
164119
| ass | 0.17.3 | https://github.com/libass/libass.git | export GIT_ASS_UPSTREAM = git@xx:yy/libass.git |
@@ -180,6 +135,12 @@ Tips:
180135

181136
## Tips
182137

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+
183144
- 可下载预编译的 xcframework 库,只需要在 install 时加上 --fmwk 参数
184145
- 初始化仓库时,可跳过拉取远端到本地,只需要在 init 时加上 --skip-pull-base 参数
185146
- 初始化仓库时,可跳过应用 FFmpeg 的补丁,只需要在 init 时加上 --skip-patches 参数
@@ -188,14 +149,8 @@ Tips:
188149

189150
## Donate
190151

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.
196153

197-
感谢以下朋友对 debugly/MRFFToolChainBuildShell 的支持:
154+
If you'd like to contribute to the open-source community, consider buying me a coffee to keep me energized.
198155

199-
- 海阔天也空
200-
- 小猪猪
201-
- 1996GJ
156+
![donate.jpg](https://i.postimg.cc/xdVqnBLp/IMG-7481.jpg)

0 commit comments

Comments
 (0)