2016-07-05 13 views
0

MediaCodec 인스턴스가 비디오를 재생하는 데 사용되는 표면을 배치하는 대화 상자가 있습니다.재생하기 전에 표면이 투명 함

이 대화 상자를로드하면 미디어iacadec이 준비되고 비디오가 제대로 재생 될 때까지 표면이 수 초 동안 투명하게 보입니다. 대화 상자이기 때문에 검은 색 배경 대신 투명도가 아래에있는 활동을 보여줍니다.

캔버스를 흑인으로 직접 칠할 수 없기 때문에 mediacodec에 액세스 할 수 없으므로 어떻게 해결할 수 있습니까?

답변

0

대화 상자 부모 레이아웃에서 검정색 배경을 정의 할 수 없습니까?

표면이 투명 경우에도 아래의 대화 상자가

편집 한하지 않습니다이 방법이 투명 표면보기를 할 수 있습니다

는, 어쩌면 그것으로 재생하려고 :

SurfaceView sfvTrack = (SurfaceView)findViewById(R.id.sfvTrack); 
sfvTrack.setZOrderOnTop(true); // necessary 
SurfaceHolder sfhTrackHolder = sfvTrack.getHolder(); 
sfhTrackHolder.setFormat(PixelFormat.TRANSPARENT); 

이 게시물의 내용 : how to make surfaceview transparent

+0

비디오가로드 될 때 배경이 있지만 어떤 이유로 인해 아래 활동이 나타납니다. – MichelReap

+0

전체 레이아웃 XML을 게시 할 수 있습니까? –

+0

조금 읽었습니다. 분명히 Surface가 현재 구성 요소의 맨 아래에 놓여 있습니다. 그래서이 배경에 아무리 배경을 설정해도 대화 상자가되어 버리므로 항상 내 표면이 나타납니다. – MichelReap