Can I use LAME in my commercial program? Yes, you can, under the restrictions of the LGPL. The easiest way to do this is to: 1. Link to LAME as separate jar (lame.min.js or lame.all.js) 2. Fully acknowledge that you are using LAME, and give a link to our web site, lame.sourceforge.net 3. If you make modifications to LAME, you *must* release these these modifications back to the LAME project, under the LGPL. Nano AI Song uses the unmodified @breezystack/lamejs 1.2.7 MP3 encoder. Author: Alex Zhukov. Package maintainer: shijinyu. Package license: LGPL-3.0. Corresponding source and build scripts (published package gitHead): https://github.com/shijinyu/lamejs/tree/1fb0ef5fa177413107e2e107d054a9b994e3f79c Source archive: https://github.com/shijinyu/lamejs/archive/1fb0ef5fa177413107e2e107d054a9b994e3f79c.zip Package: https://www.npmjs.com/package/@breezystack/lamejs/v/1.2.7 LAME: https://lame.sourceforge.io/ License (included): /licenses/LGPL-3.0.txt License: https://www.gnu.org/licenses/lgpl-3.0.html GPL terms (included): /licenses/GPL-3.0.txt GPL terms incorporated by LGPL: https://www.gnu.org/licenses/gpl-3.0.html The encoder's complete unmodified JavaScript source is distributed as a separate lamejs-*.js asset with this application. To replace it, install a compatible LGPL encoder in the dependency tree and rebuild, or substitute that asset with an interface-compatible module. The import interface is Mp3Encoder(channels, sampleRate, kbps), encodeBuffer(left, right), flush(). The application does not restrict modification, reverse engineering or replacement of this LGPL library for debugging such modifications. Other application code is not part of the encoder library.