【问题标题】:Trouble running a .mov file in processing 3在处理 3 中运行 .mov 文件时遇到问题
【发布时间】:2020-03-01 20:08:49
【问题描述】:

我编写了这段代码以在处理中的新窗口中显示电影。当我运行代码时,我得到了显示窗口,但里面什么都没有显示。

我尝试了不同的电影和文件类型、不同的显示尺寸和帧速率,但都没有成功。它识别数据文件夹中的电影文件,但说它不可用。我真的很陌生,所以这可能是一个简单的错误

import processing.video.*; 

Movie movie; 

void setup() {  
  size (200, 200); 

  movie = new Movie(this, "test.mov");  
    print(movie.available());

}

void movieEvent(Movie M) {  
  M.read();
}

void draw() {
  image(movie, 0, 0);
}

我也尝试过切换 draw 和 movieEvent 部分,但没有成功。我真的很难过。

【问题讨论】:

    标签: video processing


    【解决方案1】:

    您的代码看起来正确。 (我个人只会对类使用大写,(例如movieEvent(Movie m),但不会改变代码的运行方式)

    似乎缺少的一件事实际上是play()loop() 调用:

    import processing.video.*; 
    
    Movie movie; 
    
    void setup() {  
      size (200, 200); 
    
      movie = new Movie(this, "test.mov");  
        print(movie.available());
      movie.loop();
    }
    
    void movieEvent(Movie ,) {  
      m.read();
    }
    
    void draw() {
      image(movie, 0, 0);
    }
    

    如果电影仍然无法播放,则可能值得再做一些测试来隔离问题:是否由于某种原因与系统上的视频文件或视频库有关。

    1. 打开 Processing > Examples > Libraries > Video > Movie > Loop 并运行它。如果它可以播放,则意味着视频库在您的系统上运行良好,并且很可能是您使用的视频文件。
    2. 在您的代码中,尝试播放视频库示例附带的公交视频,而不是“test.mov”。如果播放,请使用相同的编解码器 (H.264) 对您的视频进行tre 编码,然后重试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-01
      • 1970-01-01
      • 2016-01-04
      • 2022-01-10
      • 1970-01-01
      • 2018-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多