Discussion:
QuickView
(too old to reply)
Gabucino
2003-02-15 18:38:43 UTC
Permalink
Hi,

I wonder if ffmpeg developers know that ffmpeg source code is distributed
in a shareware closed source program?

QuickView for DOS: http://multimediaware.com/qv/
QuickView for Linux (Beta): http://linuxvideo.info/

--------CUT--------- from qv page
F u l l s c r e e n V i d e o

Without expensive hardware
No Windows required

There are 2 versions of QuickView for DOS available

The Pro version (protected mode) also supports AVI and MOV videos with the
DivX ;-) codecs (incl. videos with FourCC DIV3, DIV4, DX50 and MP43),
Indeo (tm) and QPEG (tm) codecs among many others. Subtitles with AVI
(DivX) files are supported as well.
QuickView Pro will also play incompletely downloaded AVI and DivX files.
You can therefore preview videos before you start big downloads.
------------------------

---------CUT------------
The MPEG Audio Code is based in part on MPG123; Copyright (c) 1995-98 by
Michael Hipp, all rights reserved.
...
This product includes software developed by DivX DivXNetworks, Inc. DivX
is a trademark of DivXNetworks, Inc, www.divx.com
This product uses parts of ffmpeg, Copyright (c) Fabrice Bellard,
ffmpeg.sourceforge.net
------------------------

We've examined the binary, and came to the conclusion that it contains
parts of MPlayer, RTjpeg, XAnim sources (apart other codes that
QuickView authors mentioned on their homepage, and you can find above).

Thus, I see this the most serious license violation I've ever seen :)

Let me some comments.

- QV for Linux (Beta) has expired, so you'll have to set your clock a bit
back ;)
- it also REQUIRES ROOT privileges. I haven't gave it yet, will setup some
enviroment first. Probably requires it for svgalib.
- It plays MPEG4 (recorded from V4L with mencoder+lavc) under DOS. :)

I've Cc'ed all the developers that are affected by this.

I'll explicitly forward this mail to the mplayer-dev-eng list, because
it doesn't allow multiple Cc's.

I suggest this discussion should take place on
ffmpeg-***@lists.sourceforge.net mailing list, to avoid tons of Cc.
--
Gabucino
MPlayer Core Team
Alex Beregszaszi
2003-02-15 18:48:53 UTC
Permalink
Hi,

also it's documentation contains nice parts:
URL: http://multimediaware.com/qv/qvdoc.htm

--- quote ---
Supported video codecs for AVI and MOV:
# Angel Potion 4 definitive version 1 [AP41] (24 bit)
# Cinepak [cvid] (8 and 24 bit)
# CLJR [cljr] (24 bit)
# Creative Video Blaster [cyuv] (16 bit)
# DivX ;-) Low Motion [div3] (24 bit)
# DivX ;-) Fast Motion [div4] (24 bit)
# DivX 4 [divx] (24 bit)
# DivX 5 [dx50] (24 bit)
# DV Codec [DVSD, DVCS, DVCP, DVC, CDVC] (24 bit)
# I420 (24 bit)
# Indeo(tm) 3.1, 3.2 and 5 [IV31, IV32 and IV50] (24 bit)
# Intel I263 H.263 [I263] (24 bit)
# Microsoft MPEG-4 Version 1 [MPG4] (24 bit)
# Microsoft MPEG-4 Version 2 [MP42] (24 bit)
# Microsoft MPEG-4 Version 3 [MP43] (24 bit)
# Motion JPEG [MJPG] (24 bit)
# MS Video 1 [msvc] (8 and 16 bit)
# QPEG [QPEG] (V1.0 and 1.1, 8 bit)
# Rainbow Runner [dmb1] (24 bit)
# Warcraft3 movie [BLZ0] (24 bit)

# QuickTime Video Codecs:
# Animation [rle] (1, 4, 8, 16 and 24 bit)
# MotionMotion JPEG A [MJPA] (24 bit)
# Planar RGB [8BPS] (grayscale, 8, 24 and 32 bit)
# Sorenson v1 [SVQ1] (24 bit)
# Video [rpza] (16 bit, only HiColor Playback)
--- !quote ---

So, CYUV comes from Dr. Tim & Mike, later MPlayer.
BLZ0 and dmb1 are standard MPEG4 and MJPEG files, just fourccs differ ->
look at the codecs.conf from MPlayer and it's comments.. :)

MP42,MP43 is only supported by ffmpeg opensourcely.

Planar RGB/8BPS comes from Xanim and/or OpenQuicktime
--
Alex Beregszaszi <***@naxine.org>
(MPlayer Core Developer -- http://www.mplayerhq.hu/)
ZDNet.au: "Where do you see Linux in 5 years?"
Alan Cox: "Hopefully world domination! (laughs)."


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Mario Knezovic
2003-02-15 20:42:06 UTC
Permalink
I suggest to read the documentation of ffmpeg prior to complaining, which
clearly allows such use:

http://ffmpeg.sourceforge.net/ffmpeg-doc.html

7.2 Integrating libavcodec or libavformat in your program

You can integrate all the source code of the libraries to link them
statically to avoid any version problem. All you need is to provide a
'config.mak' and a 'config.h' in the parent directory. See the defines
generated by ./configure to understand what is needed.

You can use libavcodec or libavformat in your commercial program, but any
patch you make must be published. The best way to proceed is to send your
patches to the ffmpeg mailing list.

Best regards,
Mario Knezovic

BONESPARK Software Artistic





-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Michael Niedermayer
2003-02-15 21:47:29 UTC
Permalink
Hi
Post by Mario Knezovic
I suggest to read the documentation of ffmpeg prior to complaining, which
http://ffmpeg.sourceforge.net/ffmpeg-doc.html
7.2 Integrating libavcodec or libavformat in your program
You can integrate all the source code of the libraries to link them
statically to avoid any version problem. All you need is to provide a
'config.mak' and a 'config.h' in the parent directory. See the defines
generated by ./configure to understand what is needed.
You can use libavcodec or libavformat in your commercial program, but any
patch you make must be published. The best way to proceed is to send your
patches to the ffmpeg mailing list.
and
------LGPL---
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
^^^^^^
modification of the work for the customer's own use and reverse
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
engineering for debugging such modifications.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
------------
------Quick view license--
All files belonging to QuickView contain proprietary information which are
protected by copyright. This includes reverse engineering, decompiling and
disassembling. No part may be altered or translated without the prior written
consent of the author. Any violation of the copyright will be prosecuted by
the author and by Intel.
--------------------------


------LGPL---
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
during execution displays copyright notices, you must include the
^^^^^^^^^^^^^^^^
copyright notice for the Library among them, as well as a reference
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
directing the user to the copy of this License. Also, you must do one
of these things:

a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
user can modify the Library and then relink to produce a modified
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)

b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.

c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.

d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.

e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
-------

[...]

Michael


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Gabucino
2003-02-15 22:33:11 UTC
Permalink
Post by Gabucino
[...]
Michael
Good points. In case he answers only in private (as he did to me,
dunno why), please forward it to here.
--
Gabucino
MPlayer Core Team
- Debian? - "This is our project and we can do whatever we want with it."
Michael Stone <mstone#debian.org>
Michael Niedermayer
2003-02-15 23:51:21 UTC
Permalink
Hi
Post by Gabucino
Post by Gabucino
[...]
Michael
Good points. In case he answers only in private (as he did to me,
dunno why), please forward it to here.
i cant do that, btw, no he didint awnser yet

Michael


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Mario Knezovic
2003-02-15 22:47:32 UTC
Permalink
Hi again,

my way of understanding Gabucino was that he complained about the use of
ffmpeg in a closed source project, not the "technical license details"
(please let me call it like this without risking annoyance).
Post by Gabucino
I wonder if ffmpeg developers know that ffmpeg source code is distributed
in a shareware closed source program?
That's why I quoted the documentation of ffmpeg.

But still I would like to discuss what I call the "technical details" as I
would like to use ffmpeg in a similar way in the future and of course, I
would not like to violate the license.
Post by Gabucino
Post by Mario Knezovic
I suggest to read the documentation of ffmpeg prior to complaining, which
http://ffmpeg.sourceforge.net/ffmpeg-doc.html
7.2 Integrating libavcodec or libavformat in your program
You can integrate all the source code of the libraries to link them
statically to avoid any version problem. All you need is to provide a
'config.mak' and a 'config.h' in the parent directory. See the defines
generated by ./configure to understand what is needed.
You can use libavcodec or libavformat in your commercial program, but any
patch you make must be published. The best way to proceed is to send your
patches to the ffmpeg mailing list.
and
------LGPL---
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
^^^^^^
modification of the work for the customer's own use and reverse
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
engineering for debugging such modifications.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
------------
------Quick view license--
All files belonging to QuickView contain proprietary information which are
protected by copyright. This includes reverse engineering, decompiling and
disassembling. No part may be altered or translated without the prior written
consent of the author. Any violation of the copyright will be prosecuted by
the author and by Intel.
--------------------------
Does this mean, the "mistake" the author of QuickView has made, is, that he
does not allow reverse engineering?

Is allowing reverse engineering obligatory for using ffmpeg (and other
LGPL'ed programs)?

If so, besides the fact that it is written in the license, what is the
practical use/background of this?
Post by Gabucino
------LGPL---
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
during execution displays copyright notices, you must include the
^^^^^^^^^^^^^^^^
copyright notice for the Library among them, as well as a reference
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This means, the author just needs to add a copyright notice and an LGPL file
to his program?
(As far as I've seen he mentioned the copyright, but did not provide the
license text file.)
Post by Gabucino
directing the user to the copy of this License. Also, you must do one
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
user can modify the Library and then relink to produce a modified
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
Does this mean the author of QuickView at least needs to make object code or
a lib file publicly available which can be linked by anyone with the
modified version (in case it is modified) of ffmpeg?
Post by Gabucino
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
-------
[...]
Michael
Thank you for making things clear.

Mario




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
Michael Niedermayer
2003-02-16 00:01:40 UTC
Permalink
Hi

On Saturday 15 February 2003 23:47, Mario Knezovic wrote:
[...]
[...]
Post by Michael Niedermayer
Post by Michael Niedermayer
------LGPL---
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
^^^^^^
modification of the work for the customer's own use and reverse
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
engineering for debugging such modifications.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
------------
------Quick view license--
All files belonging to QuickView contain proprietary information which
are protected by copyright. This includes reverse engineering,
decompiling and disassembling. No part may be altered or translated
without the prior
written
Post by Michael Niedermayer
consent of the author. Any violation of the copyright will be prosecuted
by
Post by Michael Niedermayer
the author and by Intel.
--------------------------
Does this mean, the "mistake" the author of QuickView has made, is, that he
does not allow reverse engineering?
Is allowing reverse engineering obligatory for using ffmpeg (and other
LGPL'ed programs)?
i think so but IANAL
Post by Michael Niedermayer
If so, besides the fact that it is written in the license, what is the
practical use/background of this?
dunno, i can just guess, perhaps to be able to debug it, if the binary is
relinked with a new library

but in practice such a restriction only harm the good people anyway, the bad
ones (who try to find trade secrets, or security holes to exploit, ...) will
reverse engeneer it anyway, and i dunno if this restriction is legally
enforceable, i never heard of anyone who got into jail for reverse
engeneering (but IANAL!!!)
Post by Michael Niedermayer
Post by Michael Niedermayer
------LGPL---
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
during execution displays copyright notices, you must include the
^^^^^^^^^^^^^^^^
copyright notice for the Library among them, as well as a reference
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This means, the author just needs to add a copyright notice and an LGPL
file to his program?
(As far as I've seen he mentioned the copyright, but did not provide the
license text file.)
the program when beiing run displayes his copyright but doesnt mention ffmpeg,
at least i didnt see it, if i missed it then sorry for the noise

i personally dont care if the license file is there or not, but the LGPL seems
to require it
Post by Michael Niedermayer
Post by Michael Niedermayer
directing the user to the copy of this License. Also, you must do one
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
user can modify the Library and then relink to produce a modified
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
Does this mean the author of QuickView at least needs to make object code
or a lib file publicly available which can be linked by anyone with the
modified version (in case it is modified) of ffmpeg?
yes, or the source code :) (again IANAL ...)

[...]

Michael


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf

Loading...