ブログ内でAndroid端末の消費電力やフレームレートを測定するツールを、TakoStatsからSceneに乗り換え、Pro版の購入含めて色々と使い方に慣れたので、諸々を記事に残します。久しぶりのアプリ紹介記事です。
Sceneについて
Scene(TOOLBOX-SCENE)は…その名の通り工具箱です。あまりにもSceneでできること・機能が多すぎて一言で紹介・表すのが難しいです。Androidを遊ぶための万能…いや、全能工具と言っても良いかも知れません。
この記事ではSceneを使った、Android端末の消費電力やフレームレートを測定する内容にフォーカスしますが、この機能ですらSceneで使えるものの一部に過ぎません。百聞は一見に如かずです。記事内である程度できることを説明し、それを見てもらった方が早いと思います。
【必要なもの】
- adb/fastboot環境のPCとUSBケーブル or Brevent/Shizuku+ワイヤレスデバッグ(要するにadbコマンドが実行できればok)
- Android 11以降の端末
- ※任意:ブートローダーアンロック/Magisk(root)の導入(Pro版の導入には必須&root権限有だと手間が少ない)
Scene(adb mode)
導入・起動
先に非root環境で動作可能なScene(adb mode)を説明します。
上記のリンクからSceneのapkをダウンロードし、インストール。Sceneを起動して利用規約的な文言に同意します。同意後に動作モードの選択画面が表示されるので”ADB mode(Free)”を選択。
Freeの通り、view表示のBasic modeと大半の機能が使えるadb modeの動作にお金は掛かりません。
adb/fastboot環境のPCとUSBケーブルでUSBデバッグ”ON”のAndroid端末を接続。
ADB mode(Free)選択後に表示される「リスクがあるけど良いかい?」的な文言に同意し、ADB modeで動作させるために必要なコマンドを入力します。
adb shell sh /sdcard/Android/data/com.omarea.vtools/up.sh
「Scene-Daemon OK! ^_^」と表示されれば文字通りOKです。
そのまま自動で起動 or ADB mode(Free)をもう一度選択すると、Scene(adb mode)のホーム画面が起動します。
PC上でコマンドを叩いてもOKですが、Scene(adb mode)はTakoStatsのように”Shizuku”を介したワイヤレスデバッグによる、Android端末単体での起動も可能でした。
ワイヤレスデバッグでShizukuを実行し、ADB mode(Free)選択後に「Shizukuにアクセスする」を許可が表示され”常に許可”すると、そのままScene(adb mode)が起動します。…root権限やPCすら必須ではなくお手軽です。
Shizuku以外にも、私は試してないですが…一応”Brevent”+ワイヤレスデバッグでも単体起動が可能なようです。
adb modeで消費電力やフレームレートを測定する
Scene(adb mode)が起動したら、右上のグラフのようなアイコンをタップ。
「フローティングウィンドウ表示を許可して」的な文言が出るので、Sceneに”他のアプリの上に重ねて表示”を許可します。許可すると6つのmonitor hover windowが選択・表示可能になります。
monitor hover windowは上から順に以下の内容をオーバーレイ表示できます。ミニモニター以外は任意の位置に移動可能。特にクラシックモニターのデザインと機能性が秀逸で気に入ってます。
モニター | 表示サンプル | 内容 |
クラシックモニター | CPU/GPU/RAM/BT ステータスを表示 ※①(展開・折りたたみ可能) ※②(CPU/GPUはSoC次第 or Pro版) | |
プロセスモニター | 実行中のプロセスを CPU使用率順に表示 | |
スレッドモニター | 現在のアプリの CPUリソースを最も多く 消費するスレッドを監視 | |
ミニモニター | CPU/GPU/RAM/BT ステータスをミニ表示 | |
FPSレコーダー | フレームレートや消費電力 を測定する際に使用する FPS表示・レコーダー | |
温度モニター | CPU/GPU/BTの 温度センサーの値を表示 (CPU/GPUはSoC次第 or Pro版) |
消費電力やフレームレートを測定する場合は、FPSレコーダーを表示して測定するアプリを起動。あとは記録したい任意のタイミングでFPSレコーダーをタップするだけで測定が開始されます。停止タイミングも任意です。
TakoStatsでは予め記録するアプリを選択したうえで、任意のタイミングのみ記録するには「その場面を開いた状態で後から記録ON→記録したいアプリのタスクに戻る」という癖のある方法でしたが、Sceneは機能の一部に過ぎないにも関わらず、PerfDog(≒Kit)と同じくらい記録・測定の使い勝手が良好です。
測定後のデータはScene→Menu内にある、非常口の人を反転させたっぽいアイコンの”FrameRate stats”に保存されています。測定したアプリアイコン別に表示され、測定データ自体もグラフィカルで見やすいです。
念の為、裏でTakoStatsとSceneを同時に測定開始し、原神をフォンテーヌで20分弱プレイして比較用データを記録しました。
PerfDogと遜色ないデータの測定”は”可能だったTakoStatsと乖離することなく、Sceneは消費電力やフレームレートのデータを測定できています。加えてPerfDogのようにジャンクやビッグジャンクまで測定可能です。
TakoStatsは自動的に最低フレームレート1%(99%Tile)を計算してくれますが、Sceneだと最大・最小・平均の表示に留まります。ここはTakoStatsに少しだけ分があるものの、CSVファイルからエクスポートして計算でき、CSVファイルの出力に関してSceneは、内部ストレージに「アプリ+日時のファイル名」で”直接”保存してくれます。
測定方法や記録の表示、データファイルの出力含めた徹頭徹尾、Sceneの方が使い勝手が良い印象です。極めつけとしてこれらの機能はadb modeのため、Sceneを入れてadbで起動すれば誰でも無料で高水準な測定ができます。
お金が掛からないからといってPerfDogのように15分間(電話番号認証で+15分おかわり)、TakoStatsのように5分間みたいなトライアルモードの縛りは無く、Sceneは測定だけなら使い放題です。
加えて他の計測ツール系のように作成したアカウントにログインしたり、購入を復元する必要も(adb modeは)全くありません。導入から測定するまでの手間が圧倒的に少ないです。
Scene(root mode)
消費電力やフレームレートを測定するだけなら、adb modeとroot modeに大きな差はありません。ただし、測定機能はScene(TOOLBOX-SCENE)の一部に過ぎず、真骨頂はroot必須のPro版です。
冒頭で書いた通り、あまりにも機能が多すぎるので個人的に気になったいくつかの機能とPro版の購入手順を書くだけのおまけに留めます。全部書いたら1記事じゃ済まない
Cpu control
CPUの動作クロックなどをクラスター(プライマリ/ビッグ/スモールコア)ごとに変更したり、GPUクロックも変更できます。(Snapdragon/Dimensity両対応)
動作ガバナーの変更やCPUコアそのものを無効化(オフライン状態)にすることもできます。
完全なmonitor hover window
SnapdragonやDimensity問わず、殆どのSoCでGPUの動作クロックや使用率を表示可能になります。また、温度センサーの値も開放されてCPU/GPU含めて確認可能になります。
これによってゲーム中やベンチマーク測定時に、測定対象のSoCのGPUが何MHzで動作しているのか、ゲームタイトルによってCPU・GPUの影響がどのように異なるのかを可視化することができます。
もちろん似たように動作クロックを弄ったり、周波数を表示・閲覧できるツールはいくつかありますが、変更・表示・測定可能でモニタリングのウィンドウまで見やすく、使いやすくまとまったツールはSceneくらいだと思います。
データ計測時もGPUの動作クロックや使用率を含めて測定ができます。
Additional
Additional自体に色々と追加機能が詰め込まれているうえ、SoCやメーカーで変わるので、あくまで(手持ちで)項目の多かったOnePlus Nord 3(Dimensity 9000)での一例です。
MTK/Dimensity専用機能から、Snapdragon(Adreno)のようにGPU動作クロックを変更したり、メモリ(DRAM)動作周波数を変更できます。弄りすぎて破壊しかねないのでSnapdragon程、気軽には遊べてません…。
特殊なディスプレイ設定から輝度を強制的に変更・固定したり、LuckyToolのリフレッシュレート強制機能のように、OnePlus Nord 3の通常設定には無い90Hz駆動や120Hz駆動を強制することができます。
Tuner
Sceneに備わっている調整機能です。パワーセーブやパフォーマンス、カスタムパラメータに変更したり、アプリプロフィールからスケジュールを個別に設定、Snapdragon 888とDimensity 8100/9000向けに温度制御を調整する機能まであります。
カスタムプロファイル”Scene6-New Features”の中には、珍しい機能として”FAS in Games”という高フレームレート維持あるいは消費電力を減らす方向性を調整したり、バランスを取る機能の”Minimum FPS offset”。
CPU動作周波数を高クロック or 低クロック寄りで維持したり、間のバランスを取ったり、クロックを固定する機能なんかも存在しています。
その他
他にもMagisk modulesから機能を追加したり、端末内のアプリのパッケージネームやSDKを閲覧、apkのバックアップにデータ消去とアンインストール、アプリをフリーズさせたり…。
バックアップやリストア機能もあるのでboot.imgを抜き出したりと…大抵のことがSceneだけで、できてしまいます。
root mode:Pro版を購入してみる
Scene(root mode:Pro版)はroot権限が必須なうえに有料です。
ただし、Pro版はお試し可能なうえ、お試し期間は太っ腹な15日間…と半月程度はroot modeの機能を全て試すことができます。
私は気に入ってしまったのと、日本語でScene(Pro版)の購入まで書かれた情報が、(記事作成時点では)無かったので読者=サン達の参考程度に…(なるのかなぁ)と思い人柱的にライセンスを買ってみました。
とりあえず書かれてる内容をざっと翻訳に投げ込んで、要点だけぬきぬきすると…
- お試し期間は15日間、引き続き使いたかったらPro版支払うヨロシ
- 支払い方法は支付宝(Alipay)・微信(WeChat)・Paypal・(グレーアウトした)Google Play:日本人的にはほぼPaypal一択
- 永久ライセンスは$4.5(USD)、アカウント形式ではなく1つのデバイスに1ライセンス
- 決済完了後、取引内容とかを”1191634433@qq.com”宛に送る、確認できたら認証コードを返信
- ※24時間以内に連絡が無い場合はもっかい連絡
…だそうで。rootが必須な時点で敷居は高いですが、ライセンスを手に入れるのも結構大変みたいです。
Sceneの支払い方法選択からPaypalを選択し、TO PAY FORをタップすると自動的に送金先が出るので、$4.50を前払いします。4.5ドルで約700円!?って感想ですが…即席Paypal垢+間に合せデビットなので、もう少し上手いやり方があったかなぁと思います。
支払い後、取引IDと決済日時、支払金額内容を指定されたアドレスに送ります。「決済内容これね…」ってことでスクショもおまけしておきました。送信から2日目くらいで返信が来ました。(追記:2つ目のライセンスも2日だったので返信が来るまでは2日程度です)
送られてきた認証コードとログイン用のメールアドレスを再入力し、VERIFYをタップ後、無事にライセンスが認証されて実質的に永久といえる3090-1/1までの表記に変わりました。
京東やAliExpressなどの中華通販はそこそこ利用しますが、指定されたアドレスへ送金(前払い)は利用したことが無く、最悪払い損を覚悟しましたが…確認が取れればちゃんとコードを送ってくれるようです。
どのくらいの人が同じ行動をするか分かりませんが…コピペ用に、私が送ったメール内容を置いておきます。
【用件:Scene支付记录】
・DateTime:(決済日時)
・Amount:(金額)
・Translation ID:(取引ID)
あとがき
フレームレートを計測するだけならTakoStatsは今でも有用なツールですが、+αで使い勝手や消費電力周りの動作を求めるなら…もうTakoStatsをメインにするのは、Sceneを使った後だと色々と微妙です。
PerfDogのようにメディアトライアル or クォーター課金、格安とはいえTakoStatsも買い切りで、Androidでフレームレートや消費電力を測定するのに、お金が必要だったり導入のハードルが高いのが当たり前だったので、中国語のみで使いにくかったVer.4.xから見違えるほど進化したScene 6に戦慄してます。
Shizuku+Sceneのお手軽セットもオススメですが、Magisk(root)の導入が可能な逸般人にはPro版も是非試してみて欲しいです。大体何でもできるので誇張抜きに”安卓全能工具”って印象です。
コメント
SCENEはFAS(フレームレートに合わせCPU周波数を変更し、省電力化する機能)も目玉ですよ~
また、Telegramの方でScene7も公開されているのでそちらも確認してみると良いかもです〜
…裏で遊び直してますが、ここまでできるSceneやべぇですね。FASに気づかなかったので助かりました。
できることが多すぎるのでサーチ機能が欲しくなってます。Scene7は6に慣れきったら触ってみます。
Magisk modulesからはcoolapkやbaiduでないと手に入れられないようなモジュールもありますし、そちらもおすすめです~
CPUやGPUの低電圧化モジュールもここから入手出来ますよ~
度々私のnote記事を閲覧して下さっているようで嬉しく思います。今更感強めですがありがとうございます。
一つ、SCENEのライセンスはデバイス毎となっておりますが、これは例えば別ROMを焼くなどした際に移行可能なものなのでしょうか?
将来的にY700の専用ROMを作成、移行しようかと考えており、加えてお金がかかるため慎重を期すために質問させて頂きました。
回答して下さると助かります、よろしくお願い致します。
こちらこそ、度々(Y700やSamsungの件)扱って貰えてありがたい限りです。
さて、Sceneのライセンス移行についてですが…ふぃえサンの想定されるケースだと、多分移行は不要かもしれません。
例えばグロROMのY700(TB320FC)をGSIや別ROMに書き換えても、内部的にはTB320FC(同一個体)としてカウントされるはずです。
ライセンスを取得する際にメールアドレスと取得端末を紐づけた場合、その端末(例TB320FC)には初期化しようがなんだろうが、永久ライセンスが付与されるので再ログインもすんなり…かと。
心配な場合はデバイス一覧から、Currentデバイスを削除した後に移行(再ログイン)で行けたと思います。(移行したことがないのでスミマセン)
あと確定事項ではないのですが…ライセンスに関しては端末間で使い回し(2年間までらしい?)ができるようで、私の方でも複数デバイスでのPro版利用を確認しています。いつまで有効なのか不透明なのがネックですが…。
なるほど…私が思ってた様な心配は無さそうですね。安心してライセンス買ってみようと思います!
準備でき次第また新しい記事を書いてみるつもりです。ありがとうございました!
Y700の開拓含めて、ふぃえサンの読者として楽しみにしています。