|
|
|
@@ -16,6 +16,7 @@ import com.google.android.exoplayer2.MediaItem;
|
|
|
|
import com.google.android.exoplayer2.PlaybackException;
|
|
|
|
import com.google.android.exoplayer2.PlaybackException;
|
|
|
|
import com.google.android.exoplayer2.Player;
|
|
|
|
import com.google.android.exoplayer2.Player;
|
|
|
|
import com.google.android.exoplayer2.DefaultRenderersFactory;
|
|
|
|
import com.google.android.exoplayer2.DefaultRenderersFactory;
|
|
|
|
|
|
|
|
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
|
|
|
|
import com.google.android.exoplayer2.ext.okhttp.OkHttpDataSource;
|
|
|
|
import com.google.android.exoplayer2.ext.okhttp.OkHttpDataSource;
|
|
|
|
import com.google.android.exoplayer2.source.MediaSource;
|
|
|
|
import com.google.android.exoplayer2.source.MediaSource;
|
|
|
|
import com.google.android.exoplayer2.source.hls.HlsMediaSource;
|
|
|
|
import com.google.android.exoplayer2.source.hls.HlsMediaSource;
|
|
|
|
@@ -46,6 +47,7 @@ public class PlayerActivity extends AppCompatActivity {
|
|
|
|
private View playerToolbar;
|
|
|
|
private View playerToolbar;
|
|
|
|
|
|
|
|
|
|
|
|
private ExoPlayer player;
|
|
|
|
private ExoPlayer player;
|
|
|
|
|
|
|
|
private DefaultTrackSelector trackSelector;
|
|
|
|
private String channelName;
|
|
|
|
private String channelName;
|
|
|
|
private String channelUrl;
|
|
|
|
private String channelUrl;
|
|
|
|
private boolean overlayVisible = true;
|
|
|
|
private boolean overlayVisible = true;
|
|
|
|
@@ -115,7 +117,16 @@ public class PlayerActivity extends AppCompatActivity {
|
|
|
|
DefaultRenderersFactory renderersFactory = new DefaultRenderersFactory(this)
|
|
|
|
DefaultRenderersFactory renderersFactory = new DefaultRenderersFactory(this)
|
|
|
|
.setEnableDecoderFallback(true)
|
|
|
|
.setEnableDecoderFallback(true)
|
|
|
|
.setExtensionRendererMode(DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON);
|
|
|
|
.setExtensionRendererMode(DefaultRenderersFactory.EXTENSION_RENDERER_MODE_ON);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Configurar track selector para máxima calidad
|
|
|
|
|
|
|
|
trackSelector = new DefaultTrackSelector(this);
|
|
|
|
|
|
|
|
DefaultTrackSelector.Parameters params = trackSelector.buildUponParameters()
|
|
|
|
|
|
|
|
.setForceHighestSupportedBitrate(true) // Forzar máximo bitrate
|
|
|
|
|
|
|
|
.build();
|
|
|
|
|
|
|
|
trackSelector.setParameters(params);
|
|
|
|
|
|
|
|
|
|
|
|
player = new ExoPlayer.Builder(this, renderersFactory)
|
|
|
|
player = new ExoPlayer.Builder(this, renderersFactory)
|
|
|
|
|
|
|
|
.setTrackSelector(trackSelector)
|
|
|
|
.setSeekForwardIncrementMs(10_000)
|
|
|
|
.setSeekForwardIncrementMs(10_000)
|
|
|
|
.setSeekBackIncrementMs(10_000)
|
|
|
|
.setSeekBackIncrementMs(10_000)
|
|
|
|
.build();
|
|
|
|
.build();
|
|
|
|
|