andrewlewis 7c8f6d5d69 Add support for experimenting with HDR
- Add a checkbox in the demo app to enable experimental HDR editing.
- Add an `experimental_` method to `TransformationRequest` to enable HDR editing.
- Add fragment/vertex shaders for the experimental HDR pipeline. The main difference compared to the existing shaders is that we sample from the decoder in YUV rather than RGB (because the YUV -> RGB conversion in the graphics driver is not precisely defined, so we need to do this to get consistent results), which requires the use of ES 3, and then do a crude YUV -> RGB conversion in the shader (ignoring the input color primaries for now).
- When HDR editing is enabled, we force using `FrameEditor` (no passthrough) to avoid the need to select another edit operation, and use the new shaders. The `EGLContext` and `EGLSurface` also need to be set up differently for this path.

PiperOrigin-RevId: 425570639
2022-02-02 10:04:32 +00:00
..
2022-01-28 09:37:06 +00:00
2021-10-26 14:04:30 +01:00

ExoPlayer demos

This directory contains applications that demonstrate how to use ExoPlayer. Browse the individual demos and their READMEs to learn more.

Running a demo

From Android Studio

  • File -> New -> Import Project -> Specify the root ExoPlayer 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 ExoPlayer 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>.

Example:

./gradlew :demo:installNoDecoderExtensionsDebug installs the main ExoPlayer demo app in debug mode with no decoder extensions.