views:

85

answers:

3

I'm including a copy of ffmpeg, and probably GPG too. I will be calling them as subprocesses from a python app I'm creating.

I'm distributing this and I'm wondering a) since I'm not using the library, I'm simply executing both programs within the python app, I do not have to release the source to my app right? b) do I need to obtain licenses for codecs? I'm using ffmpeg to let users convert their videos to h.264 and AAC before sending them to me.

Thanks, Chris

A: 

I don't think you need to release your source, as you're not modifying them or using them to create derivative works, merely executing them. It's just like you don't need to open source your code if you write a script file.

However, you will probably need to make available a copy of the source code for FFMPEG and GPL if you plan on distributing them, and a copy of the appropriate license.

futureelite7
-1: Sorry, but that is blatantly wrong. Well more than making the source code available solves the problem. Read ffmpeg's legal FAQ: http://ffmpeg.org/legal.html
Stu Thompson
+1  A: 

No legal advice on licenses here, but :

If you want to be on the safe side, I would suggest to not 'include' your copy of ffmpeg (instead let the user himself configure/install this part, just list and document it as a dependency).

Another advantage: that way (in most linux distro's) you also don't have to worry about ffmpeg upgrades / dependencies etc.

ChristopheD
I'm actually targeting Mac and Windows users here. Would it be possible to host the precompiled binaries as separate downloads on my site?
Chris
+1  A: 

A copy of your source? No.

Properly license the codecs? Yes. And more.

This should be readily apparent when you build the binaries when ./configure reports "nonfree and unredistributable" after including x264 and AAC codecs in your build. Both h264 and AAC are covered by a murky patent and licensing cloud. Read up on it.

ffmpeg itself is an issue with the LGPL / GPL licensing drama.

Some starting points:

If you want to be safe, and don't have the time/resources to deal with licensing, then do what ChristopheD says and let the user bother with the installation of ffmpeg.

Stu Thompson
OK I read the GPL faq and I think my usage falls under using exec() or fork() since I'm using python popen right? So I think this means I could at least bundle it with my app if I follow the other rules regarding including the source.Now for the licensing part, I know I should consult a lawyer about this, but the ffmpeg faq says they usually only go after you for commercial software. I plan on releasing my software as a free tool, even open sourcing it (rather pointless since it's quite basic). It's a tool that let's people upload pre-encoded video to my website, which is commercial.
Chris
So would that be leaning towards the safe side?
Chris
Stu Thompson
So if I release it, on say, my personal website, as an open source tool to use with my other website, I should be safe right? Or to take that to another level, release it as an open source tool that is unrelated to my main site, but benefits users of my main site.
Chris
"Safe" would be to have the users install their own ffmpeg. Setting up a second site is not going to change anything. If you did distribute it on your site, and the volume was was low, and was not for profit, then 'probably' nobody would care.
Stu Thompson