media/demos
bachinger b066a0912e Set video size to 0/0 when video render is disabled
In terms of MCVR with a `VideoRendererEventListener`, the video size is set to
0/0 right after `onVideoDisabled()` is called and is set to the actual size as
soon as the video size is known after 'onVideoEnabled()`.

For ExoPlayer and in terms of the `Player` interface, `Player.getVideoSize()`
returns a video size of 0/0 when `Player.getCurrentTracks()` does not support
`C.TRACK_TYPE_VIDEO`. This is ensured by the masking behavior of
`ExoPlayerImpl` that sets an empty track selection result when the playing
period changes due to a seek or timeline removal.

When transitioning playback from a video media item to the next, or when
seeking within the same video media item, the renderer is not disabled.

#minor-release

PiperOrigin-RevId: 533479600
(cherry picked from commit 2a6f893fba)
2023-05-26 13:25:07 +00:00
..
cast Switch incorrectly configured native multidex to legacy for demos 2022-09-30 17:05:23 +00:00
gl Enable multidex for demo-gl app 2023-04-12 17:03:15 +01:00
main Set video size to 0/0 when video render is disabled 2023-05-26 13:25:07 +00:00
session Add LeakCanary to session demo app debug builds 2023-05-05 16:41:33 +00:00
surface Fix handling of content URIs by demo apps 2022-06-09 17:38:11 +00:00
transformer Demo: Prefer UNICODE character. 2023-04-17 17:18:01 +01:00
README.md Update to androidx.media3 2021-10-27 09:12:46 +01:00

Demos

This directory contains apps that demonstrate how to use Android media modules, like ExoPlayer. Browse the individual demos and their READMEs to learn more.

Running a demo

From Android Studio

  • File -> New -> Import Project -> Specify the root media folder.
  • Choose the demo from the run configuration dropdown list.
  • Click Run.

Using gradle from the command line:

  • Open a Terminal window at the root media folder.
  • Run ./gradlew projects to show all projects. Demo projects start with demo.
  • Run ./gradlew :<demo name>:tasks to view the list of available tasks for the demo project. Choose an install option from the Install tasks section.
  • Run ./gradlew :<demo name>:<install task>.

For example, ./gradlew :demo:installNoDecoderExtensionsDebug installs the ExoPlayer demo app in debug mode with no optional modules.