В MATLAB, если у меня есть массив, а именно матрица, первый столбец время и другие две координаты, и если я сюжет его:переменная частота кадров анимация в Matlab
ti=myarray(:,1);
xi=myarray(:,2);
yi=myarray(:,3);
for i=1:length(ti)
plot(xi(i),yi(i));hold on;
Mov(i)=getframe;
end
Это записывает мой фильм равномерно , Когда я играю
movie(Mov,1,20)
Предполагается, что фреймы равнохронологически распределены.
Могу ли я сделать сюжет, чтобы фильм воспроизводился в указанное время?
Обратите внимание, что pause
если возможно, возможно, не вариант для меня. Системное время медленное (10ms
точность). И сочетание медленной обработки Matlab и низкой точности системного времени даст нежелательные результаты. Также обратите внимание, что мой fps
может идти выше 100
. Но если это можно реализовать, я приветствую это.
Как только я захотел сделать это (напишите такой фильм в файл), но я не думаю, что есть формат фильма для * переменной частоты кадров *. Если это просто для представления результата человеческому глазу, вы можете найти приблизительный минимальный шаг времени и умножить кадры с более длительным временем показа соответственно. Это приведет к созданию фильма большего размера, так как вы увеличиваете количество кадров. Рад услышать реальное решение! – pm89
@ pm89: не очень уверен в этом: смотрю [эту страницу вики] (http://en.wikipedia.org/wiki/Variable_frame_rate), а затем список контейнеров, которые его поддерживают [здесь] (http: // en.wikipedia.org/wiki/Comparison_of_container_formats), это должно быть возможно, по крайней мере теоретически. Не знаю, как это сделать в MATLAB хотя :) –
@RodyOldenhuis: Спасибо за хорошие новости! Но, к сожалению, «AVI» относится к числу немногих, которые на самом деле не поддерживают его; в вашем [списке ссылок на контейнеры] (http://en.wikipedia.org/wiki/Comparison_of_container_formats) о 'AVI' он говорит:« Хотя AVI не предназначен для переменных фреймов, их можно использовать без создания -стандартный файл с использованием 0-байтовых фрагментов для пропущенных кадров. Однако для этого требуется, чтобы частота кадров была установлена на минимальное общее кратное всех используемых фреймов, и дает небольшие накладные расходы по сравнению с истинным VFR ». – pm89