我试图在Matlab中创建一个电影,在那里我多次运行我的代码,并将每个runthrough的输出添加到视频中。但是,当我实际尝试将帧添加到电影中时,我不断收到一个奇怪的错误。这是我的代码片段:
writerobj = VideoWriter('RHI_P.avi');
writerobj.FrameRate = 60;
open(writerobj);
\\ Runs through code and generates a pcolor figure
figure(14);
\\ Plotting script goes here....
fig = figure;
F = getframe(fig);
writerobj = writeVideo(writerobj,F);
>> Error using VideoWriter/writeVideo: Too many output arguments.
但是,如果我查看“帮助writeVideo'”,它会说:" writeVideo(OBJ,FRAME)将FRAME写入与OBJ关联的视频文件。"
从我的观点来看(虽然我可能错了!),我跟随给出的例子。我已经被困在这几天了。有没有人有任何建议?
此外,我现在一直在使用getframe(gcf)作为解决方法。但是,我无法继续这样做,因为我的代码需要几天才能运行,gcf会在启动后捕获屏幕保护程序。
答案 0 :(得分:3)
writeVideo没有输出参数,这是错误说明的内容。
你只需要说
writeVideo(writerObj, F);
希望这有帮助。