Исходный код
Некоторые наши приложения включают библиотеки с открытым кодом под лицензией GNU LGPL. Здесь можно скачать их соответствующий исходный код, точные скрипты, которыми мы их собираем, и наш собственный код, который с ними связывается.

1B Music 0.1.7
Для 1B Music 0.1.7. Всё, что ниже, — ровно то, из чего собрана эта версия.
- ffmpeg-9.0.2.tar.xzFFmpeg 9.0.2: оригинальный, неизменённый исходный код с ffmpeg.org (LGPL 2.1 или новее)12,0 MB
SHA-256 8c3850283eb25fa026482078a04051e0be17347b09ef81a0849bec15a96e002e - ffmpeg-9.0.2.tar.xz.ascПодпись OpenPGP релиза FFmpeg (ключ подписи релизов FFmpeg)520 B
SHA-256 d617fd94ea354dadd2a8bb16243d37c44e1e9729b06b6ad58fe30bfb0fa943f2 - 1bmusic-0.1.7-lgpl-src.tar.gzВсё остальное в одном архиве: скрипт сборки и конфигурация, наш JNI-декодер и его файл CMake, порты Chromaprint и libswresample на Kotlin, лицензионные уведомления и инструкции (README.txt)39 KB
SHA-256 36e3b0bea34daf26a99a7bdbfcafe27beaba16573c6f82e5db51c319093b1954 - build-ffmpeg-android.shСкрипт сборки FFmpeg с точными параметрами configure5 KB
SHA-256 2c4f30a3299070f0ffa7df5c91444128d2950dd68139f1a14372d02daeba4c10 - onebaudio.cНаш JNI-декодер (C), динамически связанный с FFmpeg25 KB
SHA-256 36382ea42e934eb7849c2605ccbc416a3d842c43c954298c1658a3007ee5e8a1 - CMakeLists.txtФайл CMake для JNI-декодера1 KB
SHA-256 3439f9132bd874a1906d9fceec364b757e4fefd219910e08c29de8c239d2ab29 - SHA256SUMSКонтрольные суммы SHA-256 всех файлов выше521 B
SHA-256 f251327bf6245991f05e94799e9b76b34a86383c1c05ce1017b506468e943b4b

1B Music 0.1.6
Для 1B Music 0.1.6. Всё, что ниже, — ровно то, из чего собрана эта версия.
- ffmpeg-9.0.2.tar.xzFFmpeg 9.0.2: оригинальный, неизменённый исходный код с ffmpeg.org (LGPL 2.1 или новее)12,0 MB
SHA-256 8c3850283eb25fa026482078a04051e0be17347b09ef81a0849bec15a96e002e - ffmpeg-9.0.2.tar.xz.ascПодпись OpenPGP релиза FFmpeg (ключ подписи релизов FFmpeg)520 B
SHA-256 d617fd94ea354dadd2a8bb16243d37c44e1e9729b06b6ad58fe30bfb0fa943f2 - 1bmusic-0.1.6-lgpl-src.tar.gzВсё остальное в одном архиве: скрипт сборки и конфигурация, наш JNI-декодер и его файл CMake, порты Chromaprint и libswresample на Kotlin, лицензионные уведомления и инструкции (README.txt)39 KB
SHA-256 679d37fd508de7c7d69b754566dbe40e2189a49a440ea16d9a27b9e80a7de293 - build-ffmpeg-android.shСкрипт сборки FFmpeg с точными параметрами configure5 KB
SHA-256 2c4f30a3299070f0ffa7df5c91444128d2950dd68139f1a14372d02daeba4c10 - onebaudio.cНаш JNI-декодер (C), динамически связанный с FFmpeg25 KB
SHA-256 36382ea42e934eb7849c2605ccbc416a3d842c43c954298c1658a3007ee5e8a1 - CMakeLists.txtФайл CMake для JNI-декодера1 KB
SHA-256 3439f9132bd874a1906d9fceec364b757e4fefd219910e08c29de8c239d2ab29 - SHA256SUMSКонтрольные суммы SHA-256 всех файлов выше521 B
SHA-256 fa76450f4733144852ea2691f9c6c4ec7f9584aa0ba8ad6b6d7cfc7188056842

1B Music 0.1.4
Для 1B Music 0.1.4. Всё, что ниже, — ровно то, из чего собрана эта версия.
- ffmpeg-9.0.2.tar.xzFFmpeg 9.0.2: оригинальный, неизменённый исходный код с ffmpeg.org (LGPL 2.1 или новее)12,0 MB
SHA-256 8c3850283eb25fa026482078a04051e0be17347b09ef81a0849bec15a96e002e - ffmpeg-9.0.2.tar.xz.ascПодпись OpenPGP релиза FFmpeg (ключ подписи релизов FFmpeg)520 B
SHA-256 d617fd94ea354dadd2a8bb16243d37c44e1e9729b06b6ad58fe30bfb0fa943f2 - 1bmusic-0.1.4-lgpl-src.tar.gzВсё остальное в одном архиве: скрипт сборки и конфигурация, наш JNI-декодер и его файл CMake, порты Chromaprint и libswresample на Kotlin, лицензионные уведомления и инструкции (README.txt)39 KB
SHA-256 4c5d1d68d4c73ef388b624890bc715dc055a6e81230a456de25aed8bb19a7349 - build-ffmpeg-android.shСкрипт сборки FFmpeg с точными параметрами configure5 KB
SHA-256 2c4f30a3299070f0ffa7df5c91444128d2950dd68139f1a14372d02daeba4c10 - onebaudio.cНаш JNI-декодер (C), динамически связанный с FFmpeg25 KB
SHA-256 36382ea42e934eb7849c2605ccbc416a3d842c43c954298c1658a3007ee5e8a1 - CMakeLists.txtФайл CMake для JNI-декодера1 KB
SHA-256 3439f9132bd874a1906d9fceec364b757e4fefd219910e08c29de8c239d2ab29 - SHA256SUMSКонтрольные суммы SHA-256 всех файлов выше521 B
SHA-256 cf4d58b2f768bf90c41c0012c0427b10e1a7c72299a7f8dcedde12d9898ddfd4

1B Music 0.1.3
Для 1B Music 0.1.3. Всё, что ниже, — ровно то, из чего собрана эта версия.
- ffmpeg-9.0.2.tar.xzFFmpeg 9.0.2: оригинальный, неизменённый исходный код с ffmpeg.org (LGPL 2.1 или новее)12,0 MB
SHA-256 8c3850283eb25fa026482078a04051e0be17347b09ef81a0849bec15a96e002e - ffmpeg-9.0.2.tar.xz.ascПодпись OpenPGP релиза FFmpeg (ключ подписи релизов FFmpeg)520 B
SHA-256 d617fd94ea354dadd2a8bb16243d37c44e1e9729b06b6ad58fe30bfb0fa943f2 - 1bmusic-0.1.3-lgpl-src.tar.gzВсё остальное в одном архиве: скрипт сборки и конфигурация, наш JNI-декодер и его файл CMake, порты Chromaprint и libswresample на Kotlin, лицензионные уведомления и инструкции (README.txt)39 KB
SHA-256 81ce24f758675b7fce4790793f1882bdd103cb5e9fbba5e0e06a6444f73b6047 - build-ffmpeg-android.shСкрипт сборки FFmpeg с точными параметрами configure5 KB
SHA-256 2c4f30a3299070f0ffa7df5c91444128d2950dd68139f1a14372d02daeba4c10 - onebaudio.cНаш JNI-декодер (C), динамически связанный с FFmpeg25 KB
SHA-256 36382ea42e934eb7849c2605ccbc416a3d842c43c954298c1658a3007ee5e8a1 - CMakeLists.txtФайл CMake для JNI-декодера1 KB
SHA-256 3439f9132bd874a1906d9fceec364b757e4fefd219910e08c29de8c239d2ab29 - SHA256SUMSКонтрольные суммы SHA-256 всех файлов выше521 B
SHA-256 df189e74aafa927ca733a2ee7a0f43ab687b29c832fef6e9b52085a80548af92
Что использует 1B Music
- FFmpeg 9.0.2 (libavformat, libavcodec, libavutil, libswresample) декодирует форматы, которые Android не воспроизводит сам: APE, WavPack, TTA, Musepack, WMA, DSD, AIFF, CAF и Speex, а также Opus и Vorbis — для точного воспроизведения без пауз.
- Он собран без каких-либо изменений, только из компонентов LGPL (без частей под GPL и несвободных частей), и поставляется внутри приложения как отдельные разделяемые библиотеки, так что вы можете заменить их собственной сборкой.
- Для вычисления акустических отпечатков приложение также содержит порты Chromaprint и libswresample на Kotlin, которые доступны здесь под той же лицензией.
Пересборка и замена библиотек
- Установите версию Android NDK, указанную в скрипте, и запустите
tools/build-ffmpeg-android.sh. Он скачает FFmpeg, проверит его SHA-256 и соберёт для arm64-v8a, armeabi-v7a и x86_64. - Чтобы использовать изменённый FFmpeg, распакуйте свои исходники туда, где их ожидает скрипт, или измените его строку configure.
- Замените
libavformat.so,libavcodec.so,libavutil.soиlibswresample.soв APK приложения для ABI вашего устройства, подпишите APK своим ключом и установите их. В README.txt описан каждый шаг.
Лицензия
Эти компоненты распространяются на условиях GNU Lesser General Public License версии 2.1 или (по вашему выбору) любой более поздней версии. Полный текст есть в архиве и в приложении (Настройки → О приложении). FFmpeg — товарный знак Фабриса Беллара, основателя проекта FFmpeg.
Мы храним здесь каждую версию не менее трёх лет с момента её распространения. Есть вопросы или нужен другой носитель? Напишите на 1bytesystems@gmail.com.