Camera2 APIを有効化してAndroidでRAW撮影を行う方法
Camera2 APIは2015年のAndroid Lollipopで導入されましたが、2017年時点でも多くのスマートフォンメーカーが自社端末に実装していません。Googleが旧来のCamera APIを非推奨とし、開発者にCamera2への移行を促しているにもかかわらず、フルサポートしているのはごく一部のハイエンド機種だけです。メーカーはRAW形式での撮影といったCamera2 APIの機能を、全ユーザー向けの標準アップグレードとしてではなく、プレミアム機のセールスポイントとして利用しているようです。
残念ながら、既存のストックROMにCamera2 APIを後から簡単に組み込むことはできません。ROMを再ビルドして自らCamera2 API対応を追加するか、APIが組み込まれたカスタムROMを焼く必要があります。ただし朗報もあります。メーカーの設定で無効化されているだけで、ROM内にCamera2 APIが残っているケースでは、いくつかのテクニックで有効化できるのです。さらに、MediaTek搭載端末には、APIなしでRAW写真を撮影できるネイティブな方法も存在します。本記事では、これらの方法を順番に解説します。
RAW形式とは?なぜCamera2 APIが必要なのか?
RAW形式をよくご存じない方のために簡単に説明すると、RAWとはロスレス(非圧縮・可逆)の画像フォーマットです。音楽や動画のビットレートをイメージすると分かりやすいでしょう。120kbps、320kbps、FLACといった音楽ファイルの違いや、YouTubeの320pと1080pの画質差をご存じなら、JPEGとRAWの関係もそれとほぼ同じだと考えてください。
RAW形式では、画像の圧縮を一切行わずに写真を記録します(その分、ファイルサイズは大幅に大きくなります)。RAW画像は画像編集ソフトでの加工に非常に向いています。名前の通り、まさに「生(RAW)」の画像データだからです。JPEGと、カメラから出力した直後のRAW写真を並べて比較すると、JPEGの方が色鮮やかに見えることがあります。これは、JPEGにはカメラソフトによる後処理(ポストプロダクション)が施され、その結果が画像データに焼き込まれているためです。

そのため、未編集のRAWはJPEGと比べて見劣りして見えるかもしれません。しかし、画像加工を楽しむユーザーにとっては、カメラソフトによる「後処理」が入っていないことこそが理想なのです。ポストプロダクションのすべてを自分でコントロールできます。つまりRAW写真は、JPEGに施されるカメラ側の自動補正と戦う必要がないぶん、JPEGファイルよりもはるかに高い自由度で仕上げられるのです。
build.propを編集してCamera2 APIを有効にする
注意: 作業前に必ずbuild.propのバックアップを作成してください。万が一のトラブルに備えるためです。
この方法の成功率はおよそ50%ですが、試す価値は十分にあります。一部のメーカーはROMにCamera2 APIを組み込みながら、何らかの理由で無効化しているようです。Androidデバイスの/systemパーティションにあるbuild.propに1行追加するだけで、Camera2 APIを有効化できる場合があります。
まず、root化された端末と、build.propを編集する手段が必要です。ESファイルエクスプローラーなどのroot対応ファイラーアプリで/systemパーティションにアクセスし、テキストエディタでbuild.propを開いてもよいですし、JRummyのBuildProp Editorのような専用エディタを使っても構いません。

build.propを開いたら、次の文字列を検索してください。
persist.camera.HAL3.enabled=0
「0」を「1」に変更して保存し、端末を再起動します。この文字列が見つからない場合は、build.propの末尾にpersist.camera.HAL3.enabled=1を手動で追記して保存し、再起動してください。その後、Open CameraやCamera FV-5などのサードパーティ製カメラアプリを起動し、設定メニューからCamera2 APIモードを有効化できるかどうかを確認しましょう。
ターミナルエミュレータでCamera2 APIを有効にする
上記の方法の代わりに、ターミナルエミュレータからコマンドでCamera2 APIを有効化することも試せます。ターミナルを起動し、以下のコマンドを順に入力してください。
su
su persist.camera.HAL3.enabled 1
exit
exit
入力後、端末を再起動し、Open CameraやCamera FV-5などのサードパーティ製カメラアプリでCamera2 APIが有効になっているかを確認してください。
MediaTekのエンジニアモードでRAW写真を撮影する
MediaTekチップセット搭載端末をお使いの場合、Camera2 APIを有効にしなくても、エンジニアモード(Engineer Mode)経由でRAW写真を撮影できます。エンジニアモードへの入り方は複数あります。
まず、電話アプリのダイヤラーを開き、*#*#3646633#*#*と入力する方法です。
または、MTK Engineering Modeなどの専用アプリをインストールすれば、ホーム画面にショートカットアイコンを常設できます。さらに、XposedフレームワークとGravityBoxモジュールを導入する方法もあります。GravityBoxにもエンジニアモードへのランチャーが用意されています。

どの方法でも、エンジニアモードに入ったら画面を右にスワイプして「Hardware Testing」→「Camera」と進みます。ここはカメラハードウェアのテストモードですが、RAW形式をはじめとする各種カメラオプションを有効にして、実際に撮影することが可能です。
エンジニアモードでRAW撮影を行うと、/DCIM/CameraEM/ディレクトリに2つのファイルが保存されます。ひとつはプレビュー用のJPEG、もうひとつが本体のRAWファイルです。RAWファイルはAndroid端末上ではプレビューできないため、PCに取り込んでAdobe Photoshopなどの画像編集ソフトで加工する必要があります。また、端末固有のRAW形式を汎用のDNGなどに変換しなければならない場合もある点に留意してください。
-
AndroidとiOSでGmailのダークモードを有効にする方法【完全ガイド】
近年、ダークモードへの関心が高まっており、多くのアプリが個別にダークモード対応を進めています。そんな中、最新のAndroid 10(Android Q)やAppleのiOS 13も、ダークモードテーマを正式に採用しました。 OS全体にダークモードを適用することは可能ですが、Gmailを含む一部のアプリでは手動での設定が必要です。Gmailのダークモードは、新OSの登場以来、iOSとAndroidの両ユーザーが最も待ち望んでいた機能の一つでした。Googleは最近、Android 10およびiOS 13向けにダークモードの提供を開始しており、数週間以内にすべてのユーザーが利用できるようになります
-
Androidでプッシュ通知を有効にする方法【初心者向け完全ガイド】
プッシュ通知とは、スマートフォンの画面に随時ポップアップ表示されるメッセージのことです。ネットショッピングが好きな方にとって、プッシュ通知はお得なキャンペーンやセール情報をいち早く知らせてくれる便利な機能です。中には数時間限定の特別オファーなども含まれているため、見逃せない情報も多いでしょう。しかし、うっかりAndroidでプッシュ通知を無効にしてしまうと、大切なお知らせを受け取れなくなってしまいます。そこで本記事では、プッシュ通知を再度有効にする手順をわかりやすく解説します。アプリはインストール時に通知許可を求めてくるほとんどのアプリは、インストール時にプッシュ通知の送信許可を求めるダイアロ