Slashdot Mirror


MPlayer Licence Trouble With A Twist

protonman writes "A hefty flame war has broken loose on the debian-devel mailinglist about (amongst other things) the legality of mplayer. The interesting part in this conflict is that unlike in previous alledged GPL violations, the culprit is not the unwillingness to provide the source, but the prohibition of the distribution of binaries, thereby violating section 6 of the GPL: 'You may not impose any further restrictions on the recipients' exercise of the rights granted herein.' Read also the blurb on the MPlayer homepage."

15 of 455 comments (clear)

  1. The simple fact.. by Anonymous Coward · · Score: 5, Insightful

    ..is that most people are perfectly content ignoring license issues, as long as the software does what they want it to do.

    Most people don't care about licensing. Copying free software, copying closed software, it's all the same.

    1. Re:The simple fact.. by kyz · · Score: 5, Interesting

      The problem is, it's difficult to make good MPlayer binaries

      It's difficult to make good MPlayer binaries because MPlayer is badly written. Don't you get that? If the MPlayer authors actually cared about well-written software, it would use carefully crafted, modular APIs between all the component parts. I could add Quicktime codecs to MPlayer just by copying a hypothetical mp_qtime.so into lib/mplayer/codecs. Instead, it's a sprawling mess with files all over the place and a special codecs.conf acting as a central registry. Why can't each plugin tell Mplayer what capabilities it has, like Xine or XMMS does?

      MPlayer is famous simply mostly because it got Win32 codecs to work outside Windows. Kudos to them for doing so, but distributing other people's binary codecs is usually illegal. Apple don't permit you to hack into the Sorensen codecs and get them to work outside Quicktime Player.

      How would the like MPlayer authors like mplayer to be embedded as a binary in some media player, without source? Oh yeah, they whined like kiddies when that happened.

      I happen to write decompressors for various archive formats. Do I just take DOS binaries for those formats and hack into them to run them in Linux, then say "x86 only guys!"? No, I fully reverse-engineer the originals and write new depackers from scratch. The MPlayer team should do the same, and stop relying on other people's binaries for their glory.

      --
      Does my bum look big in this?
    2. Re:The simple fact.. by pla · · Score: 5, Interesting

      This does not at all reflect the views of the MPlayer authors.

      He didn't say that the MPlayer authors don't care about licensing. He didn't say Debian doesn't care about licensing (in fact, Debian seems to insist on strict adherence to the GPL more than just about any company out there). He didn't say that most *companies* don't care about licensing issues.

      He said that most PEOPLE don't care about licenses. And, I believe that holds true.

      How many MP3s do you have for which you have no corresponding CD in your posession? How about ROMS for video games? Windows installations (even if you own one, do you run it on more than one computers)? How about 30-day shareware with no hard timeout, which "expired" about two years ago?

      People care abour convenience and functionality. If they didn't, how many people would *BUY* Debian or RedHat CDs? I can download all of that from the net, totally legally. I can download all of the documentation (or at least comparable) as well. Why would I pay for a CD? Because $20 for a 4-8 CD set saves me several days time downloading and burning the same material. OTOH, saving $80-$160 by borrowing a friend's Windows install CD and spending 20 minutes looking on-line for a valid CD key seems very much worth it. Same for MS Office.

      People pay for convenience, not because they give a damn about whether or not they legally *need* to pay. I think most people *prefer* to stay legal, given the choice with no extra cost (in time *or* money), but they won't go very far out of their way to make sure they stay legal.

      Note that I don't mean this to *encourage* piracy - Just describing how I see this issue WRT other peoples' buying/stealing habits.


      Now, to address the parent thread, I have an interesting question...

      If the MPlayer license complies with the GPL in all regards *except* allowing binary distribution, that means the authors cannot stop me from modifying and re-releasing it under GPL-or-better terms. So why hasn't Debian done exactly that? "Nope, not MPlayer, we changed int main(int argc, char **argv) to int main(int argc, char *argv[]), much more aesthetically pleasing, and released it as DPlayer under pure GPL terms"?. Seems that the GPL allows that...

  2. That's why we use "unofficial" debs by Chacham · · Score: 5, Informative

    That's why we use "unofficial" debs. Sometimes very scary, such as in Ximian. But, for mplayer this site does well.

    1. Re:That's why we use "unofficial" debs by gibber · · Score: 5, Informative
      One should note that this is what instigated the whole thread in the first place. Gabucino posted to debian-devel because he couldn't get Christian Marillat to respond to the noted problems with his packages.

      Read the thread here

  3. There are other legal problems with MPlayer by Anonymous Coward · · Score: 5, Interesting

    I agree with Debian-legal, and have to say they are being generous by only pointing out the obvious problem with the GPL. The biggest problem with MPlayer (and the one that it's developers can't fix so easily) is that much of the code was appropriated from other projects that lack proper (or in some cases, any) licenses. I'm sure if the MPlayer people were to say that "OK, MPlayer is pure GPL" that the next question will be to what extent they even have the right to do that. It's unfortunate, but because proper attention was not paid during development, MPlayer will probably be a permanently grey-area application legally.

  4. Re:The downfall of debian by chromatic · · Score: 5, Insightful

    I'm glad to see a group of people with a consistent ethical code -- especially when those ethics haven't compromised for the sake of pragmatism. (I'm even happier when it's an ethical code that complements mine.)

    It seems kind of funny to suggest that Debian needs to compromise its principles to "win the desktop", when the goal of Debian has always been to spread free software, not to "win" anything.

  5. The main gist.... by catch23 · · Score: 5, Informative

    It seems like this thread explains lots of the issues regarding mplayer and it's inclusion in debian:
    http://lists.debian.org/debian-devel/2003 /debian-devel-200301/msg01772.html

    The message basically outlines this:

    xineplug_decode_ff.so 829032 - this is libavcodec, the MPEG4/DivX decoder
    Did you pay the royalty to the MPEG Group?
    They can come any time...

    xineplug_decode_faad.so 164048 - this is the FAAD audio decoder, which is
    just as illegal as libavcodec

    Vidix - unusable ballast without libdha, which is
    not packaged

    nvidia_vid.so - part of Vidix.. Instead it is a
    placeholder :) Just contains
    printf("TODO") :))
    Nice to know xine was packaged by people
    who knew what they were doing :)))))))

    xineplug_decode_w32dll.so - code (from Wine) to load win32 DLLs
    It's total legal isn't it..?

    ASF demuxer - Microsoft already forced a GPL project
    to remove it (VirtualDub)
    I hope Debian is also ready to face this :)

    xineplug_decode_gsm610.so - xine's gsm610 is GPL, MPlayer's is not? :)
    Nice.
    WE say it's GPL.
    Its original author says it's GPL.
    Debian-legal says we are all wrong?? :))
    Make me laugh.

    1. Re:The main gist.... by Anonymous Coward · · Score: 5, Informative

      As I posted on devel-legal about, the inclusion of Xine over MPlayer seemed totally personal.

      You, in fact, pasted MPlayer's response as to why Xine should be left out if they leave out MPlayer.

      All those files are Xine packages.

      Thank you for proving my point.

      They are not prohibiting binary distribution now. They did so in the past, but now they are not. The article should have said that the issue was about the FORMER legality of MPlayer, mostly because they broke some licenses earlier on so the could get a shipping player. I would have agreed with Debian then, but now that it is 100% GPL and allows binary distribution, this whole article is moot. Even if they said now that you can't build binary distributions, according to the licensing you could anyways. In the US, you can't enforce an "illegal" contract or agreement. The whole issue is moot and dead. That's why debian-legal has no clue what they are talking about, and it's why SourceMage GNU/Linux (I was former Video section maintainer), allows MPlayer into our grimoire. It's a no-brainer, really.

      Seth Woolley

  6. Re:The downfall of debian by Jason+Earl · · Score: 5, Insightful

    Ethics...smethics. The best thing about Debian is that they take a good hard look at the legal aspects of each software package so that you don't have to. If something is in Debian main then you can be pretty sure that someone with a clue has taken a gander at the license, and that is a big deal.

    Folks can pretend that technical issues are more important than legal issues, but that's just not true. The software packages that don't pay attention to the legal issues eventually get tripped up by them. For example, think of all of the pain and agony that KDE could have saved if they had been careful about the licensing issues right from the start.

  7. Re:You really need to build it.... by Cid+Highwind · · Score: 5, Interesting
    Erm... let's see here

    [will@chi will] $ ldd `which gmplayer`
    libpostproc.so.0 => /usr/lib/libpostproc.so.0 (0x40014000)
    libdvdnav.so.1 => /usr/lib/libdvdnav.so.1 (0x4001d000)
    libdvdread.so.2 => /usr/lib/libdvdread.so.2 (0x40032000)
    libpthread.so.0 => /lib/libpthread.so.0 (0x40052000)
    libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x400a2000)
    libogg.so.0 => /usr/lib/libogg.so.0 (0x400c2000)
    libdv.so.2 => /usr/lib/libdv.so.2 (0x400c6000)
    libdivxdecore.so.0 => /usr/lib/libdivxdecore.so.0 (0x400f0000)
    libpng.so.3 => /usr/lib/libpng.so.3 (0x4013c000)
    libz.so.1 => /usr/lib/libz.so.1 (0x40168000)
    libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x40176000)
    libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40197000)
    libcdda_interface.so.0 => /usr/lib/libcdda_interface.so.0 (0x401e9000)
    libcdda_paranoia.so.0 => /usr/lib/libcdda_paranoia.so.0 (0x401fc000)
    libnsl.so.1 => /lib/libnsl.so.1 (0x40205000)
    libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0x4021a000)
    libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0x40473000)
    libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0x404e1000)
    libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0x404fa000)
    libm.so.6 => /lib/libm.so.6 (0x4050f000)
    libpangoxft-1.0.so.0 => /usr/lib/libpangoxft-1.0.so.0 (0x40532000)
    libpangox-1.0.so.0 => /usr/lib/libpangox-1.0.so.0 (0x40554000)
    libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0x40561000)
    libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x40595000)
    libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0x405c8000)
    libdl.so.2 => /lib/libdl.so.2 (0x405cd000)
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x405d0000)
    libGL.so.1 => /usr/lib/libGL.so.1 (0x4063a000)
    libXxf86dga.so.1 => /usr/X11R6/lib/libXxf86dga.so.1 (0x40687000)
    libXv.so.1 => /usr/X11R6/lib/libXv.so.1 (0x4068d000)
    libXxf86vm.so.1 => /usr/X11R6/lib/libXxf86vm.so.1 (0x40692000)
    libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x40698000)
    libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x406a8000)
    libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0x40788000)
    libvgagl.so.1 => /usr/lib/libvgagl.so.1 (0x407fa000)
    libvga.so.1 => /usr/lib/libvga.so.1 (0x40809000)
    libgif.so.4 => /usr/lib/libgif.so.4 (0x40876000)
    libesd.so.0 => /usr/lib/libesd.so.0 (0x4087f000)
    libaudiofile.so.0 => /usr/lib/libaudiofile.so.0 (0x40887000)
    libc.so.6 => /lib/libc.so.6 (0x408ab000)
    libpopt.so.0 => /usr/lib/libpopt.so.0 (0x409d9000)
    libXft.so.2 => /usr/lib/libXft.so.2 (0x409e0000)
    libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x409f4000)
    libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x409fc000)
    libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0x40a25000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
    libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40eb7000)


    This is for MPlayer 0.90rc3-3.2.1. Note that this listing doesn't count the 74 Windows .dlls and directshow filters that MPlayer can also load. You could probably trim off some of that by building it without the GUI, and without some of the more useless video codecs, but it would still require a lot of libraries. Still, I don't even want to *think* about statically linking all of that!

    (insert some random less-compressable stuff here to defeat the lameness filter. All this thing does is piss off legitimate users. The crapflooders have all gone home, you can turn off the gzip-nazi filter now, Taco!!)
    --
    0 1 - just my two bits
  8. MPlayer - packaging - debian by jjermann · · Score: 5, Insightful

    Hey men!

    What has become of Slashdot? Is it really a non objective flaming pool? Did nobody care to take at least a _short_ look at it before commenting stuff?

    I took a _quick_ look. IIRC it's about the following:

    1. binary packages of MPlayer in general
    2. debian packages made by Marillat
    3. license issues of MPlayer (GPL)
    4. patent issues of MPlayer
    5. why is xine in debian and MPlayer not?
    6. Gabu's "stile of speaking"

    I (almost) didn't see any objective statement about it so far, just crap. :(

    1. There exist binary packages of MPlayer (see http://www.piorunek.pl/~dominik/linux/pkgs/mplayer /)
    Their attutude is: Better no packages than bad packages as they have to read all bugreports about them (not the distributions). IMHO they're right.

    2. They work to get good debian packages, Marillats packages were refused because at the time he provided them, they were illegal and full of bugs. We still get lot of complains by ppl using Marillats packages...

    3. The developer really worked hard to get a 100% GPLed software. Many issues (like libmpeg2 and xanim(?)) are solved through mails with the authors.

    4. There are mpeg4 patent issues with libavcodec.

    5. But: the exact same issues apply to xine!! (e.g. it uses libavcodec too)

    6. no comment, just stay objective ;)

    What I wanted to say: Please stay objective and don't start to write crap....

  9. Sorry people... by protonman · · Score: 5, Informative

    Hi all,

    This is the story submitter, and I must appologise for causing this much confusion. I read the blurb on the mplayer homepage and thought it would be interesting for you /. people. Skimmed the mailinglist a bit and wrote a little something on what I thought was the most "newsworthy" part of the flame war.

    As it turns out, the issue is much more complicated than I made it look, and instead of entertaining the /. crowd with a insightful view on OS politics I did nothing but confuse matters more.

    If I were an editor on this website, I would have refused my submission.

    I'd like to apologise not only to the /. crowd, but also to the debian and mplayer developers whom this concerns.

    Sorry again,

    Protonman.

    ps. Licence/License? I don't really care, I'm not a native speaker. :-P

    --
    The man of knowledge must be able not only to love his enemies but also to hate his friends.
  10. Talk is cheap by Kiwi · · Score: 5, Interesting
    I've reverse engineered decompression algorithms far more difficult than SVQ3's decoder.

    Talk is cheap. Show us the code.

    The devil is in the details. In other words, it is easy to say something is easy until you have done it.

    If you have reversed-engineered a significant audio or video codec, I will retract my position and be suitably impressed.

    And, yes, I do see you code at http://www.kyz.uklinux.net/packers.php3, but there isn't an audio nor video codec to be seen. It all looks like LZW variants; lossy compression (DCTs, wavelets, and what not) is a completely different kettle of fish.

    - Sam

    --

    The secret to enjoying Slashdot is to realize that it should not be taken too seriously.

  11. Licensing? by Jeff+Kelly · · Score: 5, Insightful

    I would consider the minor GPL violations the least of mplayers problems. What about the numerous video and audio formats they use without proper licensing?

    Even if everything is reverse engineered then it would only save them from infringing on copyright but they would still have to pay the technology owners which means that at least mpeg-1 and mpeg-2 are out of the question ($ 2,50 per copy licensing fees). The same holds for several other formats which are not covered under a non commercial license.

    I might get something wrong here but why can mplayer (and xine for that matter) use mpeg-1/2 divx, mp3 vivo and several other formats (including wma/wmv) without paying royalties to the respective copyright and patent holders and why doesn't anybody care about this?

    May somebody please enlighten me about this issue?

    Regards

    Jeff