Бесплатные/открытые библиотеки декодирования видео h.264? (не GPL)

Похоже, что основными проигрывателями являются x264 и xvid, и оба они под лицензией GPL. Это означает, что мы не можем интегрировать возможности декодирования в приложение для воспроизведения без лицензирования всего этого как GPL, поэтому мы не можем использовать ни то, ни другое.

Предпочтительной целевой платформой является Linux. Подойдет любая невирусная открытая лицензия, мы более чем рады предоставить источник любых изменений, которые мы вносим в библиотеки, но не все наше приложение.

Есть что-нибудь? Или, может быть, мы должны использовать GPL в качестве теста во время разработки и запланировать замену кодека с коммерческой лицензией перед поставкой?


person Mark Renouf    schedule 21.03.2009    source источник
comment
xvid не является кодеком H.264, это кодек MPEG-4 часть 2.   -  person alex strange    schedule 24.04.2009


Ответы (10)


OpenCore от PocketVideo теперь имеет открытый исходный код под лицензией Apache 2.0 как часть ОС Android: https://github.com/android/platform_external_opencore

person Krzysztof Kowalczyk    schedule 21.03.2009

Декодер ffmpeg H.264 — LGPL. Только кодировщики GPL, а x264 не предоставляет декодер.

Он также имеет то преимущество перед Framewave и IPP, что его действительно можно использовать.

person alex strange    schedule 23.04.2009
comment
В наши дни есть несколько кодировщиков без GPL: stackoverflow.com/a/39338135/32453 - person rogerdpack; 06.09.2016

IANAL, но если вы отправляете товары туда, где действуют патенты на программное обеспечение, вам придется не только платить лицензионные отчисления MPEG LA за декодирование h.264, но и лицензия может каким-либо образом помешать вам использовать декодеры с открытым исходным кодом. Я слышал о подобных неприятностях, связанных с другими кодеками.

person ephemient    schedule 21.03.2009

Cisco выпустила библиотеку h264 под лицензией BSD для кодирования и декодирования.

Я бы хотел, чтобы вы просто использовали GPL, но я не собираюсь просто говорить вам делать это, когда есть ответ.

http://www.openh264.org/
и на странице GitHub:
https://github.com/cisco/openh264

person Wyatt Ward    schedule 12.03.2015
comment
Обратите внимание, что вы должны платить роялти MPEG-LA при его компиляции и распространении. Было бы интересно, если бы применялась схема, аналогичная той, что @HUAGHAGUAH говорит о GPL (прямой вызов). - person Léon Pelletier; 12.06.2015
comment
Обратите внимание, что недостаток openh264 состоит в том, что он поддерживает только базовый профиль h264 (как для кодирования, так и для декодирования). Это означает, что вы можете использовать libav для декодирования h264 и openh264 для кодирования h264. - person Florent Thiery; 11.10.2018

Проект, основанный на библиотеке производительности AMD, Framewave, теперь видеокомпонент, поддерживающий декодирование h.264.

Лицензия является «лицензией Apache 2.0».

вы можете проверить это на Sourceforge SVN

person J.C. Inacio    schedule 21.03.2009
comment
Спасибо, я видел это и пропустил это, предполагая, что это только для AMD. - person Mark Renouf; 21.03.2009

ИАНАЛ.

Если вы отправляете немодифицированные двоичные файлы, созданные из немодифицированного источника GPL, и ваше приложение просто вызывает их, я считаю, что все ваше приложение не обязательно должно быть GPL. Возможно, вам придется включить документацию GPL и/или исходный код связанных приложений GPL, но если вы не вносите никаких изменений или не связываете код GPL, ваш код не должен быть затронут.

Что касается стандартов MPEG, это может быть совершенно другой мешок с червями...

person HUAGHAGUAH    schedule 21.03.2009
comment
Да, мы делаем это сейчас, просто вызывая mplayer. Будущая цель — интегрировать видео вместе с другим контентом в бесшовный результат, возможно, с прозрачностью или другими эффектами. В настоящее время считается, что для того, чтобы сделать это с разумной производительностью, его необходимо интегрировать. - person Mark Renouf; 21.03.2009
comment
IANAL тоже, но я бы поостерегся смешивать здесь LGPL и GPL. То, что вы описываете, было бы на 100% правильным для кода LGPL, но, возможно, если компонент GPL, который вы отправляете + не нравится как двоичный, является частью общего приложения, тогда все приложение также должно быть GPL. gnu.org/philosophy/why-not-lgpl.html - person damian; 24.06.2013
comment
для тех, кто не узнал аббревиатуру, IANAL означает «Я не юрист». - person Wyatt Ward; 11.09.2015

Хорошо, FFMpeg, кажется, обрабатывает h.264. Я считаю, что большая часть из них LGPL.

Все равно хотелось бы услышать опыт с ним (хороший или плохой) или другие варианты, спасибо.

-- Исправление, версия, которую я только что протестировал, кажется, скомпилирована с "--enable-gpl", что наводит меня на мысль, что она использует кодеки под лицензией GPL. Арх!

person Mark Renouf    schedule 21.03.2009
comment
FFMPEG необязательно ссылается на x264, и если это так, то он подпадает под GPL. Выбор лицензии зависит от параметров конфигурации, и я считаю, что для поддержки h.264 требуется x264. - person greyfade; 21.03.2009
comment
Ваше приложение заражено GPL, если оно вызывает ffmpeg только через system() или popen()? - person mouviciel; 23.03.2009
comment
^^ IANAL, но я думаю, что если вы поставляете бинарные файлы GPL со своим приложением, то, возможно, да. - person damian; 24.06.2013

Взгляните на библиотеки Intel IPP. Они не бесплатны, но очень дешевы (разовый платеж в сто долларов или около того). Вы также можете получить бесплатную оценку, чтобы проверить это. Лицензия очень открытая и, насколько я знаю, позволяет вам неограниченное распространение в вашем приложении навсегда, как только вы его купите.

person Lehane    schedule 23.03.2009

Я немного поработал с FFmpeg, хотя он был ограничен libavformat (часть кодека называется libavcodec). Я обнаружил, что API удивительно прямолинейный и простой в использовании. Они предоставляют несколько действительно полезных и поучительных примеров в стандартном исходном дистрибутиве.

В целом библиотека довольно качественная, но некоторых модулей явно не хватает, так что за часть h264 не ручаюсь. Однако я слышал хорошие отзывы о кодировщике.

person Emil H    schedule 21.03.2009

Обратите внимание, что VLC и большинство его библиотек теперь являются LPGL.

Движок VLC перелицензирован на LGPL — http://www.videolan.org/press/lgpl-libvlc.html

Модули воспроизведения VLC перелицензированы на LGPL — http://www.videolan.org/press/lgpl-modules.html

person TripleAntigen    schedule 28.08.2014