use a variable name with VideoWriter

I am trying to create a program to create videos from images. I would like to use inputdlg to create a variable file name. I can use a selected path. However, it doesn't appear that VideoWriter allows you to use a variable name. Is there a way around this?

 採用された回答

Walter Roberson
Walter Roberson 2018 年 4 月 9 日

0 投票

VideoWriter has no problems with variable file names.
[filename, pathname] = uiputfile('*.avi', 'Select an output file');
if ~ischar(filename); return; end %user cancel
fullname = fullfile(pathname, filename);
obj = VideoWriter(fullname);
...

その他の回答 (1 件)

Bryan Clark
Bryan Clark 2018 年 4 月 10 日
編集済み: Walter Roberson 2018 年 4 月 10 日

0 投票

fileName = inputdlg('Input File Name');
fileName = strcat(fileName,'.avi');
if ~ischar(fileName);
a = 'not char'
disp(a)
end
my problem is that the inputdlg doesn't seem to create a chr variable even though is seems to be. Is there a way to make inputdlg return a chr array?

1 件のコメント

Walter Roberson
Walter Roberson 2018 年 4 月 10 日
response = inputdlg('Input File Name');
fileName = response{1};
if isempty(fileName); return; end %user cancel
[dirname, basename, ext] = fileparts(fileName);
if isempty(ext); ext = '.avi'; end
fileName = fullfile(dirname, [basename ext]);

サインインしてコメントする。

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by