Installing ffmpeg and ffprobe on macOS manually
To manually install ffmpeg and ffprobe for use with Audio Orchestrator, follow these instructions.
Audio Orchestrator is an experimental tool from the BBC for creating multi-device audio experiences. Like many other programs, it uses ffmpeg and ffprobe under the hood. You do not need it just to run ffmpeg and ffprobe . Only follow the instructions below if you want to use Audio Orchestrator but a standard ffmpeg installation is not possible. We generally recommend using Homebrew (i.e., brew install ffmpeg , which includes ffprobe ) instead.
If you still need to install Audio Orchestrator itself, follow the macOS installation instructions first.
- Download ffmpeg and ffprobe.
- Go to https://ffmpeg.org/download.html and click the Apple logo in the «Get packages & executable files» section.
- Click «Static builds for macOS 64-bit».
- You’ll see two options for downloading ffmpeg. Choose the one with the shorter filename; this will look like ffmpeg-.7z , where is something like 4.3.1 .
- Underneath this heading, click «Download as ZIP».
- Scroll down the page until you see ffprobe. Choosing the shorter filename, under ffprobe-.7z , click «Download the file as ZIP».
- If a popup appears after clicking the download link, press «allow» or «save».
- Open your Downloads folder, and double-click ffmpeg-.zip . This will extract it using the Archive Utility and create an executable ffmpeg file in Downloads.
- Repeat this step for ffprobe .
- You should now have two executables, called ffmpeg and ffprobe .
- Open your home folder.
- Your home folder has the same name as your user account. The easiest way to find it is to open Finder, and use the keyboard shortcut command + shift + H or in the menu bar select Go > Home.
- You should see folders such as Desktop, Applications, and Downloads in this folder.
- Create a new folder called audio-orchestrator-ffmpeg in your home folder.
- Go to File > New folder or use the shortcut command + shift + N , type or enter the folder name, and press return to confirm.
- Open your new audio-orchestrator-ffmpeg folder by double-clicking it.
- Create a new folder called bin in audio-orchestrator-ffmpeg .
- Move the ffmpeg and ffprobe files from Downloads into this bin folder.
- You should now have two files, ffmpeg and ffprobe , in your ~/audio-orchestrator-ffmpeg/bin/ folder.

ffmpeg and ffprobe executables with the required folder structure
- Double-click the file called ffmpeg .
- You should see an error message «ffmpeg can’t be opened because it is from an unidentified developer». Click «OK».
- Go to System Preferences > Security and Privacy and click on the General tab.
- At the bottom of the window you will see a message saying that ffmpeg was blocked. Click «Open Anyway».
- If you do not see this message in the General tab, double-click ffmpeg again.
- You may have to click the «unlock» button and enter your password to be able to click «Open Anyway».
- If you see another popup that says “ffmpeg is from an unidentified developer. Are you sure you want to open it?”, click «Open». If you don’t get this popup, just go to the same file and double-click it again.
- When you double-click the file, a Terminal window may open. Keep the terminal open until you see a message confirming you can close it.
- Repeat authorisation steps (a) to (f) for the file called ffprobe .
Installing ffmpeg ios libraries armv7, armv7s, i386 and universal on Mac with 10.8
After a couple of days I have made step by step instructions for this install:
FFmpeg Build Instructions MAC 10.8 or better
Make sure you have the latest Command Line Tools under Xcode >; Preferences >; Downloads >; Components
- Click on the ZIP icon to download https://github.com/mansr/gas-preprocessor.
- Copy gas-preprocessor.pl to /usr/bin directory.
- Change permission of gas-preprocessor.pl by setting the privilege to Read & Write for all.
Bug in xcrun starting in version 10.8
open terminal and paste in following command and press enter:
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer/"cd to ffmpeg-2 folder and paste in following command and press enter:
mkdir armv7 mkdir armv7s mkdir i386 mkdir -p universal/libTo config armv7s library paste in following command and press enter:
./configure --prefix=armv7s --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc" --extra-cflags="-arch armv7s -mfpu=neon -miphoneos-version-min=6.1" --extra-ldflags="-arch armv7s -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk -miphoneos-version-min=6.1" --arch=arm --cpu=cortex-a9 --enable-pic(Note same rule as above: if config fails go to Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/ and make sure that the sdk folder is iPhoneOS6.1.sdk, if not change the config command to reflect iPhoneOSx.x.sdk and change all targets to x.x)
To build and install armv7s library paste in following command and press enter:
make clean && make && make installTo config i386 (so simulator will work ) library paste in following command and press enter:
./configure --prefix=i386 --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --enable-avresample --enable-cross-compile --sysroot="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --target-os=darwin --cc="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc" --extra-cflags="-arch i386" --extra-ldflags="-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk" --arch=i386 --cpu=i386 --enable-pic --disable-asm(Note: this is not the same command as the previous two config commands, if you just arrow up to them this will fail)
To build and install i386 library paste in following command and press enter:
make clean && make && make installTo make universal library ( which is the library added to xcode ) paste in following command and press enter:
cd armv7/lib for file in *.a do cd ../.. xcrun -sdk iphoneos lipo -output universal/lib/$file -create -arch armv7 armv7/lib/$file -arch armv7s armv7s/lib/$file -arch i386 i386/lib/$file echo "Universal $file created." cd - done cd ../..Install ffmpeg on iPhone
If your device is jailbroken, you can install the ffmpeg package:
ffmpegYou can use the package from the command line using a Terminal.
NewTerm 2A terminal emulator package, installable with Cydia.
NewTerm is a continuation of the Mobile Terminal project, a versatile terminal emulator for iOS.
You can also use an SSH app from the App Store, however this requires you to change your SSH port from 22 since iOS prevents localhost access to port 22, so suggestions for apps and instructions are out of scope for this question.
answered Sep 20, 2018 at 21:40
200k 44 44 gold badges 355 355 silver badges 482 482 bronze badges
This is the real answer.
Sep 21, 2018 at 0:55
Can I do it with Cydia Impactor and skip jailbreaking?
Sep 21, 2018 at 17:33
@theonlygusti No, you need to be fully jailbroken to install these.
Sep 25, 2018 at 15:00In a word NO.
FFMPEG is a command line video converter and iOS has no command line. There are plenty of programs that can edit video though, not the least of which is Apple’s own iMovie.
A simple search on the iTunes store (the only place you can install software from) for «edit video» will turn up a lot of apps.
(Yes I know all about jailbreaking and what is possible, command lines and alternative applications, etc. But we do not discuss or support people with Jailbreaking issues, there are other places for that)
answered Sep 20, 2018 at 12:43
Steve Chambers Steve Chambers
22.9k 3 3 gold badges 40 40 silver badges 60 60 bronze badges
This website does support jailbreaking. See the jailbreak tag.
Sep 20, 2018 at 17:21ffmpeg is both a command line utility and a software library allowing modification of various media files. As a command line utility you won’t find ffmpeg in the App Store, as there’s no command line support in iOS.
However parts of ffmpeg are also used as a software library (usually in the form of libavcodec ) in a wide range of applications, some on iOS as well. For example VLC on iOS uses it to decode and display media files. My searches did not show up unfortunately any good apps that use either ffmpeg or libav for encoding & editing purposes, but it’s likely a few of the video editor apps you’ll find will use these software packages as their backend.
answered Sep 20, 2018 at 15:02
398 2 2 silver badges 7 7 bronze badgesYou must log in to answer this question.
- iphone
- video
- unix
-
Featured on Meta
Related
Hot Network Questions
Subscribe to RSS
Question feed
To subscribe to this RSS feed, copy and paste this URL into your RSS reader.
Site design / logo © 2024 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2024.1.30.4069
Apple is a trademark of Apple Inc., registered in the US and other countries. This site is not affiliated with or endorsed by Apple Inc. in any way.
Saved searches
Use saved searches to filter your results more quickly
Cancel Create saved search
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.
Importing iOS Frameworks
Sue N. Cooper edited this page Aug 27, 2023 · 7 revisions
The recommended method to install ffmpeg-kit in an iOS project is to use Cocoapods . Adding ffmpeg-kit dependency to the project’s Podfile and running pod install is enough to complete the installation. Cocoapods will download necessary libraries and update the project files for you.
If Cocoapods is not available, or you don’t want to use Cocoapods in your project, you can install iOS frameworks using instructions below.
1. Download an iOS framework package from Releases page.
- Note that Main releases publish xcframework packages and LTS releases publish framework packages
- iOS framework releases are files that include -ios- in their name, e.g., ffmpeg-kit-min-4.4-ios-xcframework.zip
2. Extract the zip package to a temporary location and copy all frameworks (directories with .xcframework or .framework extension) into your project folder.

3. Open your project in Xcode and drag & drop all frameworks from Finder’s project folder into your project window inside Xcode .

- Make sure that Framework Search Path for PROJECT_DIR is set to recursive in Xcode
- For v4.5.1 and newer releases
- Go to Build Phases -> Embed Frameworks and make sure that all ffmpeg-kit frameworks are listed there. Set destination to Frameworks , uncheck Copy only when installing and check Code Sign On Copy for all frameworks
- Go to Build Phases and add a Run Script in the end
- Use this as shell source for iOS targets
$/$/ffmpegkit.framework/strip-frameworks.sh- Use this as shell source for Mac Catalyst targets
$/$/ffmpegkit.framework/Resources/strip-frameworks.sh- Validate that ffmpeg-kit frameworks listed under General -> Frameworks, Libraries and Embedded Content are not marked as Embed & Sign . The correct setting for them is Do Not Embed
4. Add libbz2 , libc++ , libiconv , libz , CoreMotion 1 , VideoToolbox and Accelerate 2 system libraries/frameworks to Build Phases -> Link Binary With Libraries section.
1 — Required by full and full-gpl packages
2 — Required when rubberband or tesseract is enabled

Copyright (c) 2021-2023 FFmpegKit