概要
自分のサービスやソフトウェアで、H.264動画エンコード機能を、ライセンス料を払わずに、ライセンス的にクリーンな状態で、提供する方法を調べました。
やり方
インストール
curl -L https://gist.githubusercontent.com/contribu/8a572edaccb86ae749449a3fec83ce5f/raw/d90b011686e79e8072a5df06673b2b0abc646d94/install_ffmpeg_supporting_openh264.sh | bash
エンコード
ffmpeg -i input -c:v libopenh264 [他のオプション]
解説
H.264のライセンス
openh264とは?
Cisco has taken their H.264 implementation, and open sourced it under BSD license terms. Development and maintenance will be overseen by a board from industry and the open source community. Furthermore, we have provided a binary form suitable for inclusion in applications across a number of different operating systems, and make this binary module available for download from the Internet. We will not pass on our MPEG-LA licensing costs for this module, and based on the current licensing environment, this will effectively make H.264 free for use on supported platforms.
https://www.openh264.org/
ソースコードからビルドしたものを使ってはいけないの?
ライセンス料を払わない場合は、ダメみたいです。
Q. Why is Cisco making both source and binary versions available?
In order for Cisco to be responsible for the MPEG LA licensing royalties for the module, Cisco must provide the packaging and distribution of this code in a binary module format (think of it like a plug-in, but not using the same APIs as existing plugins), in addition to several other constraints. This gives the community the best of all worlds - a team can choose to use the source code, in which case the team is responsible for paying all applicable license fees, or the team can use the binary module distributed by Cisco, in which case Cisco will cover the MPEG LA licensing fees.
openh264に対応したffmpegのインストールスクリプト
作りました
https://gist.githubusercontent.com/contribu/8a572edaccb86ae749449a3fec83ce5f