diff --git a/libraries/decoder_av1/README.md b/libraries/decoder_av1/README.md index d67d581321..75e89ad5f5 100644 --- a/libraries/decoder_av1/README.md +++ b/libraries/decoder_av1/README.md @@ -104,20 +104,19 @@ gets from the libgav1 decoder: * GL rendering using GL shader for color space conversion - * If you are using `ExoPlayer` with `LegacyPlayerView` or `PlayerView`, - enable this option by setting `surface_type` of view to be + * If you are using `ExoPlayer` with `PlayerView`, enable this option by + setting the `surface_type` of the view to be `video_decoder_gl_surface_view`. * Otherwise, enable this option by sending `Libgav1VideoRenderer` a message of type `Renderer.MSG_SET_VIDEO_OUTPUT` with an instance of `VideoDecoderOutputBufferRenderer` as its object. `VideoDecoderGLSurfaceView` is the concrete - `VideoDecoderOutputBufferRenderer` implementation used by `PlayerView` - and `LegacyPlayerView`. + `VideoDecoderOutputBufferRenderer` implementation used by `PlayerView`. * Native rendering using `ANativeWindow` - * If you are using `ExoPlayer` with `LegacyPlayerView` or `PlayerView`, - this option is enabled by default. + * If you are using `ExoPlayer` with `PlayerView`, this option is enabled + by default. * Otherwise, enable this option by sending `Libgav1VideoRenderer` a message of type `Renderer.MSG_SET_VIDEO_OUTPUT` with an instance of `SurfaceView` as its object. diff --git a/libraries/decoder_vp9/README.md b/libraries/decoder_vp9/README.md index c7516eb54b..fc63129a9d 100644 --- a/libraries/decoder_vp9/README.md +++ b/libraries/decoder_vp9/README.md @@ -117,20 +117,19 @@ gets from the libvpx decoder: * GL rendering using GL shader for color space conversion - * If you are using `ExoPlayer` with `LegacyPlayerView` or `PlayerView`, - enable this option by setting `surface_type` of view to be + * If you are using `ExoPlayer` with `PlayerView`, enable this option by + setting the `surface_type` of the view to be `video_decoder_gl_surface_view`. * Otherwise, enable this option by sending `LibvpxVideoRenderer` a message of type `Renderer.MSG_SET_VIDEO_OUTPUT` with an instance of `VideoDecoderOutputBufferRenderer` as its object. `VideoDecoderGLSurfaceView` is the concrete - `VideoDecoderOutputBufferRenderer` implementation used by `PlayerView` - and `LegacyPlayerView`. + `VideoDecoderOutputBufferRenderer` implementation used by `PlayerView`. * Native rendering using `ANativeWindow` - * If you are using `ExoPlayer` with `LegacyPlayerView` or `PlayerView`, - this option is enabled by default. + * If you are using `ExoPlayer` with `PlayerView`, this option is enabled + by default. * Otherwise, enable this option by sending `LibvpxVideoRenderer` a message of type `Renderer.MSG_SET_VIDEO_OUTPUT` with an instance of `SurfaceView` as its object. diff --git a/libraries/ui/src/main/java/androidx/media3/ui/PlayerControlView.java b/libraries/ui/src/main/java/androidx/media3/ui/PlayerControlView.java index 245b7bf5fe..a3e869f4ce 100644 --- a/libraries/ui/src/main/java/androidx/media3/ui/PlayerControlView.java +++ b/libraries/ui/src/main/java/androidx/media3/ui/PlayerControlView.java @@ -90,8 +90,7 @@ import java.util.concurrent.CopyOnWriteArrayList; * A view for controlling {@link Player} instances. * *

A StyledPlayerControlView can be customized by setting attributes (or calling corresponding - * methods), overriding drawables, overriding the view's layout file, or by specifying a custom view - * layout file. + * methods), or overriding drawables. * *

Attributes

* @@ -189,123 +188,6 @@ import java.util.concurrent.CopyOnWriteArrayList; *
  • {@code exo_styled_controls_shuffle_on} - The shuffle icon when shuffling is enabled. *
  • {@code exo_styled_controls_vr} - The VR icon. * - * - *

    Overriding the layout file

    - * - * To customize the layout of StyledPlayerControlView throughout your app, or just for certain - * configurations, you can define {@code exo_player_control_view.xml} layout files in your - * application {@code res/layout*} directories. But, in this case, you need to be careful since the - * default animation implementation expects certain relative positions between children. See also Specifying a custom layout file. - * - *

    The layout files in your {@code res/layout*} will override the one provided by the library, - * and will be inflated for use by StyledPlayerControlView. The view identifies and binds its - * children by looking for the following ids: - * - *

    - * - *

    All child views are optional and so can be omitted if not required, however where defined they - * must be of the expected type. - * - *

    Specifying a custom layout file

    - * - * Defining your own {@code exo_player_control_view.xml} is useful to customize the layout of - * StyledPlayerControlView throughout your application. It's also possible to customize the layout - * for a single instance in a layout file. This is achieved by setting the {@code - * controller_layout_id} attribute on a StyledPlayerControlView. This will cause the specified - * layout to be inflated instead of {@code exo_player_control_view.xml} for only the instance on - * which the attribute is set. - * - *

    You need to be careful when you set the {@code controller_layout_id}, because the default - * animation implementation expects certain relative positions between children. */ @UnstableApi public class PlayerControlView extends FrameLayout { diff --git a/libraries/ui/src/main/java/androidx/media3/ui/PlayerView.java b/libraries/ui/src/main/java/androidx/media3/ui/PlayerView.java index e9c104f8de..7bc88cff91 100644 --- a/libraries/ui/src/main/java/androidx/media3/ui/PlayerView.java +++ b/libraries/ui/src/main/java/androidx/media3/ui/PlayerView.java @@ -77,9 +77,8 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; * A high level view for {@link Player} media playbacks. It displays video, subtitles and album art * during playback, and displays playback controls using a {@link PlayerControlView}. * - *

    A PlayerView can be customized by setting attributes (or calling corresponding methods), - * overriding drawables, overriding the view's layout file, or by specifying a custom view layout - * file. + *

    A PlayerView can be customized by setting attributes (or calling corresponding methods), or + * overriding drawables. * *

    Attributes

    * @@ -178,81 +177,6 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull; * The drawables used by {@link PlayerControlView} (with its default layout file) can be overridden * by drawables with the same names defined in your application. See the {@link PlayerControlView} * documentation for a list of drawables that can be overridden. - * - *

    Overriding the layout file

    - * - * To customize the layout of PlayerView throughout your app, or just for certain configurations, - * you can define {@code exo_player_view.xml} layout files in your application {@code res/layout*} - * directories. These layouts will override the one provided by the library, and will be inflated - * for use by PlayerView. The view identifies and binds its children by looking for the following - * ids: - * - * - * - *

    All child views are optional and so can be omitted if not required, however where defined they - * must be of the expected type. - * - *

    Specifying a custom layout file

    - * - * Defining your own {@code exo_player_view.xml} is useful to customize the layout of PlayerView - * throughout your application. It's also possible to customize the layout for a single instance in - * a layout file. This is achieved by setting the {@code player_layout_id} attribute on a - * PlayerView. This will cause the specified layout to be inflated instead of {@code - * exo_player_view.xml} for only the instance on which the attribute is set. */ @UnstableApi public class PlayerView extends FrameLayout implements AdViewProvider {