Licences and source code
What Steerwell is built with
Steerwell is proprietary software by Black Ueli GmbH. To read recordings and cut clips, it runs FFmpeg, which includes LAME, as a separate program. Both are open source under the GNU Lesser General Public License (LGPL). Here is the exact source of the versions Steerwell 0.2.0 ships, and how they were built.
FFmpeg 9.0.2
Licence: LGPL version 2.1 or later. As published by the FFmpeg developers (ffmpeg.org), not modified, and built without GPL or non-free parts.
- Source
- ffmpeg-9.0.2.tar.xz · 12.0 MB
- SHA-256
8c3850283eb25fa026482078a04051e0be17347b09ef81a0849bec15a96e002e- Upstream
- https://ffmpeg.org/releases/ffmpeg-9.0.2.tar.xz
LAME 3.100
Licence: LGPL version 2 or later. As published by the LAME project (lame.sourceforge.io); FFmpeg uses it to write MP3. Its code is not modified: the build only drops one symbol LAME doesn’t define from its list of exported ones, as shown below.
- Source
- lame-3.100.tar.gz · 1.5 MB
- SHA-256
ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e- Upstream
- https://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz
How they were built
On a Mac with Apple Silicon, for macOS 12.0 and later, linking only macOS’s own libraries. LAME is built first, as a static library, and FFmpeg is linked with it:
export MACOSX_DEPLOYMENT_TARGET=12.0
PREFIX=$PWD/prefix
tar xf lame-3.100.tar.gz
cd lame-3.100
sed -i '' '/^lame_init_old$/d' include/libmp3lame.sym
./configure --prefix=$PREFIX \
--disable-shared \
--enable-static \
--disable-frontend \
--disable-decoder
make && make install
cd ..
tar xf ffmpeg-9.0.2.tar.xz
cd ffmpeg-9.0.2
./configure --prefix=$PREFIX \
--disable-autodetect \
--disable-ffplay \
--disable-ffprobe \
--disable-doc \
--disable-debug \
--disable-network \
--enable-videotoolbox \
--enable-audiotoolbox \
--enable-zlib \
--enable-bzlib \
--enable-iconv \
--enable-libmp3lame \
--extra-cflags=-I$PREFIX/include \
--extra-ldflags=-L$PREFIX/lib \
--extra-libs=-liconv
make
strip -o ffmpeg-steerwell ffmpeg
The app keeps the result in Steerwell.app/Contents/Resources/ffmpeg/ffmpeg. You may replace it with your own build: put it in its place, or name it in the STEERWELL_FFMPEG environment variable.
Everything else
The full licences of FFmpeg, LAME, Electron, Chromium and every other component Steerwell includes are in the app, under Help → Acknowledgements.