배터리 소모

미디어 재생 시 배터리 소모가 얼마나 중요한가요?

불필요한 배터리 소모를 방지하는 것은 성능 기준에 맞는 Android 앱을 개발하는 데 있어 중요한 부분입니다. 미디어 재생은 배터리 소모의 주요 원인이 될 수 있지만 특정 앱에 대한 중요도는 사용 패턴에 따라 크게 달라집니다. 앱이 매일 소량의 미디어를 재생하는 데만 사용되는 경우 해당하는 배터리 소모는 기기의 총 소비량에서 작은 비율일 뿐입니다. 이 경우 사용할 플레이어를 선택할 때는 배터리 최적화보다 기능 세트와 안정성을 우선시하는 것이 좋습니다. 반면 앱이 매일 대량의 미디어를 재생하는 데 자주 사용되는 경우, 실행 가능한 여러 옵션 중에서 선택할 때 배터리 소모를 위한 최적화에 더 많은 가중치를 부여해야 합니다.

ExoPlayer의 전력 효율은 어느 정도인가요?

Android 기기 및 미디어 콘텐츠 생태계의 다양성으로 인해 ExoPlayer의 배터리 소비에 관해 광범위하게 적용하기가 어렵습니다. 성능은 하드웨어, Android 버전, 재생 중인 미디어에 따라 다릅니다. 따라서 다음 정보는 지침으로만 취급해야 합니다.

동영상 재생

동영상 재생의 경우 동영상 스트림의 표시 및 디코딩이 재생 중 소모되는 전력의 대부분을 차지합니다.

출력으로 SurfaceViewTextureView 중에서 선택하면 전력 소비에 상당한 영향을 미칠 수 있습니다. SurfaceView가 전력 효율이 더 높습니다. TextureView를 사용하면 일부 기기에서 동영상 재생 중 총 전력 소모량이 최대 30% 까지 증가합니다. 따라서 가능한 경우 SurfaceView를 사용하는 것이 좋습니다. 여기에서 SurfaceViewTextureView 중에서 선택하는 방법을 자세히 알아보세요.

오디오 재생

짧은 오디오 재생 또는 화면이 켜져 있을 때 재생될 경우 오디오는 전력에 큰 영향을 미치지 않습니다.

화면이 꺼진 상태에서 장시간 재생하려는 경우 ExoPlayer의 오디오 오프로드 모드를 사용하는 것이 좋습니다. 오디오 오프로드를 사용하면 오디오 처리를 CPU에서 전용 신호 프로세서로 오프로드할 수 있습니다. 사용 설정하는 방법에 관한 자세한 내용은 track selection guide를 참고하세요.