bonjour,

je suis actuellement confronté à un problème : je dois intégrer un dans un programme existant la possibilité de lire des DVDs et d'autres médias (mp3, divx etc...), et je me suis naturellement dirigé vers la libxine.
Pourquoi ? parceque mon programme existe et évolue depuis 3 ans sur la plateforme linux (meme s'il est multiplateforme et qu'il tourne théoriquement sous windows et WinCE), et je voulais conserver cet aspect multiplateforme, avec comme plateforme principale linux.
Il est donc hors de question pour moi de me baser sur des API propriétaires tels que directX qui ne tourne pas sous linux.
J'ai donc effectué des recherches sur des API tournant principalement sous linux mais pouvant également fonctionner sur les autres plateformes : j'ai trouvé libxine, vlc, et ffmpeg. Pour des raisons de commodités de programmation, mon choix s'est porté sur la libxine. Après des essais concluants d'intégration, j'en discute avec un ami développeur qui me parle de la licence GPL (dont je pensais connaitre le principe, et en fait,j'avais tout inversé).
Apparemment , les 3 APIs que j'ai cité sont sous licence GPL, sauf ffmpeg qui est sous licence LGPL du moment qu'on n'utilise pas certains composants GPL (composant que je risque d'utiliser forcément, comme certains decodeurs).
Et la , le drame : j'apprends que


Si une bibliothèque est distribuée sous GPL (et non sous LGPL), cela signifie-t-il que n'importe quel programme qui l'utilise doit être sous GPL ?
Oui, parce que le programme tel qu'il est effectivement exécuté inclus la bibliothèque.
(source : http://www.gnu.org/licenses/gpl-faq....IfLibraryIsGPL)


En clair, si j'intègre un composant GPL dans mon programme , il doit être forcément sous licence GPL également. Or, le programme dans lequel je veux intégrer la libxine, est un programme propriétaire que vend mon entreprise, elle a des concurrents et ne souhaite pas divulguer ses sources.

Le problème c'est que mon application doit rester multi-plateforme et que pour integrer la lecture de DVDs , je ne vois pas quoi prendre d'autre comme bibliothèque (qui seront surement moins performantes que xine ou vlc), en supposant qu'il en existe.

Je ne comprends pas l'interet de la licence GPL dans ce cas, car je me suis apercu qu'énormement de composants de linux sont sous licence GPL. Comment peut on développer des applications propriétaires sous linux si on ne peut pas utiliser les bibliothèques du système.

- Soit on redéveloppe les composants (perte de temps car ca existe deja, on n'a pas forcément les compétences, et ca peut représenter un boulot énorme).

- Soit on passe notre application sous licence GPL, ce qui implique de redistribuer les sources, ce qui n'est pas concevable pour une application propriétaire.

- Soit on change de système d'exploitation et on se tourne vers windows, ce qui est dommage, car linux offre énormément de possibilités.

J'ai lu qu'il y avait la licence L-GPL pour eviter ce genre de problème, qui est très bien adaptée à mon cas, malheureusement, aucune des bibliothèque citée n'est L-GPL.

Je viens poster ici pour avoir l'avis d'autres personnes qui ont été confronté à un problème identique, et peut-être m'apporter une alternative ?