-
Notifications
You must be signed in to change notification settings - Fork 33
Project Layout
Files in this project are organised according to the layout below.
ffmpeg-kit/
├── LICENSE.LGPLv3
├── LICENSE.GPLv3
├── README.md
├── android/
│ ├── ffmpeg-kit-android-lib/
│ └── jni/
├── android.sh
├── apple/
│ └── src/
├── apple.sh
├── docs/
├── flutter/
├── ios.sh
├── macos.sh
├── prebuilt/
├── react-native/
├── scripts/
│ ├── android/
│ └── apple/
├── src/
├── tools/
├── tvos.sh
└── .tmp/
Project root includes eight directories, four top level build scripts (android.sh, ios.sh, macos.sh and tvos.sh), one combine script (apple.sh) for Apple platforms, two LICENSE files, and a README.md
file.
-
androidfolder contains files necessary to buildFFmpegKitAndroid library. These files are;- Configuration files required by
gradle - Documentation configuration file for
doxygen - Library source code inside the
ffmpeg-kit-android-libfolder - NDK build files under
jnifolder - README.md file
- Configuration files required by
-
appledirectory includes files necessary to buildFFmpegKitObjective-C library for iOS, macOS and tvOS. They are;- Configuration files required by
Autotools - Documentation configuration for
doxygen - Library source code inside the
srcfolder - README.md file
- Configuration files required by
-
docsfolder contains documentation files and digital assets. -
flutterfolder contains the files of theflutterplugin that supportsAndroid,iOSandmacOSplatforms. -
react-nativefolder contains the files of thereact-nativeplugin that supportsAndroidandiOSplatforms. -
scriptsdirectory includes all scripts called by the top-level build scripts.- Scripts responsible for cross-compiling external libraries are grouped according to the platform name; they can be found under the
androidandapplefolders respectively -
functionscripts contain platform specific bash functions -
mainscripts are responsible for building an architecture for a platform -
runscripts execute cross compilation scripts underandroidandapplefolders -
source.shcontains external library repository urls and their versions -
variable.shincludes common variables used by all platforms
- Scripts responsible for cross-compiling external libraries are grouped according to the platform name; they can be found under the
-
srcdirectory is empty by default. The source code of enabled external libraries is downloaded into this directory by the top level build scripts. -
toolsdirectory includes patch files and release scripts. -
A temporary folder named
.tmpis created at the beginning to save temporary files needed by the scripts, e.g.gas-preprocessor.pl,gnu-configproject. -
After the compilation, all compiled objects (libraries, universal binaries, frameworks, xcframeworks, android archives, etc.) are created under the
prebuiltdirectory.-
Androidarchive (.aar file) forMainbuilds is located under thebundle-android-aarfolder -
Androidarchive (.aar file) forLTSbuilds is located under thebundle-android-aar-ltsfolder -
iOSxcframeworksforMainbuilds are located under thebundle-apple-xcframework-iosfolder -
macOSxcframeworksforMainbuilds are located under thebundle-apple-xcframework-macosfolder -
tvOSxcframeworksforMainbuilds are located under thebundle-apple-xcframework-tvosfolder -
iOSframeworksforMainbuilds are located under thebundle-apple-framework-iosfolder -
iOSframeworksforLTSbuilds are located under thebundle-apple-framework-ios-ltsfolder -
macOSframeworksforMainbuilds are located under thebundle-apple-framework-macosfolder -
macOSframeworksforLTSbuilds are located under thebundle-apple-framework-macos-ltsfolder -
tvOSframeworksforMainbuilds are located under thebundle-apple-framework-tvosfolder -
tvOSframeworksforLTSbuilds are located under thebundle-apple-framework-tvos-ltsfolder
-
Copyright (c) 2021-2022 FFmpegKit
- Status
- Versions
- Changelog
- Project Layout
- Using
- Building
- External Libraries
- Patents
- License