Код: Выделить всё
ExoPlayer exoPlayer = new ExoPlayer.Builder(getActivity()).build();
PlayerView playerView = new PlayerView(getActivity());
playerView.setPlayer(exoPlayer);
MediaItem mediaItem = MediaItem.fromUri(videoUri);
exoPlayer.setMediaItem(mediaItem);
exoPlayer.prepare();
SurfaceHolder holder =(SurfaceView) playerView.getVideoSurfaceView().getHolder();
Surface surface = holder.getSurface();
Теперь я не знаю, как получить видео и аудиокадры из Playview или SurfaceTexture
Я узнал, что он был получен с помощью mediecode и MediaMuxer, но оба были получены с камеры。
и 23 августа 2016 г. есть ответ. Вы не можете записать с Поверхностный вид. Когда вы воспроизводите видео в SurfaceView, кадры отправляются в Surface, который представляет собой очередь буферов с интерфейсом производитель-потребитель. Приложение имеет доступ только к стороне производителя — потребителем является системный графический наборщик (SurfaceFlinger).
Я использую media3_version = "1.3.0".
Подробнее здесь: https://stackoverflow.com/questions/781 ... urfaceview