Media display and playback have become essential components of the Android app
experience. Whether your app integrates images and videos or delivers immersive
audio experiences, media enriches user interactions and elevates app engagement.

Android continues to evolve APIs to minimize the complexity of integrating media
while making the user experience more integrated and consistent, and this page
connects you to resources to both help you get started and level up your app.

## Know key Android media APIs and concepts

Android has APIs that work at different levels to allow your app to make the
most of the available hardware and software features.

### Display images

Loading the highest-quality images efficiently is key to building a smooth user
experience in your app. Here are some resources that will help:

- [Loading images from local resources](https://developer.android.com/develop/ui/compose/graphics/images/loading)
- [Loading images from a remote server](https://developer.android.com/develop/ui/compose/graphics/images/loading#internet-loading)
- [Loading Large Bitmaps Efficiently](https://developer.android.com/topic/performance/graphics/load-bitmap)
- [Displaying images in UltraHDR](https://developer.android.com/media/grow/ultra-hdr/display)

### Playback and stream audio and video

[Jetpack Media3](https://developer.android.com/media/media3) offers advanced features such as seamless media playback,
media browsing, and efficient resource management. Learn more:

- [Live-streaming](https://developer.android.com/media/media3/exoplayer/live-streaming)
- [Downloading media](https://developer.android.com/media/media3/exoplayer/downloading-media)
- [Playback controls and player UI](https://developer.android.com/media/media3/ui/overview)
- [Background playback](https://developer.android.com/media/media3/session/background-playback)

## Level up your app

You'll want your app to support features that meet and surpass user
expectations. One way to do that is to support the advanced media features
provided by premium devices. Here are some specific ways to help your app stand
out:

- Support [UltraHDR](https://developer.android.com/media/grow/ultra-hdr-display) images and [HDR](https://developer.android.com/media/grow/hdr-playback) video
- Enable [picture-in-picture](https://developer.android.com/develop/ui/views/picture-in-picture) for video and audio playback
- Implement [Cast Connect](https://developers.google.com/cast/docs/android_tv_receiver) so users can cast to your native Android TV app
- Use [Performance Class](https://developer.android.com/topic/performance/performance-class) to adapt your user experience around device capabilities

See the [full guide](https://developer.android.com/social-and-messaging/guides/media-display/basic-better-best) for features to consider to take your media display and
playback experience to the next level and impress your users.