You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+15-11Lines changed: 15 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,13 +8,19 @@ Here is a script that downloads the source code of [FFmpeg](https://www.ffmpeg.o
8
8
9
9
The actual content of all this directories depends on how the FFmpeg was configured before assembling. For my purpose I enabled only *libavcodec*, *libavformat*, *libavutil* and *libswscale*, but you can set your own configuration to make the FFmpeg you need.
10
10
11
-
The version of FFmpeg here by default is **4.2.1** (but can be overridden). And the script expects to use **at least** Android NDK **r19** (*r20* also works ok).
11
+
The version of FFmpeg here by default is **4.2.1** (but can be overridden). And the script expects to use **at least** Android NDK **r19** (both *r20*and *r21*also work ok).
12
12
13
-
The details of how this script is implemented are described in [this blog post](https://proandroiddev.com/a-story-about-ffmpeg-in-android-part-i-compilation-898e4a249422).
13
+
The details of how this script is implemented are described in this series of posts:
The [WIKI](https://github.com/Javernaut/ffmpeg-android-maker/wiki) contains a lot of useful information.
18
+
19
+
Actual Android app that uses the output of the script can be found [here](https://github.com/Javernaut/WhatTheCodec).
14
20
15
21
## Supported Android ABIs
16
22
17
-
* armeabi-v7a
23
+
* armeabi-v7a (with NEON)
18
24
* arm64-v8a
19
25
* x86
20
26
* x86_64
@@ -23,24 +29,22 @@ The details of how this script is implemented are described in [this blog post](
23
29
24
30
On **macOS** or **Linux** just execute the script in terminal.
25
31
26
-
It is also possible to execute this script on a **Windows** machine with [MSYS2](https://www.msys2.org). You also need to install specific packages to it: *make*, *git*, *diffutils* and *tar*. The script supports both 32-bit and 64-bit versions of Windows.
32
+
It is also possible to execute this script on a **Windows** machine with [MSYS2](https://www.msys2.org). You also need to install specific packages to it: *make*, *git*, *diffutils* and *tar*. The script supports both 32-bit and 64-bit versions of Windows. Also see Prerequisites section for necessary software.
27
33
28
34
## Prerequisites
29
35
30
36
You have to define two environment variables:
31
37
*`ANDROID_SDK_HOME` - path to your Android SDK
32
38
*`ANDROID_NDK_HOME` - path to your Android NDK
33
39
34
-
Also, if you want to build *libaom*, then you have to install cmake;3.10.2.4988404 package via Android SDK.
40
+
Also, if you want to build **libaom**, then you have to install the cmake;3.10.2.4988404 package via Android SDK.
35
41
36
-
## See it in action
37
-
38
-
Actual Android app that uses the output of the script can be found [here](https://github.com/Javernaut/WhatTheCodec).
42
+
For **libdav1d** building you also need to install *ninja* and *meson* tools.
39
43
40
44
## Features
41
45
42
-
**Setting your own FFmpeg version**. You can actually override the version of FFmpeg used by the script. See details [here](https://github.com/Javernaut/ffmpeg-android-maker/wiki/Setting-the-FFmpeg-version).
46
+
**Setting your own FFmpeg version and origin**. You can actually override the version of FFmpeg used by the script. See details [here](https://github.com/Javernaut/ffmpeg-android-maker/wiki/Setting-the-FFmpeg-version).
43
47
44
-
**Test your script in a cloud**. This repository has CI integration and you can use it too for your own configurations of FFmpeg. See details [here](https://github.com/Javernaut/ffmpeg-android-maker/wiki/Build-automation).
48
+
**Test your script in a cloud**. This repository has CI integration and you can use it too for your own configurations. See details [here](https://github.com/Javernaut/ffmpeg-android-maker/wiki/Build-automation).
45
49
46
-
**Text relocations monitoring**. After a build you can look into stats/text-relocations.txt file. That file lists all *.so files that were built and reports if they have text relocations. If you don't see any mentioning of 'TEXTREL' in the file, you are good. Otherwise, you will see exact binaries that have this problem.
50
+
**Text relocations monitoring**. After an assembling is finished you can look into stats/text-relocations.txt file. That file lists all *.so files that were built and reports if any of them have text relocations. If you don't see any mentioning of 'TEXTREL' in the file, you are good. Otherwise, you will see exact binaries that have this problem.
0 commit comments