Версия Exoplayer:
implementation 'com.google.android.exoplayer:exoplayer:2.11.2'
Когда я использую exoplayer на пользовательском слайдере, он воспроизводит только звук. Тем не менее, на старых версиях (android 8 и менее) он играет идеально.
LoadControl loadControl = new DefaultLoadControl();
dataSourceFactory = buildDataSourceFactory();
DefaultBandwidthMeter.Builder bandwidthMeter = new DefaultBandwidthMeter.Builder(getActivity());
TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveTrackSelection.Factory(DEFAULT_MIN_DURATION_FOR_QUALITY_INCREASE_MS,
DEFAULT_MAX_DURATION_FOR_QUALITY_DECREASE_MS,DEFAULT_MIN_DURATION_TO_RETAIN_AFTER_DISCARD_MS,DEFAULT_BANDWIDTH_FRACTION);
TrackSelector trackSelector = new DefaultTrackSelector(getActivity(),videoTrackSelectionFactory);
RenderersFactory renderersFactory = ((ABCApplication) getActivity().getApplication())
.buildRenderersFactory(true);
// 2. Create the player
player = ExoPlayerFactory.newSimpleInstance(getActivity(),renderersFactory, trackSelector, loadControl);
playerView.setPlayer(player);
playerView.setResizeMode(AspectRatioFrameLayout.RESIZE_MODE_FILL);
playerView.setControllerAutoShow(true);
playerView.setControllerHideOnTouch(true);
playerView.setControllerShowTimeoutMs(1500);
// This is the MediaSource representing the media to be played.
MediaSource videoS = buildMediaSource(video.getUri());
// Prepare the player with the source.
player.prepare(videoS);
player.setVolume(0f);
player.addListener(this);
player.setPlayWhenReady(false);
player.addListener(this);