Компоненты с открытым кодом и соответствующий исходный код

Медиавозможности EncoX опираются на открытое программное обеспечение. На этой странице перечислены встроенные компоненты, применимые к каждому из них лицензии и то, как получить их исходный код.

Встроенные компоненты с открытым кодом

EncoX встраивает перечисленные ниже компоненты в формединамических фреймворков— всего 8 (x264 и dav1d статически линкуются в libavcodec). Версии взяты из самих артефактов: сам FFmpeg — n6.0; 6.0.2 — это номер релиза на уровне CocoaPods, а не версия FFmpeg.

Компонент Версия Лицензия
ffmpegkit6.0GPL-3.0
libavcodecFFmpeg n6.0GPL-3.0
libavformatFFmpeg n6.0GPL-3.0
libavfilterFFmpeg n6.0GPL-3.0
libavutilFFmpeg n6.0GPL-3.0
libavdeviceFFmpeg n6.0GPL-3.0
libswresampleFFmpeg n6.0GPL-3.0
libswscaleFFmpeg n6.0GPL-3.0
x264Встроено в ffmpeg-kit 6.0.LTSGPL-2.0-or-later
dav1dВстроено в ffmpeg-kit 6.0.LTSBSD-2-Clause

За что отвечает каждый компонент

ffmpegkit(GPL-3.0) — обёртка FFmpeg с интерфейсом командного вызова.

libavcodec(GPL-3.0) — библиотека кодеков (x264 и dav1d статически линкуются в эту часть).

libavformat(GPL-3.0) — чтение, запись и разбор контейнерных форматов.

libavfilter(GPL-3.0) — обработка графа фильтров.

libavutil(GPL-3.0) — общие служебные функции.

libavdevice(GPL-3.0) — ввод и вывод устройств.

libswresample(GPL-3.0) — передискретизация звука и преобразование раскладки каналов.

libswscale(GPL-3.0) — преобразование цветового пространства и пиксельного формата видео.

x264(GPL-2.0-or-later) — программный кодировщик H.264; именно он и отличает сборку full-gpl от сборки LGPL. В каждом его исходном файле написано «either version 2 … or (at your option) any later version», поэтому его можно объединить с FFmpeg и распространять под GPL-3.0.

dav1d(BSD-2-Clause) — декодер AV1. Разрешительная лицензия, она не меняет лицензионный статус всей сборки; так как он линкуется статически, его исходный код входит в состав соответствующего исходного кода.

Получение соответствующего исходного кода (пункт 6 GPLv3)

Все 8 фреймворков выше распространяются под лицензией GPL-3.0 (x264 — под GPL-2.0 или более поздней, dav1d — под BSD-2-Clause; все три можно объединять и распространять вместе). Согласно пункту 6 GPL-3.0, распространяя программу в бинарном виде, вы должны дать получателям возможность получить соответствующий исходный код. Вот как это можно сделать:

Пакет соответствующего исходного кода (рекомендуем — всё за один раз)

https://encox.app/encox-corresponding-source.tar.gz

Полные исходники ffmpeg-kit 6.0.LTS, FFmpeg n6.0, x264 и dav1d, плюс рецепты сборки для обеих платформ и манифест (tar.gz).

ffmpeg-kit (обёртка и сборка, которые в этом проекте реально используются)

https://github.com/arthenica/ffmpeg-kit

Проект отправлен в архив (автор прекратил сопровождение), но репозиторий по-прежнему открыт: оттуда можно скачать все исходники и скрипты сборки. ⚠️ Предложение исходного кода от upstream распространяется только наопубликованные им самим бинарные файлы, а встраиваемые в EncoX части мы собираем сами, поэтому обязанность предоставить соответствующий исходный код лежит на нас — действует указанная выше загрузка.

Сам FFmpeg

https://ffmpeg.org/download.html

Официальный сайт исходников upstream; исходники n6.0 можно скачать по номеру версии.

x264

https://www.videolan.org/developers/x264.html

Официальный сайт исходников VideoLAN.

dav1d

https://code.videolan.org/videolan/dav1d

Официальный репозиторий VideoLAN.

Соответствующий исходный кодкаждой выпущенной версиипредоставляется по тому же адресу, что и бинарные файлы, — через указанную выше загрузку, в которую вместе упакованы рецепты сборки и манифест; для уже распространённых версий путь получения остаётся в одном месте, как того требует применимая лицензия. Письмо на support@encox.app служит только дляисторических версий, а именно для их поиска (тех, что не перечислены в манифесте); этот путь —не заменапрямому получению соответствующего исходного кода текущих выпущенных версий по тому же адресу на этой странице.

Полные тексты лицензий

Полные тексты лицензий распространяются вместе с приложением: каждый встроенный фреймворк содержит в своём bundle его LICENSE файл (libavcodec содержит ещё LICENSE.X264 и LICENSE.DAV1D). Страница «Аккаунт → Компоненты с открытым кодом и соответствующий исходный код» в приложении приводит эти тексты без изменений — она читает их во время работы из тех фреймворков, которые реально установлены на вашем устройстве, поэтому страница и файлы в пакете не могут разойтись.

Связанные примечания

Ограничения на обратный инжиниринг в «Условиях обслуживания» не применяются к компонентам, права на которые даны по указанным открытым лицензиям; для таких компонентов приоритет имеют условия применимой открытой лицензии. См.:Условия обслуживания— раздел «Объём лицензии».

Как мы обрабатываем ваши данные — см.Политика конфиденциальности.