[Mesa-dev] Another Take on the S3TC issue

Patrick Baggett baggett.patrick at gmail.com
Tue Aug 13 13:08:38 PDT 2013


I've been hanging on this list for a while, and this isn't the first time
this has been suggested. The general thing that is repeated is basically
this: if you make an API (e.g. OpenGL) that supports S3TC without a
license, you're in trouble, even if it is a passthrough to the hardware,
which also required a license to produce in the first place. I think the
assumption most people make is that if the hardware vendor paid a license
to implement S3TC in an ASIC, then surely simply passing through data is
OK. After all, it is being done without any knowledge of the algorithm,
etc. From a common sense standpoint, I would agree.
    However, the note in the S3TC extension itself[1] mentions explicitly
to be wary of such assumptions in the "IP Status" section, and notes that *a
license for one API is not a license for another*. This implies that for an
API to make use of S3TC, it requires a license, which Mesa in general, does
not have, while a hardware vendor might. All of this is theoretical as far
as I've read; I don't think anyone has legally challenged this for open
source drivers and posted the results on this mailing list -- mostly have
stayed away from it with a prejudice. I think the patent was granted in
1999, so at least in the USA, hopefully we don't have too many more years
of this garbage.

Patrick

[1] http://www.opengl.org/registry/specs/EXT/texture_compression_s3tc.txt


On Tue, Aug 13, 2013 at 1:53 PM, Uwe Schmidt <
simon.schmidt at cs-systemberatung.de> wrote:

> Hi,
>
> I have read about the issue of implementing the S3TC Extension in Mesa:
> http://dri.freedesktop.org/wiki/S3TC/
>
> As I understood, the problem is, that encoding and decoding S3TC in
> software is covered by patents, while passing S3TC compressed data to the
> GPU is still ok.
>
> AS NOW:
>
> If "force_s3tc_enable" is enabled in Mesa3D, uploading a S3TC encoded
> texture works if format==internalFormat is true. If format!=internalFormat
> is true, it would fail (as i know).
>
> SO MY PROPOSAL:
>
> If 'format' is one of the S3TC types, and format!=internalFormat is true,
> then set internalFormat:=format.
>
> Else, if 'internalFormat' is one of the S3TC types, but the 'format' isn't,
> set internalFormat:=format (or any other format, Mesa3D can encode).
>
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130813/ab7eb412/attachment.html>


More information about the mesa-dev mailing list