MP3 encoding notices and corresponding sources ============================================= AIツールギャラリーのMP3保存には LAME MP3 Encoder 3.100 を使用しています。 LAME: https://lame.sourceforge.io/ (https://www.mp3dev.org/) Copyright (c) The LAME Project and the contributors named in the source files. LAME is free software under the GNU Library General Public License, version 2 or (at your option) any later version. It comes WITHOUT ANY WARRANTY. The complete license, copied verbatim from lame-3.100/COPYING: https://ai-gallery.jp/licenses/lame-lgpl.txt Version/license evidence: lame-3.100/README and libmp3lame/lame.c. LAME 3.100 original, unmodified source (including notices and build files): https://downloads.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz Same source available with this distribution: https://ai-gallery.jp/licenses/sources/lame-3.100.tar.gz The JavaScript wrapper and WASM bridge are @mediabunny/mp3-encoder 1.61.6, Copyright (c) 2026-present, Vanilagy and contributors, licensed under MPL-2.0: https://ai-gallery.jp/licenses/mediabunny.txt https://github.com/Vanilagy/mediabunny/tree/v1.61.6/packages/mp3-encoder https://www.npmjs.com/package/@mediabunny/mp3-encoder/v/1.61.6?activeTab=code Corresponding WASM/bridge source and build instructions: https://github.com/Vanilagy/mediabunny/blob/v1.61.6/packages/mp3-encoder/README.md This exact README identifies LAME 3.100, SIMD build flags and the disabled MPGLIB decoder (--disable-decoder). The application does not use LAME decoding. The library, bridge and WASM are used without local modifications. Local copy of the tag's packages/mp3-encoder, shared code, build scripts, package manifests and license (upstream files unchanged): https://ai-gallery.jp/licenses/sources/mediabunny-mp3-encoder-1.61.6-source.tar.gz Full upstream tag source, for the root build including other Mediabunny packages: https://github.com/Vanilagy/mediabunny/archive/refs/tags/v1.61.6.tar.gz Modification / replacement -------------------------- The MP3 extension (including its inlined WASM and worker) is delivered in a separate JavaScript chunk. It is imported only when MP3 conversion starts; M4A/WAV conversion and inspection do not import it. There is no integrity check preventing a compatible replacement. The application does not restrict reverse engineering for debugging modifications to this LGPL library or modification for the user's own use. To rebuild LAME or relink the bridge against a modified LAME, follow the exact README above using Emscripten, replacing build/libmp3lame.a with your build. Rebuild build/lame.js with the documented emcc command; its WASM is inlined. Build the extension from the full v1.61.6 source with npm install / npm run build. The wrapper uses only the public Mediabunny registerEncoder API. For local debugging without the application source, use browser DevTools Local Overrides (or a local response-rewriting proxy) for the separately loaded MP3 chunk. Replace its inlined LAME module/worker with the rebuilt one, retaining the surrounding bundler module registration and exports. The chunk can be found in Network when MP3 conversion starts, or by searching for the string "@mediabunny/mp3-encoder loaded" in the downloaded JavaScript. Clear the cached override and restart conversion to restore the original. The ABI of init_lame/encode_samples/flush_lame/close_lame is in src/lame-bridge.c. Upstream LICENSE from the LAME distribution follows verbatim: Can I use LAME in my commercial program? Yes, you can, under the restrictions of the LGPL (see COPYING in this folder). The easiest way to do this is to: 1. Link to LAME as separate library (libmp3lame.a on unix or lame_enc.dll or libmp3lame.dll on windows) 2. Fully acknowledge that you are using LAME, and give a link to our web site, www.mp3dev.org 3. If you make modifications to LAME, you *must* release these modifications back to the LAME project, under the LGPL.