Processing 使用视频库加载视频时处理无法管理的CPU成本

Processing 使用视频库加载视频时处理无法管理的CPU成本,processing,cpu-usage,movie,Processing,Cpu Usage,Movie,我试着做一个简单的思考:当按下一个按钮时,我使用处理视频库加载一个视频,每个按钮都与不同的视频相关联,例如按钮1与视频1、按钮2与视频2等等。代码可以工作,但是每次我调用一个视频时,同样的,我已经加载了,重写gloabal变量,CPU的消耗会增加,在第三次加载后达到40%,在7个视频后CPU的消耗接近100%。代码的摘录: import processing.video.*; Movie movie; void setup() { size(1280, 720, P3D); ba

我试着做一个简单的思考:当按下一个按钮时,我使用处理视频库加载一个视频,每个按钮都与不同的视频相关联,例如按钮1与视频1、按钮2与视频2等等。代码可以工作,但是每次我调用一个视频时,同样的,我已经加载了,重写gloabal变量,CPU的消耗会增加,在第三次加载后达到40%,在7个视频后CPU的消耗接近100%。代码的摘录:

import processing.video.*;
Movie movie;
void setup() {
    size(1280, 720, P3D);
    background(0);
}
void draw() {
    //image(movie, 0, 0, width, height);

    if (but1_1==1) {
       println("video 1");
       movie = new Movie(this, "1.mp4"));
       movie.loop();
       movie.volume(0);
  }
  if (but1_2==1) {
       println("video 2");
       movie = new Movie(this, "2.mp4"));
       movie.loop();
       movie.volume(0);
  }
  if (but1_3==1) {
       println("video 3");
       movie = new Movie(this, "3.mp4"));
       movie.loop();
       movie.volume(0);
  }
}

正如您所看到的,这不应该是CPU消耗增长的任何原因:每次加载新视频(或相同的视频)时,都会重写实例化的对象电影。有什么建议吗?

您正在循环加载电影,这意味着它们不会停止。因此,您按下的按钮越多,同时处理的视频就越多。每次按下按钮时,应先停止旧电影的电影播放过程,然后再开始新电影