MATLAB 帮助中心
确定是否有视频帧可供读取
tf = hasFrame(v)
如果存在可从与 v 相关联的文件中读取的视频帧,则 tf = hasFrame(v) 返回逻辑值 1 (true)。否则,将返回逻辑值 0 (false)。
v
tf
1
true
0
false
示例
全部折叠
VideoReader
为示例视频文件 xylophone_video.mp4 创建一个 VideoReader 对象。
xylophone_video.mp4
v = VideoReader("xylophone_video.mp4");
读取视频中的所有帧,一次一帧。
while hasFrame(v) frame = readFrame(v); end
显示 readFrame 返回的最后一帧的有关信息。
readFrame
whos frame
Name Size Bytes Class Attributes frame 240x320x3 230400 uint8
清除 VideoReader 对象。
clear v
为示例视频文件 xylophone_video.mp4 创建一个 VideoReader 对象。然后,确定视频的宽度和高度。
xyloObj = VideoReader("xylophone_video.mp4"); vidWidth = xyloObj.Width; vidHeight = xyloObj.Height;
创建一个视频结构体数组。
mov = struct("cdata",zeros(vidHeight,vidWidth,3,"uint8"),colormap=[]);
一次读取一帧,直到视频结束。
k = 1; while hasFrame(xyloObj) mov(k).cdata = readFrame(xyloObj); k = k+1; end
基于视频的宽度和高度调整图窗大小,然后播放一次视频。
vf = figure(Position=[0 0 xyloObj.Width xyloObj.Height]); imshow(mov(1).cdata,Border="tight") movie(vf,mov,1,xyloObj.FrameRate)
clear xyloObj
输入 VideoReader 对象。使用 VideoReader 函数根据您的视频文件创建一个 VideoReader 对象。
全部展开
在 R2014b 中推出
movie | readFrame | VideoReader
movie
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处