Closed pawaom closed 3 months ago
setVideoEffects does not change video effect dynamically
I am trying this code
private PlayerView playerView; private ExoPlayer player; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.own_effect); playerView = findViewById(R.id.playerView); player = new ExoPlayer.Builder(this).build(); playerView.setPlayer(player); // Replace with your video URI String videoUri = "https://storage.googleapis.com/exoplayer-test-media-1/mp4/android-screens-10s.mp4"; MediaItem mediaItem = MediaItem.fromUri(videoUri); player.setMediaItem(mediaItem); player.prepare(); player.play(); findViewById(R.id.BrightnessButton).setOnClickListener(new OnClickListener() { @OptIn(markerClass = UnstableApi.class) @Override public void onClick(View v) { ImmutableList.Builder<Effect> effects = new ImmutableList.Builder<>(); effects.add(new Brightness(0.5f)); player.setVideoEffects(effects.build()); } }); findViewById(R.id.Contrastbutton).setOnClickListener(new OnClickListener() { @OptIn(markerClass = UnstableApi.class) @Override public void onClick(View v) { ImmutableList.Builder<Effect> effects = new ImmutableList.Builder<>(); effects.add(new Contrast(0.5f)); player.setVideoEffects(effects.build()); } }); findViewById(R.id.GrayScalebutton).setOnClickListener(new OnClickListener() { @OptIn(markerClass = UnstableApi.class) @Override public void onClick(View v) { ImmutableList.Builder<Effect> effects = new ImmutableList.Builder<>(); effects.add(RgbFilter.createGrayscaleFilter()); player.setVideoEffects(effects.build()); } }); } @Override protected void onDestroy() { super.onDestroy(); player.release(); }
How ever there is no change in the video
here is the example video
https://github.com/androidx/media/assets/28686824/810f49cf-1049-4707-b00e-28a732b4d306
How can we change video effects dynamically.
There must be at least one call to ExoPlayer.setVideoEffects(...) before ExoPlayer.prepare(). See clarification here: https://github.com/androidx/media/commit/253fcb1fd1dc52067ab2193cc58ea976bd215707
ExoPlayer.setVideoEffects(...)
ExoPlayer.prepare()
setVideoEffects does not change video effect dynamically
I am trying this code
How ever there is no change in the video
here is the example video
https://github.com/androidx/media/assets/28686824/810f49cf-1049-4707-b00e-28a732b4d306
How can we change video effects dynamically.