如何将非简单的Exoplayer(2.x)传递给SurfaceView?

时间:2016-10-29 10:43:29

标签: android exoplayer

我无法使用SimpleExoPlayer,因为我需要具有特定参数的视频渲染器。我发现我可以将视频和音频渲染器传递给ExoPlayer

的实例
final ExoPlayer player = ExoPlayerFactory.newInstance( new Renderer[]{videoRenderer, audioRenderer}, trackSelector, loadControl);

ExoPlayer没有方法setVideoSurfaceView()

如何将SurfaceView传递给非简单的ExoPlayer?

2 个答案:

答案 0 :(得分:0)

您可以通过在ExoPlayer实例中传递消息来对各种ExoPlayer组件进行配置更改。您可以使用sendMessagesblockingSendMessages方法向组件发送消息。在您的情况下,您可以使用Surface实例设置videoRenderer的{​​{1}}。例如:

SurfaceView

答案 1 :(得分:0)

对于此版本的ExoPlayer,似乎需要使用ExoPlayer.ExoPlayerMessage创建C.MSG_SET_SURFACE的实例,并通过方法sendMessage()将其传递给播放器。