b3Player Pro – FFmpeg source code

Quellcode der FFmpeg-Bibliotheken von b3Player Pro (LGPL-2.1 oder später) · b3lab.io

b3Player Pro uses libraries from the FFmpeg project (libavcodec, libavformat, libavutil, libswscale, libswresample; FFmpeg 7.1.2) under the GNU Lesser General Public License, version 2.1 or later. The libraries are not modified: they are built from the unmodified upstream source with the script and the configuration below. They are linked dynamically and sit in b3Player Pro.app/Contents/Frameworks, so you can replace them with your own build. This page is the source offer for them.

Downloads

FileWhat it isSHA-256
ffmpeg-7.1.2.tar.xz
same file at ffmpeg.org
The unmodified FFmpeg 7.1.2 source (10.5 MB). 089bc60fb59d6aecc5d994ff530fd0dcb3ee39aa55867849a2bbc4e555f9c304
build_ffmpeg_lgpl.sh The script that configures, builds and checks the libraries. 44773d61ed1bca4d4573a9c9c0846b491bc37d958205284c86e2f408482a2b5e
CONFIGURE.txt The exact configure line of the libraries in the application. cf201ee1480985da87c22b70e836968e5399ac5f00700f5427d6039b2f751921

All hashes in one file: SHA256SUMS (shasum -a 256 -c SHA256SUMS).

Configure line

./configure --prefix=/opt/b3ffmpeg --install-name-dir=@rpath --enable-shared --disable-static --disable-programs --disable-doc --disable-debug --disable-gpl --disable-nonfree --disable-version3 --disable-autodetect --enable-zlib --enable-bzlib --enable-audiotoolbox --disable-videotoolbox --disable-avdevice --disable-avfilter --disable-postproc --disable-network --disable-encoders --disable-muxers --disable-devices --disable-filters --disable-hwaccels --disable-protocols --enable-protocol=file --enable-protocol=pipe --disable-decoder=h264 --disable-decoder=hevc --disable-decoder=aac --disable-decoder=aac_fixed --disable-decoder=aac_latm --disable-decoder=prores --cc=clang --extra-cflags=-mmacosx-version-min=14.0 --extra-ldflags=-mmacosx-version-min=14.0

No --enable-gpl, --enable-nonfree or --enable-version3, no external codec libraries, and no FFmpeg decoders for H.264, HEVC, AAC and ProRes (macOS provides them); the DNxHD/DNxHR decoder is included.

Build it yourself

  1. Install the Xcode command line tools (xcode-select --install). You need macOS 14 or later on Apple silicon.
  2. Create an empty working folder with a folder Scripts inside, and put build_ffmpeg_lgpl.sh there. Optionally put the tarball at build/ffmpeg-build/src/ffmpeg-7.1.2.tar.xz; otherwise the script downloads it and checks the SHA-256 above.
  3. Run Scripts/build_ffmpeg_lgpl.sh. The libraries, headers and a CONFIGURE.txt appear in ThirdParty/ffmpeg.

Replace the libraries in b3Player Pro

Work on a copy of the application. Copy your libavcodec.61.dylib, libavformat.61.dylib, libavutil.59.dylib, libswscale.8.dylib and libswresample.5.dylib (install names @rpath/…) into Contents/Frameworks, sign each one and then the application ad hoc with codesign --force --sign -, and remove the quarantine flag with xattr -cr. Step by step: LICENSES/FFmpeg-REPLACE.md in the disk image of b3Player Pro.

Written offer

For at least three years from the date on which you obtained b3Player Pro, b3LAB will give you on request the complete corresponding machine-readable source code of the FFmpeg libraries contained in it and the scripts used to control their compilation and installation, for a charge of no more than the cost of performing this distribution. The same material is available for download on this page. Contact: [email protected].

FFmpeg is a trademark of Fabrice Bellard, originator of the FFmpeg project. b3LAB does not claim ownership of FFmpeg, and b3Player Pro is not affiliated with or endorsed by the FFmpeg project. b3LAB · Benjamin Mauz · Esslingen am Neckar, Germany.