Processing 在处理过程中,为什么movie.jump()函数在电影反转期间不起作用?
我正在处理电影。在电影反向播放期间,move.jump()函数不起作用。我有反向代码: (反向Processing 在处理过程中,为什么movie.jump()函数在电影反转期间不起作用?,processing,movie,Processing,Movie,我正在处理电影。在电影反向播放期间,move.jump()函数不起作用。我有反向代码: (反向是全局布尔变量) 在reverse==true期间,我单击一些按钮,并跳到某个时间,例如5.0,代码如下所示: //after click button if(reverse == true){ movie.jump(5.0); } 这个跳跃函数不起作用。它不会跳转到5.0秒的电影帧。并显示一些错误: ast_segment_set_seek: assertion 'start <= st
是全局布尔变量)
在reverse==true
期间,我单击一些按钮,并跳到某个时间,例如5.0,代码如下所示:
//after click button
if(reverse == true){
movie.jump(5.0);
}
这个跳跃函数不起作用。它不会跳转到5.0秒的电影帧。并显示一些错误:
ast_segment_set_seek: assertion 'start <= stop' failed
ast\u segment\u set\u seek:assertion'startEDIT:更合理的答案:是不是jump计算了与帧速率相关的位置,该位置在向后播放时变为负值,然后在开始之前结束?在这种情况下,我的变通方法应该有效
不确定您使用的是什么类,但您不能做一个变通方法吗?速度应该非常快,用户不会注意到:
if (reverse) {
movie.speed(1f);
// jump();
movie.speed(playSpeed);
} else {
// jump();
}
顺便说一句,可将反向写入(如果需要,则为否):
我知道答案,我自己想出来。
如果电影播放速度小于0,明星将小于停止。
所以,如果播放速度小于0,就*-1,让大于0,比跳跃,比*-1,让速度小于0
if(reverse == true){
m.speed(playSpeed*-1);
m.jump(5.0);
m.speed(playSpeed*-1);
}
我在处理中使用了电影类,并且有跳转功能。它可以在你想要的时间跳到任何地方。这是官方网站上的文档:跳到电影中的特定位置。其中的参数以秒为单位。例如,如果电影长度为12.2秒,则调用jump(6.1)将转到电影的中间。是否您必须首先设置帧速率?您自己找到的答案正是我很久以前提出的答案,只是我的答案更干净!
reverse = !reverse;
playSpeed = -playSpeed;
movie.speed(playSpeed);
if(reverse == true){
m.speed(playSpeed*-1);
m.jump(5.0);
m.speed(playSpeed*-1);
}