본문 바로가기

FFmpeg 라이센스와 LGPL 라이센스에 대해 문의 있습니다.

quad0214 게시글 작성 시각 2022-12-20 23:40:55 게시글 조회수 1909

 안녕하세요. 지난번 문의("LGPL 라이센스 라이브러리를 사용한 앱 배포 관련 라이센스 문의")에 답변해주셔서 감사합니다. 이와 관련하여 추가 문의 드릴 것이 있어 글을 작성하게 되었습니다. 이번에 문의드릴 내용은 FFmpeg 라이센스와 LGPL에 관련된 것입니다.

지난번 문의와 동일하게 저의 상황은 다음과 같습니다.
- ffmpeg(버전 4.1.10)의 LGPL 라이센스에 해당하는 부분만을 수정없이 동적 링킹하여 앱을 개발
- 위 앱을 앱 스토어를 통해 배포할 예정


 질문은 다음과 같습니다.

1. 현재 제 앱에는 ffmpeg와 oboe 라이브러리(https://github.com/google/oboe, Apache 2.0)를 사용하고 있습니다. LGPL 2.1의 경우 Apache 2.0와 호환하지 않는다고 알고 있는데, 위 라이브러리를 동시에 사용하는 것도 문제가 되나요?

2. 지난번 문의의 답변(답변 1)으로 FFmpeg는 기본적으로 LGPL2.1과 GPL2.0에 따르고 있으므로, 설치정보를 제공할 필요가 없다고 하셨습니다. 이에 본 라이브러리의 LICENSE.md를 확인해보니 구성 파일의 특정 파라메터를 이용하면 LGPL 3.0 라이센스를 사용할 수 있는 것으로 보입니다. 이에 FFmpeg에 LGPL 3.0 라이센스를 사용할 수 있다는 해석이 맞는 지인지 궁금합니다.

Should you, for whatever reason, prefer to use version 3 of the (L)GPL, then the configure parameter `--enable-version3` will activate this licensing option for you. Read the file `COPYING.LGPLv3` or, if you have enabled GPL parts, `COPYING.GPLv3` to learn the exact legal terms that apply in this case.

 

2.1 질문 2가 맞아, LGPL 3.0 라이센스를 사용할 수 있다면, 질문 1은 문제가 안 되는 것이 맞나요?

 

3. 지난 문의의 답변(답변 1)으로 LGPL 3.0 라이센스의 경우 "User Product"의 경우 설치 정보를 제공해야하는 의무가 있다고 하셨습니다. 이때 안드로이드 앱도 "User Product"에 속하는 것인지 궁금합니다. GPL 3.0 라이센스에 따르면 유형의 물건 혹은 가전의 경우를 의미하는 것 같은데, 앱 또한 이에 속하는 것인 지 궁금합니다. 스마트폰이라는 유형의 물건에 설치되기 때문에 "User Product"이고, 설치 정보를 제공해야하는 것인가요?

A “User Product” is either (1) a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product.

 

4. 설치정보의 범위가 궁금합니다. FFmpeg 라이브러리를 앱에 포함하는 과정까지의 설치 정보를 제공해야하는 것 인지 혹은 앱을 앱스토어에 배포하는 과정까지의 설치 정보를 제공해야하는 것인지 궁금합니다. 후자에 해당하고, 앱 스토에 배포하기 위한 각종 키, 아이디 등까지 공유해야하는 것인지 염려되어 질문드립니다.
 

4.1 현재 FFmpeg 라이브러리를 앱에 포함하는 과정은 다음과 같습니다.

1. ffmpeg 소스 다운로드 및 so 파일로 빌드

2. 이전에 빌드한 ffmpeg를 동적링킹하여 사용하는 안드로이드 플러그인 개발 및 so 파일로 빌드

3. 유니티 엔진에서 안드로이드 플러그인 so 파일과 ffmpeg so 파일을 포함

4. 유니티 엔진에서 안드로이드 플러그인을 동적 링킹하여 사용

5. aab로 플레이 스토어에 배포(예정)

이때 어느 정도의 과정까지 설치 정보로 제공해야하는 것인지 궁금합니다.

 지난번 문의에 구체적으로 질문드리지 못하여 다시 문의드린 점과 긴 문의 드린점 죄송합니다. 각 부분에 있어 간략하게라도 답변 주신다면 감사하겠습니다.
 긴 문의 읽어주셔서 감사합니다.
 


* 지난 문의

 안녕하세요. LGPL 라이센스 라이브러리를 이용하여 앱을 개발하는 와중, 라이센스와 관련된 질문이 있어 문의드렸습니다.
 
 현재 ffmpeg(버전 4.1.10)의 LGPL 라이센스에 해당하는 부분만을 수정없이 동적 링킹하여 앱을 개발하고 있습니다. 또한 이를 앱 스토어에 배포할 예정입니다.

이에 다음과 같은 질문이 있습니다.
1. LGPL 3.0 라이센스와 GPL 라이센스에 따르면 User Product의 경우 설치 정보를 제공해야한다고 명시되어있습니다. 이때 LGPL 라이센스 라이브러리를 동적링킹하여 개발한 앱을 앱 스토어를 통해 배포할 경우도 User Product에 포함되며, 설치 정보를 제공해야하는 지 궁금합니다.
2. 질문 1의 개발, 배포 방식이 라이센스에 명시되어있는 오브젝트 코드(바이너리) 배포에 해당하는 지, 그리고 이에 대한 의무를 따라야하는 지 궁긍합니다.
2.1 질문 1의 개발, 배포 방식이 본 사이트에 게시되어있는 "공개소프트웨어 라이선스 가이드(개정 20211129)"의 "5.LGPL-3.0">"(2)바이너리배포"(p.80)의 사항들을 따라야하는 지 궁긍합니다.

 라이센스에 대한 지식이 부족하여 잘못된 정보를 토대로 문의드렸을 지도 모릅니다. 만약 정말로 그러하다면 죄송합니다.
문의 읽어주셔서 감사합니다.

* 지난 문의의 답변

안녕하세요.
공개소프트웨어 라이선스 관리자입니다.


문의주신 내용 답변드립니다.


1. GPL-3.0, LGPL-3.0의 라이선스에는 설치 정보를 제공해야 하는 의무가 있습니다.
말씀하신 바와 같이 LGPL-3.0의 라이브러리를 동적 링킹하여 배포하시는 경우 배포한 대상에게 설치정보를 제공하셔야 합니다.
다만, ffmpeg 4.1.10 버전은 기본적으로 LGPL-2.1을 따르며 GPL-2.0에 해당하는 파일들이 있습니다.
자세한 내용은 LICENSE.md 파일을 읽어보시길 바랍니다.


2. 소스코드 제공 방식이 아니므로 바이너리 형태의 배포로 볼 수 있습니다.
LGPL-2.1 라이선스에 따라 바이너리 배포 시의 의무사항을 이행하셔야 합니다.


2-1. ffmpeg의 GPL-2.0의 내용을 사용하지 않는 것으로 판단됩니다만 그래도 한번 어떤 내용을 사용하시는지 확인이 필요하며 그에 따라 저희 가이드의 라이선스 체크리스트를 통해 이행하실 준비가 되어 있으신지 확인이 필요합니다.

 

감사합니다.
※ 법적 분쟁 발생시 본 답변은 법률적 해석이나 논리로 활용될 수 없습니다.

맨 위로
맨 위로