When compiling a standalone application, how can I include the class VideoReader?

2 vues (au cours des 30 derniers jours)
VideoReader is a class definition in MATLAB toolbox. The toolbox should be included in MATLAB compiler, but it seems that this class definition is not included. I tried to add the M file into the 'files required', but I was not let to do that. So how can I add the class VideoReader?
  2 commentaires
OCDER
OCDER le 31 Août 2018
Can you show the code you are trying to compile for VideoReader? Does it work without error in Matlab? What is the error message that you are getting?
I have no issues compiling functions containing VideoReader via mcc.
Yifei Wang
Yifei Wang le 4 Sep 2018
Modifié(e) : Yifei Wang le 4 Sep 2018
I wrote this code to test the function of VideoReader. It does work in GUIDE without error. I use this 'readFrame' here instead of 'read' as MATLAB recommends. Both work well in MATLAB, but neither is working for compiling. Do you have any idea about this?
function pushbutton1_Callback(hObject, eventdata, handles)
[VideoName,VideoPath,FilterIndex] = uigetfile('*.avi','Open AVI file');
readerobj = VideoReader(VideoName);
frame = 1;
while hasFrame(readerobj)
vidFrame = readFrame(readerobj);
I(:,:,frame,:) = vidFrame;
frame = frame + 1;
end
imshow(squeeze(uint8(I(:,:,1,:))));
set(handles.text2,'String',VideoPath);
whos('I')
guidata(hObject, handles);

Connectez-vous pour commenter.

Réponse acceptée

OCDER
OCDER le 4 Sep 2018
Change this:
readerobj = VideoReader(VideoName);
to this:
readerobj = VideoReader(fullfile(VideoPath, VideoName));
Always provide the full video file path, otherwise the compiled software cannot find the video file. The Matlab working paths are different form those of a compiled application.
  2 commentaires
Yifei Wang
Yifei Wang le 4 Sep 2018
Thanks for the help! It works! In MATLAB, the path is added so there is no error, and I ignore the problem here. Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by