mirror of
https://github.com/samsonjs/media.git
synced 2026-04-14 12:45:47 +00:00
Add option to add playback speed button and audio track selection button via xml. So far only settings button existed that opened a submenu with the playback speed button and audio track selection button.
This commit is contained in:
parent
9faa393a15
commit
34fa7a66c5
4 changed files with 34 additions and 0 deletions
|
|
@ -455,6 +455,9 @@ public class StyledPlayerControlView extends FrameLayout {
|
|||
@Nullable private ImageView fullScreenButton;
|
||||
@Nullable private ImageView minimalFullScreenButton;
|
||||
@Nullable private View settingsButton;
|
||||
@Nullable private View playbackSpeedButton;
|
||||
@Nullable private View audioTrackButton;
|
||||
|
||||
|
||||
public StyledPlayerControlView(Context context) {
|
||||
this(context, /* attrs= */ null);
|
||||
|
|
@ -573,6 +576,16 @@ public class StyledPlayerControlView extends FrameLayout {
|
|||
settingsButton.setOnClickListener(componentListener);
|
||||
}
|
||||
|
||||
playbackSpeedButton = findViewById(R.id.exo_playback_speed);
|
||||
if (playbackSpeedButton != null) {
|
||||
playbackSpeedButton.setOnClickListener(componentListener);
|
||||
}
|
||||
|
||||
audioTrackButton = findViewById(R.id.exo_audio_track);
|
||||
if (audioTrackButton != null) {
|
||||
audioTrackButton.setOnClickListener(componentListener);
|
||||
}
|
||||
|
||||
TimeBar customTimeBar = findViewById(R.id.exo_progress);
|
||||
View timeBarPlaceholder = findViewById(R.id.exo_progress_placeholder);
|
||||
if (customTimeBar != null) {
|
||||
|
|
@ -1871,6 +1884,12 @@ public class StyledPlayerControlView extends FrameLayout {
|
|||
} else if (settingsButton == view) {
|
||||
controlViewLayoutManager.removeHideCallbacks();
|
||||
displaySettingsWindow(settingsAdapter);
|
||||
} else if (playbackSpeedButton == view) {
|
||||
controlViewLayoutManager.removeHideCallbacks();
|
||||
onSettingViewClicked(SETTINGS_PLAYBACK_SPEED_POSITION);
|
||||
} else if (audioTrackButton == view) {
|
||||
controlViewLayoutManager.removeHideCallbacks();
|
||||
onSettingViewClicked(SETTINGS_AUDIO_TRACK_SELECTION_POSITION);
|
||||
} else if (subtitleButton == view) {
|
||||
controlViewLayoutManager.removeHideCallbacks();
|
||||
displaySettingsWindow(textTrackSelectionAdapter);
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ import com.google.android.exoplayer2.ui.spherical.SingleTapListener;
|
|||
import com.google.android.exoplayer2.ui.spherical.SphericalGLSurfaceView;
|
||||
import com.google.android.exoplayer2.util.Assertions;
|
||||
import com.google.android.exoplayer2.util.ErrorMessageProvider;
|
||||
import com.google.android.exoplayer2.util.Log;
|
||||
import com.google.android.exoplayer2.util.RepeatModeUtil;
|
||||
import com.google.android.exoplayer2.util.Util;
|
||||
import com.google.android.exoplayer2.video.VideoDecoderGLSurfaceView;
|
||||
|
|
@ -594,6 +595,7 @@ public class StyledPlayerView extends FrameLayout implements AdsLoader.AdViewPro
|
|||
subtitleView.setCues(null);
|
||||
}
|
||||
this.player = player;
|
||||
Log.d("test track", this.player.getTrackSelector().toString());
|
||||
if (useController()) {
|
||||
controller.setPlayer(player);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,4 +41,7 @@
|
|||
<item name="exo_vr" type="id"/>
|
||||
<item name="exo_subtitle" type="id"/>
|
||||
<item name="exo_fullscreen" type="id"/>
|
||||
<item name="exo_settings" type="id"/>
|
||||
<item name="exo_playback_speed" type="id"/>
|
||||
<item name="exo_audio_track" type="id"/>
|
||||
</resources>
|
||||
|
|
|
|||
|
|
@ -192,6 +192,16 @@
|
|||
<item name="android:contentDescription">@string/exo_controls_settings_description</item>
|
||||
</style>
|
||||
|
||||
<style name="ExoStyledControls.Button.Bottom.PlaybackSpeed">
|
||||
<item name="android:src">@drawable/exo_styled_controls_speed</item>
|
||||
<item name="android:contentDescription">@string/exo_controls_playback_speed</item>
|
||||
</style>
|
||||
|
||||
<style name="ExoStyledControls.Button.Bottom.AudioTrack">
|
||||
<item name="android:src">@drawable/exo_styled_controls_audiotrack</item>
|
||||
<item name="android:contentDescription">@string/exo_track_selection_title_audio</item>
|
||||
</style>
|
||||
|
||||
<style name="ExoStyledControls.TimeBar">
|
||||
<item name="bar_height">@dimen/exo_styled_progress_bar_height</item>
|
||||
<item name="bar_gravity">bottom</item>
|
||||
|
|
|
|||
Loading…
Reference in a new issue