Я воспроизводю некоторые видео с помощью ExoPlayer и хочу, чтобы текущее изображение отображалось на моем SurfaceView, как мне это сделать?
Спасибо,
Я воспроизводю некоторые видео с помощью ExoPlayer и хочу, чтобы текущее изображение отображалось на моем SurfaceView, как мне это сделать?
Спасибо,
Если вы используете SurfaceView, вы не можете получить снимок экрана. Однако вы можете использовать TextureView для воспроизведения видео, а затем вы можете получить снимок экрана из TextureView.
Вот пример кода для использования TextureView, в его обратном вызове onSurfaceTextureAvailable() вы можете получить SurfaceTexture, затем вы можете использовать этот SurfaceTexture для создания Поверхность для ExoPlayer
player = ...
public void onSurfaceTextureAvailable(SurfaceTexture surface, int width, int height) {
...
player.setSurface(new Surface(mSurfaceTexture));
...
}
Не проверено, взято из: Как преобразовать View в Bitmap в Android? < /а>
Параметр ввода изменен на более общий.
protected Bitmap ConvertToBitmap(View layout) {
layout.setDrawingCacheEnabled(true);
layout.buildDrawingCache();
return layout.getDrawingCache();
}