?? writetests.m
字號:
function writeTests(plugin)
%writeTests(plugin)
% Performs a battery of simple read-write tests on a given videoReader/
% videoWriter plugin. Uses the default codec.
%
%Examples:
% writeTests
% writeTests ffmpegPopen2 % linux & similar
% writeTests ffmpegDirect % ...if system's gcc is compatible w/ Matlab's
% writeTests DirectShow % Windows
ienter
if nargin < 1, plugin = defaultVideoIOPlugin; end
w = 100;
h = 30;
N = 100;
tmpFile = [tempname '.avi'];
try
% write the video
vw = videoWriter(tmpFile, plugin, 'width',w, 'height',h);
frames = {};
for i=1:N
frame = [getDigit(floor(i/100)) getDigit(mod(floor(i/10), 10)) getDigit(mod(i,10))];
frame = imresize(frame, [h,w]);
frames{i} = repmat(uint8(255*frame), [1 1 3]); %#ok<AGROW>
addframe(vw, frame);
end
vw = close(vw);
% read it back in
vr = videoReader(tmpFile, plugin);
info = getinfo(vr);
filt = fspecial('gaussian', 5,2);
for i=1:N-double(info.nHiddenFinalFrames) - 2 %don't worry if the last few frames didn't work
vrassert next(vr);
diffImg = abs(double(imfilter(frames{i},filt)) - ...
double(imfilter(getframe(vr),filt)));
vrassert all(all(rgb2gray(diffImg) < 10));
%subplot(121); imshow(frames{i}); subplot(122); imshow(getframe(vr)); pause(0.01);
end
close(vr);
delete(tmpFile);
catch
e = lasterror;
try close(vr); catch end
try close(vw); catch end
delete(tmpFile);
rethrow(e);
end
iexit
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -