embedding videolan into some other GUI

For questions and discussion that is NOT (I repeat NOT) specific to a certain Operating System.
Guest

embedding videolan into some other GUI

Postby Guest » 07 May 2005 01:15

Does anybody have experience with embedding the videolan play inside some GUI. If so can you give me some guidline and what language you used. Thanks...

shlorty

fkuehne
Developer
Developer
Posts: 7264
Joined: 16 Mar 2004 19:37
VLC version: 0.4.6 - present
Operating System: Darwin
Location: Germany
Contact:

Re: embedding videolan into some other GUI

Postby fkuehne » 07 May 2005 18:39

VLC is written in C and some parts of it in C++ and Objective-C. You can decide to write either a new interface module in C, which becomes part of VLC, or use libvlc to write an entire new wrapper application around it. The first variant is easier of course.
If you write a module for OSX, you should use Objective-C. If you write a module for another platform, WxWidgets might help there. It's a C++ (afair)-library to GUIs on Linux and Windows. In both variants, looking at the existing modules will help of course.

Anyway, note that your new GUI needs to be released under the GPL (in both cases, independent from the fact whether you write a new wrapper or just a module)
VideoLAN
Felix Paul Kühne
Medic. VLC developer for appleOS since before you were born.
Blog: https://www.feepk.net

Guest

Postby Guest » 08 May 2005 01:23

thanks alot man. I'll start off by exploring some of the modules. :D

shlorty

Guest

Re: embedding videolan into some other GUI

Postby Guest » 17 May 2005 02:38

VLC is written in C and some parts of it in C++ and Objective-C. You can decide to write either a new interface module in C, which becomes part of VLC, or use libvlc to write an entire new wrapper application around it. The first variant is easier of course.
If you write a module for OSX, you should use Objective-C. If you write a module for another platform, WxWidgets might help there. It's a C++ (afair)-library to GUIs on Linux and Windows. In both variants, looking at the existing modules will help of course.

Anyway, note that your new GUI needs to be released under the GPL (in both cases, independent from the fact whether you write a new wrapper or just a module)

FKuehne -- I am pretty new to videolan and it looks like the above solution may take me some time to figure out. It seems you know quit a bit about videolan and I was wondering what you thought of this solution.


What I want to do is embed videolan into an existing LabView application.
I have seen this done with Microsoft Media Player because of the ActiveX capabilities of Labview, however am will use VideoLan because of it's ipv6 capabilites.

I believe I read somewhere that videoLan does have activeX support. I was just wandering what version the ActiveX is in and how stable it is before I try to take on this project.

Does this sound possible? Thanks for the help :)

fkuehne
Developer
Developer
Posts: 7264
Joined: 16 Mar 2004 19:37
VLC version: 0.4.6 - present
Operating System: Darwin
Location: Germany
Contact:

Re: embedding videolan into some other GUI

Postby fkuehne » 17 May 2005 16:01

I believe I read somewhere that videoLan does have activeX support. I was just wandering what version the ActiveX is in and how stable it is before I try to take on this project.

Does this sound possible? Thanks for the help :)
Yes, the new beta-release of VLC 0.8.2 features an ActiveX-module (mostly to embed VLC in webpages shown within the Internet Explorer), which is quite stable and usable from what I have heard. I have not tried it myself yet, since I use Mac OS X and Linux (PPC) only.
Embedding this module in your application should be the easiest way to go as far as I know, but I cannot estimate its usability for this purpose actually.
If this does not work, I fear that you'd need to use libvlc directly.

Anyway, I want to underline, that your application needs to licensed under the GNU General Public License as well, even if you just use the ActiveX-plugin and not libvlc. Otherwise, you would not be allowed to distribute your application in any case.
VideoLAN
Felix Paul Kühne
Medic. VLC developer for appleOS since before you were born.
Blog: https://www.feepk.net

shlorty

Postby shlorty » 17 May 2005 20:20

Fkuehne - thanks alot, your the man.... Dont wory the app I am writing it is not for distribution, it is just an internal application for illistration purposes. Thanks alot for you help. :D

shlorty

videolan_user
New Cone
New Cone
Posts: 4
Joined: 17 Sep 2007 16:12

Re: embedding videolan into some other GUI

Postby videolan_user » 20 Sep 2007 16:42

Hi,

Could you please throw some light on how to embed videolan into labview using libvlc? It would be of great help to me.
Thanks!

jacomoman
New Cone
New Cone
Posts: 5
Joined: 05 Aug 2008 02:23

Re: embedding videolan into some other GUI

Postby jacomoman » 10 Jun 2009 18:32

Hi,

I'm trying to get a very clear answer for this "embedding into another GUI" licensing question.

My scenario: I'm developing a desktop application that will invoke multiple instances of the VLC player loaded dynamically (at runtime) and display the players in embedded window frames of my application. The application is a commercial app, but will be given away for free with purchase of the company's hardware product. The company however does not want to release the app's source or lincense it under GPL.

Given the above scenario, am I mandated by GPL v2 to release my app's source as GPL v2 as well?

The following section in the VideoLan FAQ (starting with "easiest way to conform to the GPL") makes it sound like if I simply include the VLC source package (with all its copyright notices intact) I'll be fine and won't need to release my app as GPL also. Is this correct, or am I misreading this? Will my app fall under GPL v2 license terms if I use VLC in the embedded fashion as I described above?
May I redistribute a piece of VideoLAN software?

Yes, you may distribute an original or a modified version of a piece of VideoLAN software as long as you comply with its license terms. It is the GNU General Public License Version 2 (referred herein as GPL), and it is in the file named COPYING in our products.

Note: You do not need to ask the VideoLAN team the permission to do so!
How do I do comply with those terms?

The easiest way to conform to the GPL is to accompany the product you want to distribute with its sources.

For example, if you plan to distribute the latest binary version of VLC on a DVD-ROM, you should also include the VLC source code and the source code for the underlying included libraries on the same media.

If you plan to distribute the latest binary version of VLC on a website, you should provide a link to the VLC source code.

There are other ways to comply with the GPL, but this should be the simplest one as it does not rely on a contract.
A clear and concise answer would be very much appreciated.

Thank you,

-Jac

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: embedding videolan into some other GUI

Postby Jean-Baptiste Kempf » 10 Jun 2009 18:42

How do yo control VLC?
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

jacomoman
New Cone
New Cone
Posts: 5
Joined: 05 Aug 2008 02:23

Re: embedding videolan into some other GUI

Postby jacomoman » 10 Jun 2009 19:03

How do yo control VLC?
It's a Java app I'm developing. I'm using your JVLC sub-project to load, access, and control the VLC player.

Rémi Denis-Courmont
Developer
Developer
Posts: 15265
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: embedding videolan into some other GUI

Postby Rémi Denis-Courmont » 10 Jun 2009 20:08

This is simple and intricate at the same time.

If your software is a derivative work of VLC and/or JVLC, it must be released under the GNU GPL (to anyone that you release the software to).
Whether it is a derivative work is a matter of law (and interpretation). It is typically assumed that the use of (J)VLC APIs constitute derivative work.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

jacomoman
New Cone
New Cone
Posts: 5
Joined: 05 Aug 2008 02:23

Re: embedding videolan into some other GUI

Postby jacomoman » 10 Jun 2009 20:59

If your software is a derivative work of VLC and/or JVLC, it must be released under the GNU GPL (to anyone that you release the software to).
Whether it is a derivative work is a matter of law (and interpretation). It is typically assumed that the use of (J)VLC APIs constitute derivative work.
Hmm... so, it does come down to the portion of the GPL v2 license that talks about "derivative work". If it can be successfully argued in a court room that my work is "derived" from (j)VLC, then my work automatically falls under GPL v2 as well. Ok, I think I just got my answer. :( Thank you for that.

In that case then the site admins of VideoLan should really update the portion of your FAQ I mention above. Because as you can see it's quite misleading. It really does give one the impression that "all you have to do" is include VLC sources and you're good to go! :shock: Which is definitely not the case, correct? Or at the very least, include another section on "Embedding VLC in your application" and mention specifically that if you do that you MUST release your app as GPL v2. Clarifying stuff like this will save lots of people countless hours of searching.

Thanks again.

-Jac

The DJ
Cone Master
Cone Master
Posts: 5987
Joined: 22 Nov 2003 21:52
VLC version: git
Operating System: Mac OS X
Location: Enschede, Holland
Contact:

Re: embedding videolan into some other GUI

Postby The DJ » 10 Jun 2009 22:18

ccompany the product you want to distribute with its sources.
You are distributing a product. And you are keeping part of it's sources to yourself, so not distributing them with your product. Wether or not you distribute the vlc part is not what that sections details. It says "the product", not "vlc".
Don't use PMs for support questions.

rogerdpack
Big Cone-huna
Big Cone-huna
Posts: 574
Joined: 19 Jul 2008 23:48
Operating System: windows

Re: embedding videolan into some other GUI

Postby rogerdpack » 18 Nov 2010 15:07

[quote]It is typically assumed that the use of (J)VLC APIs constitute derivative work [\quote]
I assume that includes any thing that uses libvlc?
In that case, +1 for changing libvlc license to LGPL...makes sense for me :)
And the FAQ could use an update...maybe turn it into a wiki instead?

Of course, you don't have to actually release the source code, just say "available on request" (and hope nobody requests it...)

-r


Return to “General VLC media player Troubleshooting”

Who is online

Users browsing this forum: No registered users and 29 guests