how to write a MP4 video using vision toolbox ?
Show older comments
hello , I have been trying to use
vision.VideoFileWriter('output.mp4','FileFormat', '???' ); but the help cant really tell me the strings for format types.
tnx to Dima for the help so far.
i still have a problem ( still trying to output a MP4 to a file) i get a "On Windows, frame must be between 64 by 64 and 1920 by 1088 when writing MPEG4 files." error when my frame to write is 1920X1080
my code :
hVideoSrc_Color = vision.VideoFileReader('swipeCut.mp4'); hReffVideoOut = vision.VideoFileWriter('diff.mp4','FrameRate',hVideoSrc_Color.info.VideoFrameRate,'FileFormat','MPEG4'); counter=0; while ~isDone(hVideoSrc_Color) frame=step(hVideoSrc_Color); step(hReffVideoOut,frame); counter=counter+1; end
release(hVideoSrc_gray); release(hReffVideoOut);
Accepted Answer
More Answers (2)
Dima Lisin
on 23 Jul 2014
Edited: Dima Lisin
on 23 Jul 2014
If you do
>> help vision.VideoFileWriter
and then click on FileFormat you should see this:
FileFormat Format of created file
Specify the format of the video file.
On Windows (R) platforms, this may be one of:
[{'AVI'} | 'WMV' | 'MJ2000' | 'MPEG4'].
On Linux (R) platforms, this may be one of:
[{'AVI'} | 'MJ2000'].
On Mac OS X (R) platforms, this may be one of:
[{'AVI'} | 'MJ2000' | 'MPEG4']
These abbreviations
correspond to the following file formats:
WMV: Windows Media Video
AVI: Audio-Video Interleave
MJ2000: Motion JPEG 2000
MPEG4: MPEG-4/H.264 Video
Dinesh Iyer
on 23 Jul 2014
Liran, I tried the following code to write one frame of HD video on Windows 7 using R2014a:
if true
data = single(rand(1080, 1920, 3));
vfw = vision.VideoFileWriter('Filename', 'hdoutput.mp4', 'FileFormat', 'MPEG4')
step(vfw, data);
end
and it worked fine without any errors. Can you verify the dimensions of the video in swipeCut.mp4?
Categories
Find more on Computer Vision Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!