2013年11月05日の日記です


Burn ALL GIFs day  2013-11-05 12:15:12  コンピュータ 今日は何の日

今日は Burn ALL GIFs day


なんで今日なのか、いわれを調べたのですがよくわかりません。

多分、「みんなで一斉に行動する」ために日付を決めるのが大切で、いつでもよかったんだと思います。


名前の通り、GIF ファイルなんて燃やしちまえよ! と言う日。

LZW 特許で UNISYS がみんなに憎まれていた頃に行われていたもので、現在は何もありません。




先日 PKZIP のフィル・カッツの誕生日で、LZW の話が少しだけ出てきました。


LZ77 という圧縮アルゴリズムがあり、これを改良したのが LZW。

1983年にアルゴリズムが発表されたのでみんなが使ったのだけど、実は特許出願していた。


GIF も compress も ARC も PKZIP も LHarc も LZW を使っていました。

みんなが使いたくなるほどいいアルゴリズムだったのです。


でも、1985年に特許が成立します。

ここでみんな気づいて、使うのをやめます。


LHarc は特許回避アルゴリズムを考案、LHa として公開します。


これを研究した PKZIP 作者は Deflate というほぼ同様のアルゴリズムを考案。

PKZIP と gzip で使われ、compress の替わりに gzip が使用されるようになります。


…でも、GIF だけ取り残されました。


とはいえ、これはまだ 1990 年代初期の話。GIF はこの時点ではまだ米国のパソコン通信で使われている程度の形式でした。

もっといい画像形式も考案されていましたし、使われなくなるのは時間の問題…のはずでした。



1993 年、NCSA Mosaic が、WEBに「画像」という概念を持ち込みました。

これ以前は、WEB で画像は扱えなかったのです。この時対応した画像形式が、GIF。


おいおい、なにしちゃってんだよ。みんなが「特許問題あるから別のつかおーぜ」ってなっているときに、なぜ GIF をもう一度呼び出しちゃってんだよ。


作者のマーク・アンドリーセンが何考えていたかは知りません。

多分、手っ取り早く使える画像形式だから組み込んだだけで、特許なんて気にしてなかったんじゃないかな。


でも、これで GIF は爆発的普及へ。





1993 年、UNISYS は GIF を取りまとめた CompuServe と話し合いを行い、CompuServe 側が特許料を支払うことで合意します。


これにより、GIF を扱うソフトの作者は、UNISYS に対して使用料を支払う義務が生じました。


…これ、UNISYS ばかりが叩かれるのですが、ちょっとかわいそうです。

UNISYS は正当に特許を持っていて、特許を維持するためのお金だって払っているんです。


フリーウェアは「商売ではない」と考えていたからこれまで見逃してあげていたわけですが、WEB で使用され始めて普及したら、見逃しておくことはできません。


でも、この時点では「売り上げに応じて」特許料を支払う形式だったようです。

つまり、フリーソフトは免除です。



GIF の代替で、特許に抵触しないものを作ろう、と言う動きも起こりました。

こうしてできたのが PNG 形式。やっぱり Deflate を使っています。


公式には Portable Network Graphics の略ですが「PNG is Not Gif」の意味が込められている、というのは有名エピソード。


でも、PNG は後からできたので、便利そうな機能を片っ端から突っ込んだ結果、互換性が保てない問題が出ました。


#非力な環境でのフィルタ関連、と書けばわかる人は判るだろう。


しかも、GIF で皆が気に入っていた、アニメーション機能がないのです。

PNG はもう十分複雑になってしまったし、「静止画フォーマット」を目指しているので、アニメは別のフォーマットでやってくれ、と言う態度。

実際、アニメに対応した MNG という規格も作られましたが、全然普及していません。




この後、マイクロソフトとネットスケープのブラウザ戦争で、ブラウザが無料で配布されるようになります。


大きな企業が総力を挙げて作成したソフトが「フリーソフト」として配布される。

これは、UNISYS が想定していた「フリーソフト」とは異なります。無視できません。


UNISYS はふたたび態度を変えます。

GIF ファイルに使われている LZW は特許なので、フリーソフトであっても特許料を支払うように。


マイクロソフトやネットスケープは、これに応じて特許料の支払いを行います。

しかし、これでもまだ多くの、支払いを行わないソフトがあったようです。



1999 年、ついに UNISYS は、すべての GIF ファイルを違法なものとみなします。


GIF ファイルを使用している WEB ページ作者は、一律 $5000.- の使用料を払うように。日本円で約60万円です。

ただし、UNISYS に使用料を払ったソフトを利用していることを示せれば免除されます。


あまりにも横暴でした。多くの人は、ソフトの作者が UNISYS と契約したかどうかなんて知りませんし、出来上がった GIF ファイルから、許諾されたものかどうかを読み取る方法もありません。



これに対し、GNU の創始者でもあるリチャード・ストールマンが立ち上げた「プログラミング自由連盟」が激しく反応。Burn ALL GIFs 運動を開始します。Burn ALL GIFs day も、この中で制定されたもの。


もう、GIF ファイルなんか全部消し去ってしまえ! ということですね。

この日は自分の画像フォルダや WEB サーバーを眺め、GIF を片っ端から PNG にコンバートするのが良いかもしれません。




…が。


このような事態に発展したことで、UNISYS は態度を改めます。

まず、自分たちの態度が無駄な混乱を引き起こしたことを謝罪し、LZW 特許に使用料は不要である、と宣言します。


ところで、本来特許権は 20 年で、毎年更新が必要です。つまり、1985年に成立した LZW 特許は、更新すれば 2005 年までは権利を主張できます。


しかし UNISYS はこれを放棄。更新をしなかったため、2003年に特許権が失効しました。

(日本では失効は1年後)

謝罪を言葉だけでなく態度でも示した、ということです。


これで、1999年から始まった Burn ALL GIFs day もこの頃から目立った活動は無くなっています。




じゃぁ、今は PNG に置き変わったかと言うと…

僕はまだ GIF を使っています。もう特許問題はないのだから使っても構いません。


「PNG の方が先進的で優れている」という人もいるのですが、枯れた技術の方が優れている、と言う場合もあります。

まぁ、僕も気まぐれに PNG つかったり GIF つかったり、ですけどね。


両方でファイル作って小さいほうを使うこともあるし、全く忘れてて GIF にしちゃうこともあります。




2015.11.5 の追記


完全に余談ですが、途中に書いた PNG の互換性問題について。


「わかる人はわかるだろう」と書いたのですが、2年たったらもう判らない記述…

IT業界はドッグイヤーです。


2年前には、いわゆる「ガラケー」も各キャリアから新製品が出ていました。

今では、誰も買わないので製造コストが高く、ガラケーのように使えるスマホ、が作られている状態。



さて、そのガラケー(この言葉好きではないのだけど)ですが、docomo の i-mode では gif しか使えませんでしたが AU の EZweb では PNG も使えました。


といっても、非常に基本的な機能にしか対応しておらず、PNG ファイルが必ず表示できる、というわけでもない。


PNG には、圧縮率を上げるための「フィルタ」という機能があります。

圧縮する前に、可逆な操作を行うことで、そのあとの圧縮アルゴリズムで「効率よく」圧縮できる可能性を上げられる。


展開した後は、またフィルタを使って、元のデータに戻します。


ところが、EZweb の PNG はこのフィルタに対応していなかった。

「PNG」を名乗る以上必ず対応しないといけないのですが、非力なマシンでも動くように省略したのです。



EZweb は HDML を使用していた WAP1 の時代と、xHTML の WAP2 の時代がある

さらに、WAP1 はもともと白黒を想定していたのだけど、途中からカラーになっている。


PNG 対応は、WAP2 からではなかったかな…と思うのですが、記憶が定かではありません。

そして、上に書いたようにフィルタをはじめとするいくつかの「仕様」を満たしておらず、PNG 画像を正常に表示できる形式に「再圧縮」するためのツールも配布されました。


このツールで圧縮した画像なら、EZweb で見られることが保証されます。


後には EZweb も「完全な PNG」に対応するのですが、旧機種での互換性を考えると、このツールでの再圧縮は必須でした。




もう一つ、InternetExploler でも PNG の「半透明」表示に対応していない、という非互換問題がありましたね。

IE のバージョン 6 では、半透明部分が完全に「不透明」として表示されました。


もっとも、こちらは 2015年の 7月 14 日をもって、完全にサポートが終了。

今となっては問題ではありません。


でも、IE 7~8 の PNG もバグが多発するし、2016年1月13日まではサポート期間内。

ということは、使っている人もまだいるわけで、「互換性問題」はまだ存在しています。



ここで書きたいのは、AU が独自実装しやがってー、とか、IE どうにかしろー、ではなくて、そもそも PNG 自体の仕様が「盛り込みすぎ」で、問題を起こしやすいフォーマットだということです。


すでに PNG も登場からかなり時間がたち、「落とし穴」になりそうなところは皆熟知しています。

ですから、今後新しい問題が出てくることは少ないと思いますが、「PNG に乗り換え」は思ったほど簡単な道ではありませんでした。


今後も、単純で使いやすい GIF は使われ続けると思いますし、PNG ももちろん、GIF と JPEG の中間を埋めるフォーマットとして役割を持ち続けると思います。



同じテーマの日記(最近の一覧)

コンピュータ

今日は何の日

関連ページ

フィル・カッツの誕生日(1962)【日記 13/11/03】

別年同日の日記

08年 忙中閑有

12年 区民祭り

15年 林間学校

15年 jsdeferred でアニメーション

18年 モーターアシスト


申し訳ありませんが、現在意見投稿をできない状態にしています


戻る
トップページへ

-- share --

11000

-- follow --




- Reverse Link -