我无法使用SimpleExoPlayer
,因为我需要具有特定参数的视频渲染器。我发现我可以将视频和音频渲染器传递给ExoPlayer
:
final ExoPlayer player = ExoPlayerFactory.newInstance( new Renderer[]{videoRenderer, audioRenderer}, trackSelector, loadControl);
但ExoPlayer
没有方法setVideoSurfaceView()
。
如何将SurfaceView
传递给非简单的ExoPlayer?
答案 0 :(得分:0)
您可以通过在ExoPlayer实例中传递消息来对各种ExoPlayer组件进行配置更改。您可以使用sendMessages
或blockingSendMessages
方法向组件发送消息。在您的情况下,您可以使用Surface
实例设置videoRenderer
的{{1}}。例如:
SurfaceView
答案 1 :(得分:0)
对于此版本的ExoPlayer,似乎需要使用ExoPlayer.ExoPlayerMessage
创建C.MSG_SET_SURFACE
的实例,并通过方法sendMessage()
将其传递给播放器。