首页 » 技术分享 » mmread、mmplay 用法

mmread、mmplay 用法

 


http://www.mathworks.com/matlabcentral/fileexchange/8028?controller=file_infos&download=true

mmwrite下载地址:


http://www.mathworks.com/matlabcentral/fileexchange/15881?controller=file_infos&download=true

aviwrite下载地址:


http://www.mathworks.com/matlabcentral/fileexchange/280?controller=file_infos&download=true

mmplay下载地址:


http://www.mathworks.com/matlabcentral/fileexchange/15880?controller=file_infos&download=true

matlab 7.0(R14)  下载地址:自己在google上找一个,我用迅雷下的,花了3个小时,但我找地址,找不到了,不好意思。

种子名称:Mathworks.Matlab.v7.1.R14.SP3

首先,我是在matlab 7.0(R14)上安装,使用mmread的时候报:

??? Undefined command/function 'FFGrab'.

的错误,死活无法运行,随后下了matlab 7.1(R14 SP3)后,就可以使用了。(我是用VMware server 1.0.6安装了一个xp后,装matlab的,这里很好体现了虚拟机的用处,程序文件装错了,删了整个操作系统,把以前备份的初始操作系统拷贝过来,继续安装新的程序软件)

方法如下:下载了mmread.zip,mmwrite.zip,mmplay.zip,解压缩,拷贝到一个工作目录,我是拷贝到c:\matlab下面,设置了path后,可以使用mmread,mmwrite功能

设置path的方法,点击Start --> Desktop Tools --> Path 把工作目录Add Foloder... 进去,然后Save ,最后Close,就可以使用

mmread,mmwrite使用方法:

由于我是用的是clock.avi文件,这里有些改进,不然会报错,我也把报错信息贴出来。

改进后的代码:

[vid,audio]=mmread('clock.avi');    %读视频

mmplay(vid);                        %播放视频

fnum=size(vid.frames,2);

for i=1:fnum

    size(vid.frames(i).cdata);

    vid.frames(i).cdata(321,:,:)=[];

    vid.frames(i).cdata(:,321,:)=[];

    length=size(vid.frames(i).cdata);

    vid.width=length(1);

    vid.height=length(2);

end

mmwrite('1.avi',audio,vid);        %写入视频

%mmwrite('1.avi',vid); 这个也行,只不过没有声音了。

%这样只有320*320大小了。

如果不改进,会出一下结果:

[vid,audio]=mmread('c:\windows\clock.avi');

mmwrite('1.avi',audio,vid);

警告:

Warning : the width of the movie isn't enen ,this may cause problems.

Warning : the height of the movie isn't enen ,this may cause problems.

clock.avi 取出的图像是321*321*3的矩阵。

来源于网络,回归于网络。

我的邮箱:happy.every.day@126.com QQ:48399956

快乐!

2009年3月3日

转载自原文链接, 如需删除请联系管理员。

原文链接:mmread、mmplay 用法,转载请注明来源!

0