Is there a better way of playing video files in sequence?

I’m very new to coding. I’m trying to make a Pong game with videos playing, one at a time, on the background of the game. While each video file ran smoothly on its own, the code I wrote for the sequence of videos made the game itself increasingly laggy everytime a video ended and the next one started. I know its because of the redraw() and I’m aware that I’m probably using it wrong, but without it, when a video ends its last frame stays frozen on the screen and only the audio of the next video starts. What is the best way to solve this?

Here’s the significant part of the code I wrote:

import processing.video.*;
Movie Clipe1, Clipe2, Clipe3;

boolean playClipe1 = true;
boolean playClipe2 = false;
boolean playClipe3 = false;

void setup () {
  size (1600, 900);
  background(0);

  
  Clipe1 = new Movie(this,"plsworkALL_IN.ts");
  
  Clipe2 = new Movie (this, "cut.ts");

  
  Clipe3 = new Movie (this,"JEALOUSY2.ts");
 
}

void movieEvent(Movie m) {
  if (m == Clipe1) {
    Clipe1.read();
  } else if (m == Clipe2) {
    redraw();
    Clipe2.read();
  } else if (m == Clipe3) {
    Clipe3.read();
    redraw();
}
}

void draw () {
  rectMode (CENTER); 
  ellipseMode(CENTER);
  background(0);
  
  //sequencia de clipes no fundo
  if(playClipe1==true) {
    
    Clipe1.play();
    Clipe1.noLoop();
    
    image(Clipe1, 0, 0);
   if(Clipe1.time() >= 25.00000) {
     Clipe1.stop();
     playClipe1=false;
     playClipe2=true;
     playClipe3=false;
     
   }
  }
  
  if(playClipe2==true){
    
    Clipe2.play();
    noLoop();
    
    image(Clipe2,0,0);
    if(Clipe2.time() >= 25.00000) {
      Clipe2.stop();
      playClipe1=false;
      playClipe2=false;
      playClipe3=true;
    }
  }

  
  if(playClipe3==true) {
    Clipe3.play();
    Clipe3.noLoop();
    image(Clipe3,0,0);
  }  
}

edit: only removing the automatic text from the beginning