メディア再生によるバッテリー消費はどの程度重要ですか?
不要なバッテリー消費を避けることは、パフォーマンスの高い Android アプリを開発するうえで重要な側面です。メディア再生はバッテリー消耗の大きな原因となる可能性がありますが、特定のアプリにとっての重要性は、その使用パターンに大きく左右されます。アプリが毎日少量のメディアを再生するためにのみ使用される場合、対応するバッテリー消費量はデバイスの総消費量のわずかな割合にすぎません。このような場合は、使用するプレーヤーを選択する際に、バッテリーの最適化よりも機能セットと信頼性を優先するのが妥当です。一方、アプリが毎日大量のメディアを再生するために頻繁に使用される場合は、複数の実行可能なオプションの中から選択する際に、バッテリー消費量の最適化をより重視する必要があります。
ExoPlayer の電力効率はどの程度ですか?
Android デバイスとメディア コンテンツのエコシステムは多様であるため、ExoPlayer のバッテリー消費量について広く適用できるステートメントを作成することは困難です。パフォーマンスは、ハードウェア、Android のバージョン、再生するメディアによって異なります。そのため、以下の情報はあくまでガイダンスとしてお取り扱いください。
動画の再生
動画再生の場合、動画ストリームの表示とデコードが、再生中に消費される電力の大部分を占めます。
出力に SurfaceView と TextureView のどちらを選択するかは、消費電力に大きな影響を与える可能性があります。SurfaceView の方が電力効率が高く、TextureView では一部のデバイスで動画再生中の総消費電力が最大 30% 増加します。したがって、可能な場合は SurfaceView を優先する必要があります。SurfaceView と TextureView の選択について詳しくは、Surface ページをご覧ください。
一部のテレビでは、動画トンネリングを使用すると、通常の再生パスではスムーズな再生に十分なパフォーマンスが得られない高解像度動画の再生に、より効率的なパスを提供できます。
オーディオの再生
短い音声再生や画面がオンのときの再生では、音声が電力に与える影響は大きくありません。
画面をオフにして長時間再生する場合は、ExoPlayer の音声オフロード モードを使用することで電力を節約できます。有効にする方法について詳しくは、track selection guide をご覧ください。