From d049823438473e02f709c5f2bc26718d7b6aa1ac Mon Sep 17 00:00:00 2001 From: Javernaut Date: Tue, 6 Aug 2019 20:16:08 +0300 Subject: [PATCH] Adding support for Windows as a host machine --- README.md | 16 ++++++++++------ ffmpeg-android-maker.sh | 6 ++++++ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index f8f8a0a..c2bcd92 100644 --- a/README.md +++ b/README.md @@ -7,22 +7,26 @@ Here is a script that downloads the source code of [FFmpeg](https://www.ffmpeg.o 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. The version of FFmpeg here by default is **4.1.4** (but can be overridden). And the script expects to use **at least** Android NDK **r19** (*r20* also works ok). Starting with FFmpeg 4.1 and NDK r19 the whole process became much simpler. -## Supported architectures +## Supported Android architectures * armeabi-v7a * arm64-v8a * x86 * x86_64 -## Prerequisites +## Supported host OS + +On **macOS** or **Linux** just execute the script in terminal. -You have to define an environment variable `ANDROID_NDK_HOME` and set the correct path to your Android NDK. +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. + +## Prerequisites -## How to use +You have to define an environment variable `ANDROID_NDK_HOME` and set it to a correct path to your Android NDK. -Well, just execute the script :) Examine the `output` directory after. +## See it in action -And the actual Android app can be found [here](https://github.com/Javernaut/WhatTheCodec) +Actual Android app that uses the output of the script can be found [here](https://github.com/Javernaut/WhatTheCodec) ## Features diff --git a/ffmpeg-android-maker.sh b/ffmpeg-android-maker.sh index 30d1aa9..ab35c2f 100755 --- a/ffmpeg-android-maker.sh +++ b/ffmpeg-android-maker.sh @@ -6,6 +6,12 @@ FFMPEG_FALLBACK_VERSION=4.1.4 case "$OSTYPE" in darwin*) HOST_TAG="darwin-x86_64" ;; linux*) HOST_TAG="linux-x86_64" ;; + msys) + case "$(uname -m)" in + x86_64) HOST_TAG="windows-x86_64" ;; + i686) HOST_TAG="windows" ;; + esac + ;; esac # Directories used by the script