I am using the ExoPlayer Library, which expects a Surface, however i couldn\'t find any Method, which retrieves the underlying Surface of the Textureview. Any Ideas?
First step is to get the SurfaceTexture from the TextureView using the getSurfaceTexture() member function.
SurfaceTexture surfaceTexture = textureView.getSurfaceTexture();
Then create the Surface object from the constructor Surface(SurfaceTexture surfaceTexture) that will accept the SurfaceTexture from your TextureView object.
Surface surface = new Surface(surfaceTexture);
For more information take a look at this issue report. It confirms that by constructing the Surface object in the manner I described it is possible to use the Surface from a TextureView with ExoPlayer.
You can also now in the new versions add an "AnalyticsListener" to the "SimpleExoPlayer" instance, and implement the method "onRenderedFirstFrame" which has the surface as one of its parameters.