バージョン3.0

使い方

「色のめがね」は、色の見分けにくさのある方(P 型・D 型・T 型の色覚)が、色を見分けやすくするためのアプリケーションです。
デバイスのカメラの映像や、「写真」の画像ファイルの色を、リアルタイムに変更して表示します。見分けにくい色どうしがはっきり違って見えるように、元の色をなるべく保ったまま、必要な部分だけ色を変えます。
このアプリには、設定の画面・前回の状態の復元・文字の大きさへの対応・VoiceOver/TalkBack への対応があります。

3 つのモード

画面の一番下の「モードの帯」で、3 つのモードを切り替えます(起動したときは、前回終了したときのモードです)。
  • 色を見分ける 見分けにくい色を見分けるためのモードです。初めて起動したときは、このモードです。
  • 色を見つける カーソルの色や、基本の 11 色から選んだ色を元に、画像の中から似た色を見つけるためのモードです。
  • シミュレーション P・D・T の色覚タイプの方に見えているであろう色を計算で予測して、一般型色覚(C 型)の方に表示するためのモードです。どの色が見分けにくいのかを知る助けになります。

主画面の見かた

基本の操作はすべて主画面で行います。上端に状態の文字、画面の上半分の左右にボタン、下にモードごとの操作部品があります。最後に操作してから 10 秒が経つと、カーソル・色名の吹き出し・色度図・基本 11 色の帯を除く文字とボタンが消えます。画面を 1 回タップすると、また表示されます。

上端の文字

  • 左上 ゾーン(色を変える範囲)を「開始位置~終了位置」で表示します。「色を見分ける」では、反転しているとき末尾に R を付けます。「色を見つける」では、探す範囲(半径)を表示します。「シミュレーション」では、シミュレーションの色覚タイプを表示します。
  • 中央上 色覚タイプ(〜型)。2 行目に、ズームの倍率を表示します。
  • 右上 色変化を「色変化の強さ/色変化の方向」で表示します。ブーストモードのときは強さの後ろに B を付けます。「シミュレーション」では、シミュレーションの強度を表示します。

上のボタン(左の列と右の列)

  • 設定ボタン設定 設定の画面を表示します。
  • 色名ボタン色名 カーソルの下の色の名前(色名の吹き出し)を表示します。
  • 色度図ボタン色度図 画面の左下に、xy 色度図または u'v' 色度図を表示します。表示するのはどちらかを、設定で選びます(ボタンの絵も、選んだ図の形に替わります)。図の上の小さな輪は、カーソルの下の色の位置です。
  • シミュレーションボタンシミュレーション 「色を見分ける」「色を見つける」で色を変えた画像を、シミュレーションの色覚タイプ・強度で見え方を予測して表示します(画面の高さが不足しているとき、このボタンは隠れます)。
  • 保存ボタン保存 いま表示している、色を変えた後の画像を「写真」に保存します。
  • 入力の切り替えボタン入力の切り替え リアカメラ・フロントカメラ(ある機種だけ)・「写真」の画像ファイルを選びます。
  • ライトボタンライト カメラのライトを点けます。もう一度押すと消えます。ライトのない機種、静止中、ファイルの画像のときは押せません(画面の高さが不足しているとき、このボタンは隠れます)。
  • 静止ボタン静止 映像を止めます。もう一度押すと再開します。ファイルの画像のときは押せません。

「色を見分ける」モード

P 型・D 型・T 型の方が混同しやすい色を、見分けやすくします。混同しやすい色を結んだ「混同色線」に沿って「カラーゾーン」を決め、その中の色を、元の色をなるべく保ったまま、いちばん見分けやすい色に変えます。色の区切りと変更は、人の感覚に合う均等色空間(CIELUV)の上で計算しています。
色を変えた画像は、元の画像と交互に点滅するように表示されます。変わった所が分かりやすくなります(変更後 0.33 秒、元の画像 0.5 秒)。

下の帯

  • 左の「↑」 プリセットのメニューを開きます。選ぶと、確認のあと、そのプリセットのパラメータを読み込みます。項目を長押しすると、いまのパラメータをそのプリセットに保存します。
  • ゾーン範囲スライダー 色を変える範囲を決めます。つまみは左右に 2 つあり、つまみの間(青い部分)をつかむと範囲ごと動きます。いちばん左(0.0)は緑を含む側、いちばん右(1.0)は赤を含む側です(T 型は、左が青側、右が緑側)。ダブルタップで、範囲の入・切(幅 0 と元の幅)を切り替えます。
  • 右の「↑」 変化の円形スライダーと色覚タイプの縦の切り替えを、右下の小さなパネルで開閉します。

変化の円形スライダー(右の「↑」で開く)

  • 円の中でつまみを動かします。中心からの距離が「色変化の強さ」(0.0〜0.5)、真上から時計回りの角度が「色変化の方向」(0.0〜1.0)です。円盤の色は、そこにつまみを置いたとき、中間の灰色がどう変わるかを表しています。
  • つまみをダブルタップすると、ブーストモードの入・切を切り替えます。入のとき、円盤は濃く、つまみは金色になります。

色覚タイプの縦の切り替え

見分けにくい色覚タイプ(P・D・T)を選びます。設定の「色覚タイプ」と連動します。

「色を見つける」モード

カーソルの色(カーソル色)に近い色だけを変えて、画像の中から似た色を見つけます。ここでいう「近い」は、明るさの違いを考えず、色みの近さで決めます(明るい黄色と暗い黄色は近い色です)。距離は u'v' 色度で測ります。
  • カーソル 画面をタップするとカーソルが動き、その下の色が探す色になります。
  • マンセルの帯(基本 11 色) 無彩色(N)・赤(R)・黄赤(YR)・黄(Y)・黄緑(GY)・緑(G)・青緑(BG)・青(B)・青紫(PB)・紫(P)・赤紫(RP)の 11 色を並べた帯です。色をタップすると、その色が探す色になります。色は、マンセルの記号から、実行時に計算しています(画像ではありません)。表示の色空間(sRGB・Display P3)に合わせた色で表示します。
  • 左の「↑」 マンセルの帯と同じ 11 色のメニューを開きます。選んだ色が探す色になります。
  • 探す範囲のスライダー 探す範囲(半径)を決めます。値が小さいほど近い色だけを、大きいほど違う色まで探します。値 1.0 は u'v' で 0.1 に当たります。ダブルタップで、範囲の入・切を切り替えます。
  • 右の「↑」 変化の円形スライダーと色覚タイプの縦の切り替えを開閉します。値は「色を見分ける」とは別です。このモードにブーストモードはありません。

「シミュレーション」モード

入力された画像から、選んだ色覚タイプの方に見えているであろう画像を作って表示します。
  • 色覚タイプ(C・P・D・T) シミュレーションする色覚タイプです。C を選ぶと元の画像のままです。
  • 強度スライダー 0.0 でシミュレーションなし、1.0 で完全なシミュレーションです。途中の値は、元の画像とシミュレーション画像を混ぜて表示します。シミュレーション強度は、それぞれの色覚タイプのうちもっとも強度の 2 色覚の色の見え方を 100%、元の画像を 0% として、その中間の画像を表示するための値です。異常 3 色覚(弱度の色覚異常)の色の見え方をシミュレーションするものではありません。
  • 上の「シミュレーション」ボタン(目)を入にすると、このモードの設定で、「色を見分ける」「色を見つける」の結果もシミュレーションできます。

色名の表示(カラーカーソル)

上のボタンの「色名」(または設定の「色名の表示」)を入にすると、カーソルと、その下の色の名前を表示します。吹き出しの 4 行の内容は、設定で選びます(CIELAB・Oklab・CIELUV・RGB・XYZ・xyY・マンセル・JIS の系統色名と慣用色名・ISCC-NBS の系統色名・TCCA の慣用色名・なし)。
カーソルの位置の色は、縦横 5×5 画素ほどの広さのガウシアンフィルタで、重みを付けて平均した色です。色の値と名前は、画像の色空間が sRGB、光源が D65 という前提で、各規格に基づいて計算したものです。必ずしも正確とは限りません。

色度図

上のボタンの「色度図」を入にすると、画面の左下に色度図(三角形)を表示します。設定の「表示する色度図」で、xy 色度図と u'v' 色度図のどちらかを選びます。
  • 図の三角形は、表示できる色の範囲(色域)です。図の中の色は、その色度の色です。
  • 図の上の小さな輪は、カーソルの下の色の位置です。カーソルを動かすと、輪も動きます。
  • 色度図は、画面の上に重ねて表示するだけです。色の変更は受けず、保存した画像にも入りません。

プリセット

プリセットは、「色を見分ける」のパラメータ(ゾーンの開始・終了、色変化の強さと方向、スイッチ 5 つ)をひとまとめにして、8 組まで覚えておく機能です。見分けたい色や場面(たとえば、赤い物を探すとき、屋外の風景を見るとき)ごとに組を作っておくと、そのつど設定を作り直さずに、すぐ切り替えられます。

呼び出し方

  1. 1. 「色を見分ける」の状態で、下の帯の左の「↑」を押します。プリセットのメニュー(「1: 名前」から「8: 名前」まで)が開きます。
  2. 2. 使いたいプリセットを押します。確認はなく、すぐにそのプリセットのパラメータが読み込まれます。いまの値は置き換わります(色覚タイプは変わりません)。

いまのパラメータを保存する

メニューの項目を、約 2 秒長押しします。確認の画面が表示されるので、「はい」を押すと、いまのパラメータがそのプリセットに保存されます(元の値は失われます)。

初期値(8 組) P 型・D 型用と T 型用で、名前と、ゾーンの位置の一部が違います。

  • 1 赤を明るく(T 型は「緑を明るく」) ゾーン 0.80〜1.00、強さ 0.20。
  • 2 緑を暗く(T 型は「青を暗く」) ゾーン 0.00〜0.25、強さ 0.20。
  • 3 赤を明るく・緑を暗く(T 型は「緑を明るく・青を暗く」) ゾーンを反転し、0.25〜0.80 の外側(両端)を変えます。強さ 0.20。
  • 4 オレンジと黄緑を見分ける(T 型は「緑と青紫を見分ける」) 無彩色(白・灰色)の近くにゾーンを置き、反転します。強さ 0.45、方向 0.20、無彩色ゾーンは保持しません。
  • 5 自動ゾーンで幅 0.2 を明るく 自動カラーゾーン入。幅 0.2 のゾーンが、カーソルの色に合わせて動きます。強さ 0.20。
  • 6 暖色系を黄に・寒色系を青に(T 型は「緑側を赤く・青側を青緑に」) ゾーン全体(0.00〜1.00)、強さ 0.40、方向 0.25、ブースト入。
  • 7 寒色系を青っぽく(T 型は「青・青紫・紫・赤紫を赤く」) ゾーン 0.00〜無彩色、強さ 0.25、方向 0.75、ブースト入。
  • 8 何も変えない 強さ 0。色を変えません。

「プリセット設定」の画面 設定の「プリセット設定」を開くと、8 組の一覧が表示されます。1 組を選ぶと、次の項目を編集できます。

  • プリセット名 メニューに表示される名前です。空にするか、初期の名前と同じにすると、初期の名前に戻ります。短く、内容が分かる名前にすると、メニューで探しやすくなります。名前は、前後の空白を除いて保存されます。
  • カラーゾーン開始位置・終了位置(0.00〜1.00) 色を変える範囲です。ゾーン範囲スライダーの 2 つのつまみに当たります。
  • 色変化の強さ(距離)(0.00〜0.50)と色変化の方向(角度)(0.00〜1.00) 変化の円形スライダーの、中心からの距離と角度に当たります。
  • スイッチ 5 つ 自動カラーゾーン、カラーゾーンを反転、無彩色を境に変更色反転、無彩色ゾーンは色を保持、ブーストモード。意味は、上の「設定」の「色変更オプション設定」と同じです。

3 つのボタン(どれも、押すと確認の画面が表示されます)

  • このプリセットを今すぐ使用する このプリセットのパラメータを読み込み、「色を見分ける」の状態にします。いまのパラメータは置き換わります。
  • 現在使用中のパラメータを保存する いま「色を見分ける」で使っているパラメータを、このプリセットに保存します(元の値は失われます。名前は変わりません)。
  • 初期値に戻す このプリセットの名前と値を、初期値に戻します。
プリセットの内容は、アプリを終了しても保たれます。起動のたびにプリセット 1 でスイッチが上書きされることはありません。前回終了したときの状態(モード・色覚タイプ・各パラメータ)を、そのまま復元します。

画面の操作

  • タップ カーソルを動かします。操作部分が隠れているときは、表示します。
  • ダブルタップ ズームとパンとカーソルを元に戻します。ゾーン範囲・探す範囲のスライダーの上では、範囲の入・切を切り替えます。変化の円形スライダーのつまみの上では、ブーストモードを切り替えます。
  • ピンチ 拡大・縮小します(最大 500%)。
  • パン 「静止」しているとき、または画像がファイルのとき、画像を動かします。
  • 長押し 1 秒で「静止」します(設定で切れます)。
  • 保存の音量ボタン 設定で入にすると、デバイスの音量ボタンでも保存できます。

画像の保存

保存ボタンで、いま表示している、色を変えた後の画像を「写真」に保存します。点滅の位相に関わらず、保存されるのはいつも色を変えた後の画像です。設定の「保存画像に文字埋込」を入にすると、モードとパラメータの文字(モード名・色覚タイプ・ズーム・ゾーン・色変化など)を画像の上端に書き込みます。位置情報は保存しません。色空間は、設定の「色空間」に従います(自動のとき、Display P3 に対応した画面では P3 で保存)。

設定

  • 保存画像に文字埋込 上の「画像の保存」を参照。
  • 色変更オプション設定 色覚タイプ(P 型・D 型・T 型)、自動カラーゾーン(カラーゾーンの中心を、カーソルの色に合わせる。ゾーン範囲スライダーが黄色になる)、カラーゾーンを反転(スライダーで選んだ範囲の外を変える。例えば 0.3〜0.5 のとき、0.0〜0.3 と 0.5〜1.0 を変える)、無彩色を境に変更色反転(無彩色より緑側の色の色変化の方向を 0.5 回す)、無彩色ゾーンは色を保持(白や灰色の近くは変えない)、ブーストモード(スペクトル光に近い色へ強く寄せる強い変更。P 型・D 型は 575 nm と 475 nm、T 型は 660 nm と 485 nm に近い色へ)。
  • 操作 長押しで静止、音量ボタンで保存(iOS 17.2 以降)、継続オートフォーカス OFF、表示する色度図(xy/u'v')、ゾーンの割り振り(次の項)。
  • ゾーンの割り振り 「色を見分ける」で、ゾーン範囲スライダーの値が、どの色を指すかの決め方を選びます。
    色度角度方式(初期値。2.21 と同じ)は、色度図の上の角度で決めます。色の見え差分方式は、元の色と、混同色線に沿って動かした色との距離(明るさの差を含みます)で決めます。色度差分方式は、同じ距離を、明るさに関係なく、色みだけで決めます。方式を替えると、同じスライダーの値でも、変わる色が替わります。式と図は、サイトの「理論」のページ(色のめがね 3.0 の理論、§6)に記載しています。
  • 色名の表示 色名の入・切と、吹き出しの 4 行の内容。
  • 音 保存の音の入・切と音量、振動。
  • 色空間 自動(広い色域に対応した画面では Display P3)/sRGB。
  • プリセット設定 上の「プリセット」を参照。
  • その他 リセット(すべての設定・状態・プリセットを初期値に戻します)、使い方(このマニュアルを表示します)、プライバシーポリシー。
  • アプリケーション情報 バージョンと著作権を表示します。

読み上げ(VoiceOver・TalkBack)

読み上げに対応しています。ボタン・スライダー・モードの帯・色覚タイプの切り替え・ポップアップのメニューに、名前と状態を付けています。スライダーは、読み上げの操作で値を増減できます。UI が隠れているときは、画面をタップすると表示することを伝えます。文字の大きさは、デバイスの設定に従います(映像の上の文字とボタンは、大きくなりすぎないよう上限があります)。

トラブルシューティング

  • 映像が表示されない カメラの使用を許可していない場合は、デバイスの「設定 > プライバシー」(Android は「アプリの権限」)でカメラを許可してください。
  • 保存できない 写真の追加を許可していない場合は、同じ画面で写真を許可してください。
  • 色が思うように変わらない 色覚タイプ(P・D・T)と、ゾーンの範囲、色変化の強さ・方向を確かめてください。設定の「カラーゾーンを反転」「自動カラーゾーン」が入っていないかも確かめてください。

その他

  • 本アプリケーションソフトウェアは、浅田一憲(医学博士・メディアデザイン学博士)によって開発され、無償でリリースされています。
  • 色の変更は、混同色線に基づく色の区切りと、均等色空間(CIELUV)の上の変更で行っています。シミュレーション画像は、下記の学術論文の提案手法に基づいています。
    H. Brettel, F. Viénot, and J. D. Mollon: Computerized simulation of color appearance for dichromats, Journal of the Optical Society of America A, vol.14, no.10, pp.2647-2655 (Oct. 1997).
  • 色を変えた画像やシミュレーション画像は、特定の手法と条件のもとで計算したものであり、見え方を正確に表すとは限りません。目安としてお使いください。
  • 表示している色の名前は、特定の前提のもとで規格に基づいて計算したものであり、必ずしも正確とは限りません。また、使用するデバイスの画面の色によっても見え方は異なります。
  • 本マニュアルで使用している「P 型」「D 型」「T 型」などの用語は、学術用語です。
  • 理論の詳細は、サイトの「理論」のページに記載しています。
  • Android 版と iPhone・iPad 版は、同じ動作をします(違いは、上に「iOS 17.2 以降」などと書いた所だけです)。

ライセンス

色のめがねは、次のオープンソースのソフトウェアとフォントを使用しています。ライセンスの全文は、この節の後半に掲載しています。

使用している部品と著作権表示

  • Android Jetpack(AndroidX・Compose・CameraX): Copyright The Android Open Source Project(Apache-2.0)
  • Kotlin 標準ライブラリ、kotlinx(coroutines・serialization・atomicfu): Copyright JetBrains s.r.o. and Kotlin Programming Language contributors(Apache-2.0)
  • JetBrains annotations: Copyright JetBrains s.r.o.(Apache-2.0)
  • Dagger: Copyright Google, Inc.(Apache-2.0)
  • AutoValue annotations: Copyright (C) 2012 Google, Inc.(Apache-2.0)
  • JSpecify: Copyright The JSpecify Authors(Apache-2.0)
  • Jakarta Inject: Copyright Eclipse Foundation and the respective authors(Apache-2.0)
  • javax.inject(JSR-330)、Guava ListenableFuture: Apache-2.0
  • libyuv(CameraX に含まれる): Copyright 2011 The LibYuv Project Authors. All rights reserved. ライセンスは BSD-3-Clause
  • フォント Roboto Bold(ラテン文字の一部): Copyright 2011 Google Inc. All Rights Reserved.(Apache-2.0)

色名のデータの出典: NBS Circular 553(ISCC-NBS)、NBS Special Publication 440(ISCC-NBS の領域の図)、Kelly, J. Res. NBS 61(5), 1958(ISCC-NBS の色名のブロックの中心)、NBS Research Paper RP1700(Reimann, Judd and Keegan, 1946。TCCA の標準色票)。いずれも米国標準局(NBS)の刊行物です。

Apache-2.0、BSD-3-Clause の全文は次のとおりです。

Apache License, Version 2.0

                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "[]"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright [yyyy] [name of copyright owner]

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

libyuv(BSD-3-Clause)

Copyright 2011 The LibYuv Project Authors. All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

  * Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.

  * Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in
    the documentation and/or other materials provided with the
    distribution.

  * Neither the name of Google nor the names of its contributors may
    be used to endorse or promote products derived from this software
    without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.