google / google/ExoPlayer

Issue when switching two surfaceview in sony bravia TV

Open
#8,715 8 comments 0 reactions 1 assignee Assigned to @microkatz View on GitHub
bug: device specific needs triage
Dominant language
Java
Stars
21.9k
Forks
6k
PR merge metrics
No merged PRs in 30d

Description

In my sample app i have feature to swap one full screen player and small PIP player above full screen player , when clicking on swap button i need to swap content each other. Each player is sitting in different fragment. When switching i am changing the constraint with animation ` TransitionManager.beginDelayedTransition(layout)` . i am changing the `elevation` of fragment container to bring small player above big player on each swap operation. This is working fine when i set surface as `textureview` but i found that when i set surface as `surfaceview` , the small player which is shown above getting transparent on surface part. By setting `setZOrderMediaOverlay` true to small player it is fixed in other devices like Nvdea and MIBox but sony tv failed to pass with that fix.

i have changed the video renderer from `OMX.MTK.VIDEO.DECODER.AVC` to `OMX.google.h264.decoder` then its works but i cannot rely on software codec

any idea whats going on here ?

here is the sample code :

[ExoPlayerTest.zip](https://github.com/google/ExoPlayer/files/6139145/ExoPlayerTest.zip)

android version : 9
exo-player version - 2.12.1

![swap-surface](https://user-images.githubusercontent.com/6000288/111109657-464aa480-85af-11eb-94a7-baa9140d0a2e.png)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.